It depends (Jim's talk)
Software dependencies can often be a double edged sword. On one hand they let you take advantage of others' work, giving your software marvelous new features and reducing bugs. On the other hand they can change, causing your software to break unexpectedly and increasing your maintenance burden. These problems occur everywhere, in R scripts, R packages, Shiny applications and deployed ML pipelines.
So when should you take a dependency and when should you avoid them?
Well, it depends!
This talk will show ways to weigh the pros and cons of a given dependency and provide tools for calculating the weights for your project. It will also provide strategies for dealing with dependency changes, and if needed, removing them. We will demonstrate these techniques with some real life cases from packages in the tidyverse and r-lib.
vctrs & type-stability (Hadley's talk)
vctrs is a new package that provides tools (cognitive and computational) to ensure that functions behave consistently with respect to inputs of varying length and type. The end goal of vctrs is to be invisible to the end user of the tidyverse (simply enabling their predictions about function outputs to be more correct), but will help developers write functions that "just work".