| Week | Date | Type | Description | Lecturer |
|---|---|---|---|---|
| 1 | 14.10. | 🧑🏫 | Course intro, intro to SSE, VC basics | Gerasimos |
| 🧑🏫 | Git basics, my Git workflow, Git quiz, how to challenge | Gerasimos | ||
| 2 | 21.10. | 🧑🏫 | My neat little Git trick, merge vs rebase, working in teams | Frédéric |
| 💻️ | Git | Frédéric | ||
| Deadline: Register for the Challenge | ||||
| 3 | 28.10. | 🧑🏫 | Virtualization and containers | Gerasimos |
| 💻️ | Containers | Gerasimos | ||
| 4 | 04.11. | ✏️ | Interim assessment 1 | |
| 🎉 | Student presentations: Challenge - step 1 | |||
| 🎉 | Student presentations: Challenge - step 1 | |||
| 5 | 11.11. | 🧑🏫 | Intro packaging, Python packaging | Felix |
| 💻️ | Python packaging | Felix | ||
| 6 | 18.11. | 🧑🏫 | Linux fundamentals, Make, CMake | Gerasimos |
| 💻️ | CMake and Docker | Gerasimos | ||
| 7 | 25.11. | 🧑🏫 | Spack | Frédéric |
| 💻️ | Spack | Frédéric | ||
| 8 | 02.12. | 🧑🏫 | CPack and more CMake | Frédéric |
| 💻️ | CPack | Frédéric | ||
| 9 | 09.12. | 🧑🏫 | Technical writing | Gerasimos |
| 💻️ | Code review | Gerasimos | ||
| 10 | 16.12. | ✏️ | Interim assessment 2 | |
| 🎉 | Student presentations: Challenge - step 2 | |||
| 🎉 | Student presentations: Challenge - step 2 | |||
| Deadline: Suggest a Challenge contribution | ||||
| - | 23.12. | 🎄 | Christmas break | |
| - | 30.12. | 🎄 | Christmas break | |
| - | 06.01. | 🎄 | Christmas break | |
| 11 | 13.01. | 🧑🏫 | Intro testing, testing in Python | Felix |
| 💻️ | Testing in Python | Felix | ||
| 12 | 20.01. | 🧑🏫 | Markup, Pandoc, website gener. | Felix |
| 🧑🏫 | FLOSS, versioning, repo layouts, DOI, Zenodo, DaRUS | Gerasimos | ||
| 13 | 27.01. | 🧑🏫 | Automation, GitHub Actions, GitLab CI | Felix |
| 💻️ | GitHub Actions | Felix | ||
| 14 | 03.02. | 🧑🏫 | Boost.Test and CTest | Frédéric |
| 💻️ | Boost.Test and CTest | Frédéric | ||
| 15 | 10.02. | ✏️ | Interim assessment 3 | |
| 🎉 | Student presentations: Challenge - step 3 | |||
| 🎉 | Student presentations: Challenge - step 3 |
This timetable is for the winter term 2026-27.
Resources:
Introduction and Chapter 1: Version Control
- Morning:
- 40 min.: Course planning + questions
- 10 min.: Overview demo
- 20 min.: Introduction to RSE
- 20 min.: Introduction to version control
- Afternoon:
- 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
Chapter 1: Version Control (cont.)
- Morning:
- 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
- Afternoon:
- 90 min.: Exercise on Git Workflows
Deadline: (23:59) Register for the Challenge.
Chapter 2: Virtualization and Containers
- Morning:
- Afternoon:
Interim assessment 1 and student presentations 1
- Morning:
- Assessment on the topics of weeks 1, 2, 3.
- The Challenge, step one, presentations
- Afternoon:
- The Challenge, step one, presentations
Chapter 3: Building and Packaging - Python
- Morning:
- 15 min.: Introduction to Packaging
- 75 min.: Packaging a Python Code: demo, slides
- Afternoon:
- 90 min.: Exercise on Packaging a Python Code
Chapter 3: Building and Packaging - Linux
- Morning:
- Afternoon:
Chapter 3: Building and Packaging - Spack
- Morning:
- Afternoon:
- 90 min.: Exercise: Packaging with Spack
Chapter 3: Building and Packaging - CMake and CPack
- Morning:
- Afternoon:
- 90 min.: Exercise: Packaging with CPack
Chapter 4: Documentation - Technical Writing, Code Review
- Morning:
- Afternoon:
- 90 min.: Exercise: Reviewing with AI tools
Interim assessment 2 and student presentations 2
- Morning:
- Assessment on the topics of weeks 5, 6, 7, 8, 9.
- The Challenge, step two, presentations
- Afternoon:
- The Challenge, step two, presentations
Deadline: Suggest a Challenge contribution.
Chapter 5: Testing and Continuous Integration - Python
- Morning:
- Afternoon:
- 90 min.: Exercise: Testing Python Code
Chapter 4: Documentation - Tools,
Chapter 6: Miscellaneous - Publishing and Free Software
- Morning:
- Afternoon:
- 20 min.: Floss Licenses
- 20 min.: Versioning
- 20 min.: Repository Layouts
- 20 min.: DOI, Zenodo, DaRUS
Chapter 5: Testing and Continuous Integration - GitHub Actions and GitLab CI
- Morning:
- 15 min.: Automation
- 45 min.: GitHub Actions: slides, demo
- 30 min.: GitLab CI: slides, demo
- Afternoon:
Chapter 5: Testing and Continuous Integration - Boost.Test and CTest
- Morning:
- 20 min.: Introduction to Boost.Test: slides, demo
- 15 min.: Lecture evaluation
- 60 min.: Boost.Test and CTest in Action: SideMade Demo
- 10 min.: Boost.Test in the Real World: preCICE Demo
- Afternoon:
Interim assessment 3 and student presentations 3
- Morning:
- Assessment on the topics of weeks 11, 12, 13, 14.
- The Challenge, step three, presentations
- Afternoon:
- The Challenge, step three, presentations