CSDMS 2017 annual meeting Allen Lee

Presentation provided during CSDMS annual meeting 2017

Good enough practices for reproducible scientific computation
Allen Lee
Arizona State University
How difficult would it be to create a transparent, fully reproducible codebase that can be downloaded from a trusted digital repository, compiled, and then run with minimal effort? How about a codebase that can be understood, reparameterized with coherent alternative assumptions, and analyzed by other researchers or future graduate students? As of this writing, it appears to be quite hard just to locate the code necessary to build / run an executable [1] [2] and this is a problem that only gets worse over time as software and system dependencies evolve. Luckily there are many Good Enough [3] practices that can be added incrementally to your development workflow to help others understand, properly review, and build on the software artifacts that increasing numbers of research findings depend upon.
This clinic will cover practical tips, workflows, and tools to help you create reproducible [4] and citable [5] computational pipelines while avoiding common pitfalls and potential issues. We will go over good practices for version control, documentation, data and metadata management, and demonstrate how CoMSES Net is using emerging technologies like Docker containerization to facilitate reproducible computational pipelines. Other topics (depending on participant interest and experience) include automated tests, continuous integration, and modular components / microservices.

[1] - http://reproducibility.cs.arizona.edu/
[2] - https://cbie.asu.edu/practice-archiving-model-code-agent-based-models
[3] - https://swcarpentry.github.io/good-enough-practices-in-scientific-computing
[4] - https://www.practicereproducibleresearch.org
[5] - https://www.force11.org/group/software-citation-working-group

* Please acknowledge the original contributors when you are using this material. If there are any copyright issues, please let us know and we will respond as soon as possible.