This repository contains documentation, resources, and code for the Reproducibility in Computing session
designed and delivered by Jack Franklin and Marion Weinzierl of ICCS.
All materials, including slides and videos, are available such that individuals can cover the
course in their own time.
A website for this workshop can be found at https://cambridge-iccs.github.io/ReproducibilityInComputingCourse/.
- Learning Objectives
- Teaching material
- Preparation and prerequisites
- Installation and setup
- License information
- Contribution Guidelines and Support
The key learning objective from this workshop is raise the awareness of the importance of software reproducibility, and give the participants and understanding and basic tools to improve it.
The slides for this workshop can be viewed on the website of this course.
TODO
The exercises for the course can be found in the exercises directory.
These take the form of <partially completed jupyter notebooks/downloadable code/online tasks or games etc.>.
TODO
Worked solutions for all of the exercises can be found in the worked solutions directory.
These are for recapping after the course in case you missed anything, and contain example solutions.
The Mini ReproHack repository can be used before, alongside or after this course, to learn hands-on what makes software reproducible. It contains instructions on how do a reproducibility hackathon by trying to reproduce the results of real climate science papers.
To get the most out of the session we assume a basic understanding of the research process, programming in Python and research software.
The ICCS RSE Skills workshop gives you an overview of many of the topics mentioned in this course.
It is helpful but not mandatory to do a mini ReproHack before the session to get a better understanding of the problem of software and research reproducibility.
If you want to follow along with the exercises, basic Python coding skills and a Python development environment are required.
TODO
The code materials in this project are licensed under the MIT License.
If you spot an issue with the materials please let us know by opening an issue here on GitHub clearly describing the problem.
If you are able to fix an issue that you spot, or an existing open issue please get in touch by commenting on the issue thread.
Contributions from the community are welcome. To contribute back to the repository please first fork it, make the necessary changes to fix the problem, and then open a pull request back to this repository clearly describing the changes you have made. We will then preform a review and merge once ready.
If you would like support using these materials, adapting them to your needs, or delivering them please get in touch either via GitHub or via ICCS.
