- Curriculum
- All Tutorials
Basic
Basic skills for HEP software development.Software Development and Deployment
Ensure that your code is easy to use and maintain.Version controlling with git
Track code changes, undo mistakes, collaborate. This module is a must.
CI/CD (gitlab)
Continuous integration and deployment with gitlab: automatically run unit tests and more for every commit that you push on gitlab.
CI/CD (github)
Continuous integration and deployment with GitHub actions: automatically run unit tests and more for every commit that you push on GitHub.
Singularity
Introduction to containerization with Singularity/Apptainer. Singularity is a containerization tool (similar to Docker) that is particularly useful for HPC environments.
Software Engineering for Scientific Computing
This course covers various best practices like testing, pytest, object oriented programming, packing, CI, and more.
C++ corner
Learn C++ for blazingly fast code!HEP specific tools
Workflows and reproducibility
Reproducible analyses with REANA
Run containerised data analysis pipelines on remote compute clouds.

Particle physics methods
Learn about ROOT, RooFit, machine learning with TMVA, and physics simulations.
Data Analysis
Machine learning and other analysis toolsArray-oriented programming for particle physicists
Learn how to easily and efficiently process your data with array-oriented programming!
Array-oriented puzzles
Test your skills on data manipulation by solving puzzles using array-oriented programming!
Deep learning for particle physicists
Learn about neural networks in the context of particle physics.
Machine learning on GPU
Speed up your machine learning using massive parallelization! It is highly recommended to first go through the "Deep learning for particle physicists" tutorial.
Analysis preservation
Learn how to ensure that your analysis survives the test of time.Version controlling with git
Track code changes, undo mistakes, collaborate. This module is a must.
CI/CD (gitlab)
Continuous integration and deployment with gitlab: automatically run unit tests and more for every commit that you push on gitlab.
CI/CD (github)
Continuous integration and deployment with GitHub actions: automatically run unit tests and more for every commit that you push on GitHub.
Singularity
Introduction to containerization with Singularity/Apptainer. Singularity is a containerization tool (similar to Docker) that is particularly useful for HPC environments.

Reproducible analyses with REANA
Run containerised data analysis pipelines on remote compute clouds.
Complete courses
These modules cover a variety of topicsSoftware Engineering for Scientific Computing
This course covers various best practices like testing, pytest, object oriented programming, packing, CI, and more.

Particle physics methods
Learn about ROOT, RooFit, machine learning with TMVA, and physics simulations.
LHCb Analysis Essentials
From python, shell, and git to reproducible analyses with Snakemake. Written for LHCb, but applicable to everyone.