Course introduction
Figure 1
The Turing Way project illustration of
aspects of reproducible research by Scriberia, used under a CC-BY 4.0
licence, DOI:
10.5281/zenodo.3332807
Figure 2

Definition of “research software” from the
FAIR4RS working group, image by the Netherlands eScience Center licensed
under CC-BY 4.0
Figure 3
data.json
) - a snippet of which is shown
below - with data on extra-vehicular activities (EVAs or spacewalks)
undertaken by astronauts and cosmonauts from 1965 to 2013 (data provided
by NASA via its Open
Data Portal) 
Figure 4
my code v2.py
) containing some
analysis. 
FAIR research software
Tools and good practices for research software
Version control
Figure 1
Software development lifecycle with Git
Figure 2

Example Diff 1
Figure 3

Example Diff 2
Figure 4

Git - distributed version control system, image
from W3Docs (freely available)
Figure 5

Creating a new GitHub repository
Figure 6

Naming the GitHub repository
Figure 7

Complete GitHub repository
creation
Figure 8

Copy the commands to sync the local and
remote repositories
Reproducible software environments
Figure 1
We can visualise the use of virtual environments for different Python
projects on the same machine as follows:
Code readability
Code structure
Code correctness & testing
Software documentation
Open software management & collaboration
Figure 1
Wrap-up
Figure 1

An image of a Chinese proverb “The best time to
plant a tree was 20 years ago. The second best time is now” by CCNULL,
used under a CC-BY 2.0 licence
Figure 2

Helping your team, image from RSECon2024, used
under CC BY 4.0
Figure 3

Helping your peers, image from RSECon2024, used
under CC BY 4.0
Figure 4

Helping the world, image from RSECon2024, used
under CC BY 4.0