Institute of Computing for Climate Science Summer School 2025
List of Topics
Exact schedule to be announced soon!
- Version control (Git and GitHub) – both introductory and intermediate sessions
- RSE Skills – how to apply research software engineering principles to write higher-quality code, reduce bugs, and facilitate re-use
- Debugging – leveraging debugging tools for effectively understanding program behaviour and diagnosing problems
- AI for Software Engineering – leveraging generative AI tools effectively for software engineering
- Differentiable programming – foundations of working with automatic differentiation and deploying in code
- Introduction to High Performance Computing – hardware, performance limits, programming models, profiling, debugging
- Practical Machine Learning with PyTorch – understanding the structure of a PyTorch model, ML pipeline for classification/regression
- Observation System Simulation Experiences – using ML for optimal sampling strategy
- Bayesian ML and Uncertainty Quantification – from uncertainty quantification to physics-informed networks and Bayesian model calibration
- Introduction to Julia – a brief introduction to the Julia language for computational science
- Explainable data science with Fluid – building transparent, interactive data science visualisations using the Fluid language
- FTorch – coupling ML and numerical models in Fortran with FTorch
- Testing and correctness – deploying unit tests, regression tests, property-based tests
- Random Forests and Decision Trees – how and when to use these ensemble methods
Hackathon
As in previous years, we will be running a hackathon at the summer school on the Friday. The idea of a hackathon is to spend focussed time working on a mini-project for a day in a small group (e.g., 3-6 people). Projects are proposed by participants and can be based on something you are currently working on, or an idea that could be reasonably tackled in a day (at least to make some progress). This is a fantastic opportunity to learn from each other ‘by doing’, forge new connections, and even make progress on a project. As part of the registration, you will be asked for your GitHub login. We will add everyone to a Summer School hackathon repository in which people can propose topics ahead of time by posting an issue, enabling discussion and forming groups by responding to the issue. We will have a short session to discuss the summer school arrangements, but our hope is that there will be a sufficient number of projects submitted ahead of time to enable groups to be formed by the Friday. We will send out a reminder to submit project ideas ahead of the summer school.