In this lesson we will discuss different methods and tools for better reproducibility in research software and data. We will demonstrate how version control, workflows, containers, and package managers can be used to record reproducible environments and workflows.
You need to install Git, Python, and Snakemake.
Docker and make are optional.
10 min | Motivation |
Should research software and data be reproducible?
Are they? |
5 min | Organizing your projects | How should we organize files in a research project? |
25 min | Sharing code and data | How can I share research code and data? |
15 min | Recording dependencies | How can we communicate different versions of software dependencies? |
15 min | Recording environments | How to capture the software environment of a computational experiment? |
40 min | Recording computational steps for OSeMOSYS |
How can we create a reproducible workflow?
When to use scientific workflow management systems. |
20 min | (Optional) Creating and sharing a container image |