This short course is teaching tools and practices for producing and sharing quality, sustainable and FAIR (Findable, Accessible, Interoperable and Reusable) research software to support open and reproducible research.
The lesson uses the the example software project that does not follow good research software practices which gradually gets improved over the course of this lesson following the good software practices we teach. The better code the lesson finishes with can be found at the "final" branch of the software project repository.
The course can be delivered over 2 full or 4 half days.
The accompanying slides to aid with course delivery are also available.
Launch this lesson on myBinder! 👉
Please see the CONTRIBUTING.md for contributing guidelines and details on how to get involved with this project.
Also see the current list of issues for ideas for contributing to this training curriculum.
Look for the tag .
This indicates that the issue does not require in-depth knowledge of the project and lesson infrastructure, and is a good opportunity for a new contributor to get involved.
To learn more about how this lesson site is built and how you can edit the pages, see the Introduction to The Carpentries Workbench.
The list of authors of the course is available in CITATION.cff.
Current maintainers of this lesson are:
Gibson, S., Goel, A., Jaffa, S., Kopec-Harding, K., Nenadic, A., & Sauze, C. (2025). Software practices for open and reproducible research (beta-May-2025). Zenodo. https://doi.org/10.5281/zenodo.15490720
Information on how to cite this work is also available in CITATION.cff.
Please get in touch with Aleksandra Nenadic with any questions about this lesson.
This work has been supported by the UK's Software Sustainability Institute via the EPSRC, BBSRC, ESRC, NERC, AHRC, STFC and MRC grant EP/S021779/1 and UK Reproducibility Network (UKRN).