Intro Thoughts

Status Quo

library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.2.0     ✔ readr     2.1.6
## ✔ forcats   1.0.1     ✔ stringr   1.6.0
## ✔ ggplot2   4.0.1     ✔ tibble    3.3.0
## ✔ lubridate 1.9.4     ✔ tidyr     1.3.1
## ✔ purrr     1.2.0     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(ggraph)

as_tibble(tools::CRAN_package_db()) |>
  select(Package, Author) |>
  filter(Package %in% c("dplyr", "ggplot2", "ellmer",
                        "tidyr", "tidymodels", "recipes",
                        "readr", "tibble", "stringr", "forcats",
                        "purrr", "lubridate", "embed")) |>
  mutate(Author = map(Author, ~ str_split_1(.x,"\n"))) |>
  unnest() |> 
  mutate(Author = str_remove(Author, " \\[.+" ) |> str_trim()) |>
  filter_out(Author |> str_detect("orcid.org")) |>
  filter_out(Author == "Posit Software, PBC") |>
  ggraph(layout = "kk") +
  geom_edge_link() +
  geom_node_point() +
  geom_node_label(aes(label = name)) 
## Warning: `cols` is now required when using `unnest()`.
## ℹ Please use `cols = c(Author)`.

Experiment

Closing remarks, Other Relevant Work, Caveats