Material Themes
view full diagram
Software Architecture and Design
Programming design concepts and patterns, such as procedural, object-orientated, functional, generic. Covers data structures, memory allocation, ownership.
Technology and Tooling
Basic tools like bash, version control, containers, IDEs, and snakemake.
Software Project Management
Courses on software project management such as on collaborative programming and continuous integration.
High Performance Computing
An introduction to high-performance computing (HPC), covering connecting to HPC resources, job schedulers (also known as batch systems), and techniques for determining the scalability of code on HPC resources.
Introductory Courses
Introductory courses on programming languages.
Scientific Computing
Courses on scientific computing on subjects including linear algebra, ode solving, bayesian statistics etc.
Libraries
Courses on using individual libraries.