- 40 min.: Course planning + questions
- 10 min.: Overview demo
- 20 min.: Introduction to RSE
- 20 min.: Introduction to version control
- 15 min.: Recap of Git basics
- Tell students how to recap Git in detail if needed: py-rse book
- 50 min.: How I work with Git
- 20 min.: Your Challenge: Contribute to Real Simulation Software
- Ask students to prepare My favorite neat little Git trick
- 30 min.: My favorite neat little Git trick
- 25 min.: Merge vs. rebase
- 25 min.: Working in teams / Git workflows
- 10 min.: GitHub/GitLab standards
- 90 min.: Exercise on Git Workflows
- 5 min.: Virtualization and Containers
- 10 min.: Introduction to Virtualization
- 40 min.: VirtualBox: slides, demo
- 25 min.: Vagrant: slides, demo
- 10 min.: Introduction to Containers
- 60 min.: Docker: slides, demo
- 20 min.: Singularity: slides, demo
- The Challenge, step one, presentations
- 90 min.: Exercise on Packaging a Python Code
- 25 min.: Some Linux fundamentals: slides, demo
- 20 min.: Introduction to Make: slides, demo
- 45 min.: Introduction to CMake: slides, demo
- 90 min.: Exercise: Packaging with Spack
- 5 min.: Organizational remarks: slides
- 65 min.: Installation and Packaging with CMake and CPack: slides, demo
- 20 min.: More CMake Demo (preCICE and ccmake): demo
- 90 min.: Exercise: Packaging with CPack
- The Challenge, step two, presentations
- 25 min.: Markup Languages: slides
- 20 min.: Pandoc: slides, demo
- 35 min.: Documentation Website Generators: slides, demo
- 20 min.: Floss Licenses
- 20 min.: Versioning
- 20 min.: Repository Layouts
- 20 min.: DOI, Zenodo, DaRUS
- 90 min.: Exercise: Testing Python Code
- 15 min.: Automation
- 45 min.: GitHub Actions: slides, demo
- 30 min.: GitLab CI: slides, demo
- 20 min.: Introduction to Boost.Test: slides, demo
- 60 min.: Boost.Test and CTest in Action: SideMade Demo
- 10 min.: Boost.Test in the Real World: preCICE Demo
- 15 min.: Lecture evaluation
- 75 min.: Boost.Test and CTest in Action: SideMade Exercise
- The Challenge, step three, presentations
- The Challenge, step three, presentations