September 18, 2023 to October 6, 2023
Europe/Berlin timezone

Sustainable Research Software Development

Broader course for all, basic knowledge of a command line (e.g. bash) and a programming language (preferably Python, C++ or Julia) is useful.

Limited to 10 participants

Tools and Techniques for Sustainable Research Software Development

René Caspart (KIT) and Michele Mesiti (KIT)

Abstract

Software is becoming an increasingly important part in modern scientific endeavours and everyday work, most likely also in yours.
Readability, reusability, robustness and extensibility can be important qualities of the code we write, making it easier to share and more valuable to the relevant scientific community. In particular, they make collaboration easier so that junior contributors or other interested parties can contribute or get started using the code more easily.
In this course we will present (in a critical approach) the tools and techniques that can improve the development of research software and make it more sustainable.
Topics that we will cover (depending on the prior knowledge of the participants) include:

- Git and version control systems
- Software management and collaboration tools (e.g. GitLab or GitHub)
- Automatic Testing
- Test Driven Development
- Continuous Integrations and Testing
and more.

The goal of the course is to give an overview of the trade-offs encountered when developing research software.