This course teaches tools and practices for producing and sharing quality, sustainable and FAIR (Findable, Accessible, Interoperable and Reusable) research software to support open and reproducible research.
Difficulty rating: ★★★☆ Intermediate
Who is it for?
- Postgraduate research students and early career researchers who want to develop software to support their research using good and sustainable software practices
- Researchers with foundational software training who wish to refresh and improve their software practices for open and reproducible research
Summary of the topics covered
- Key principles of open and reproducible research and their implications for research software development
- Analysing software for maintainability, reproducibility and reuse, identifying risks and opportunities for improvement
- Applying professional software development workflows for version control, reproducible environment management and collaboration
- Designing modular and extensible software to support reuse and scalable development
- Designing and implement testing, documentation and quality assurance practices to support correct and reusable research software
- Evaluating software projects for openness, sustainability, reusability and collaborative practices
- Selecting appropriate tools and practices to support collaborative and open research software development
Prerequisites
Participants require a foundational knowledge of the following:
- Python
- Version control with Git
- Working in a command line interface (shell)
Duration
14 hours
Next course
11,12,23,24 June 2026 09:30 - 13:00 Book here
(attend all sessions)
Can't attend?
We don’t have online materials for this session, but the course will run again — so you’ll be very welcome to join next time.