#rstats: Is there any write-up about meta-packages, e.g. tidyverse? When/why create them? How does that play out with CRAN? Is there any other convenient approach to group packages for installation and/or coordinated development?
@ramiro_magno For what it’s worth, several people (me emphatically included) think they’re a bad idea and should be avoided. By loading lots of names indiscriminately they go directly against established best practices in software engineering.

@klmr @ramiro_magno but it's not indiscriminate, the names are specifically designed to be used together interactively, from a modularized ecosystem of packages

don't want them all available? Don't use it ... use package development idioms, here's a bunch of great examples of packages that work together...

@mdsumner @klmr @ramiro_magno

As a maintainer I do find it a bit annoying though when a user sends a reprex of an issue and the first line is `library("tidyverse")`.

@trevorld @mdsumner @klmr @ramiro_magno reproducible. but minimal? 😬
@josi @trevorld @mdsumner @klmr I think what I'm trying to get at is: there are several levels of code coordination: 1. R-package-level for coordinating functions on the same namespace, 2. Repo-level (CRAN /BioC) for coordinating packages. It seems that the concept, at least conceptually, of a meta-package is a sensible middle level but so far has only been explored rather informally. For the two other levels there are all sorts of contract-rules to enforce coordination.
@josi @trevorld @mdsumner @klmr But for meta-packages, the rules fall into the realm of general guidelines and good design patterns, e.g. good division of labor, coherent patterns, etc.. but there is no formal enforcing, like for packages and repositories. Not sure there is the need, tbh. I guess one could argue that CRAN is one big meta-package...
@josi @trevorld @mdsumner @klmr For example, I guess r-lib packages are not under a meta-package like tidyverse but are effectively developed in a coordinated fashion, so that they do not overlap in scope, use the tidy design patterns, and so on... But conceptually, and effectively, they are being developed in a coordinated manner. Perhaps the lack of any formal bindings was what prompted Hadley to start writing https://design.tidyverse.org/.
Tidy design principles

@ramiro_magno @josi @trevorld @klmr I just think that's a reflection of modularization occuring over time, they discovered these deep foundations were needed and while they weren't implemented reflected the deep principles in R itself, the tidy verse meta package is about tools a user wants to get a functional script, rlib is the natural foundation that was needed for best implementation
@ramiro_magno @josi @trevorld @klmr ggplot was stretching for these principles, objects,nse, extensibility, and went through ggplot2, reshape, plyr then dplyr to discover them - everything else is a recognized piece that could be isolated, rlib for devs, tidyverse for users (a very broad and grey expanse not a wall)