Skip to content
This repository has been archived by the owner on Apr 7, 2022. It is now read-only.

Expand dependencies chapter #89

Closed
matt-dray opened this issue Jan 8, 2019 · 6 comments
Closed

Expand dependencies chapter #89

matt-dray opened this issue Jan 8, 2019 · 6 comments

Comments

@matt-dray
Copy link
Contributor

matt-dray commented Jan 8, 2019

The chapter is just a placeholder currently.

Things to do:

  • Highlight possible tools: sessionInfo, packrat, checkpoint (all R), virtualenv and others (Python) and Docker (including R flavours)
  • Proposed 'tiers' of good dependency management, e.g. for R: nothing < sessionInfo only < packrat only < Docker + packrat, etc
  • Focus on Docker as an ideal solution (as per add docker example #78 'add docker example')
  • Hurdles when using some of these approaches (e.g. IT barriers, knowledge barriers, conceptual barriers)
  • Examples of dependency management other RAP publications (e.g. eesectors uses packrat)
  • Consider commentary in #86 ('Packrat is more trouble than it's worth: discuss')
@nacnudus
Copy link
Collaborator

nacnudus commented Jan 8, 2019

This looks good for reproducibility. Dependency is a broader topic though, so maybe this should be "Dependencies and reproducibility" with a separate section "Dependencies and reusability" that prioritises ease of reuse, ease of maintenance and upgrading, patching, versioning, deprecation, etc.

@AoifeONeill
Copy link

Could I also just flag that I personally found understanding docker quite difficult? Phil had to explain it to me several times before I got it, so might be good to get a stato who doesn't know about docker to give it a sense check/ emphasise that Docker can seem quite daunting to learn about but that there are resources and people to help to get them started :D

@nacnudus
Copy link
Collaborator

nacnudus commented Jan 9, 2019

@AoifeONeill I'm sure @matt-dray would gladly share his first draft with you. Google Docs is probably better for this kind of review than github.

@matt-dray
Copy link
Contributor Author

I'm working on a draft in the dependencies branch of this repo. A commit of the first draft is coming. Duncan is right: a Google Doc version for sharing in the #rap-collaboration channel is probably a good idea.

It's pretty high level at this stage and focuses more on dependency management in general. It should serve as a good starting point for discussion though.

I won't provide an in-depth Docker tutorial at this point, given that RAP is tool-agnostic and everyone has different requirements in terms of users and infrastructure. Also I've collected some useful links to learning materials that we can signpost to, which will prevent duplication of effort. I'll post these in Slack as well.

@nacnudus
Copy link
Collaborator

Another few packages:

Hadley's advice about surprise breaking changes: commit the rendered .Rmd

@matt-dray
Copy link
Contributor Author

I'm going to close this, given #97

The chapter has definitely expanded, but is not 'complete' (in the sense that all of these chapters will continue to be iterated upon).

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants