Events by the SSC
Below is a list of events and courses organized by the SSC. For a list of software development-related courses offered at Heidelberg University, please take a look here.
Compact Course "The Unix Shell", Dr. Dominic Kempf, SSC, July 27th 2021
The Unix shell is a powerful tool that allows people to do complex things with just a few keystrokes. More importantly, it helps them combine existing programs in new ways and automate repetitive tasks so they aren’t typing the same things over and over again. Use of the shell is fundamental to using a wide range of other powerful tools and computing resources. The course will include hands-on live coding sessions where participants exercise the learned commands on their own computers.
Compact Course "Version Control with Git", Dr. Dominic Kempf, SSC, July 28th 2021
Version control is the lab notebook of the digital world: it is used to keep track of what was done and to collaborate with other people. Its use is the state of the art in software development projects of all scales. However, it is not limited to software: books, papers, small data sets, and anything that changes over time or needs to be shared can and should be stored in a version control system. The course will include hands-on live coding sessions where participants exercise the learned commands on their own computers.
Compact Course "Containers in Science: Using Docker and Singularity", Dr. Dominic Kempf, SSC, July 30th 2021
Container technologies (e.g. Docker containers) have emerged as a fundamental tool of the cloud computing era. In scientific applications, containerization is used to encapsulate the complex execution environment of research software with a number of goals in mind: Setting up user landscapes for Continuous Integration testing, ensuring reproducibility of execution environments and packaging code to run on an HPC system. The workshop involves live coding sessions where participants exercise the learned commands on their own computers.
Mentoring Program "Reproducible Science", SSC, starting May 2021
Reproduction of experiments is a fundamental pillar of science. In order to transfer this concept into the digital era, new best practices for scientific work need to be established. The SSC mentoring program will gather a group of PhD students at biannual meetings to learn about such practices and discuss experiences of the participants. Covered topics include version control systems, automated testing, research data management and publication of computational results, but may be varied to the needs of the group.
Past teaching events
Block course "The Art of Developing Scientific Software: What do you need to make your software fly?", Dr. Inga Ulusoy, SSC, March 2021
This course will be repeated on a regular basis.
In this block course, you will learn how to develop scientific software in a way that enables reproducible research and sustainable software. Sustainable scientific software leaves room for further, subsequent implementations and method development, and saves time and effort in the long run; in addition to adhering to good scientific practice through making results reproducible. This course is aimed at researchers, doctoral and master students who develop scientific software to carry out their research.
"I definitely recommend this course. others at my institute should get informed about good coding practices, testing etc."
"This was a very helpful introductory course, especially considering the fact that this was the first iteration of the course. It is obvious that a lot of time and effort was spent creating it. The instructor is motivated and capable. The toy data and analysis pipeline is appropriately complex, three members per group is a good size. Thank you again!"
"Consindering it being an online format, it was relatively interactive, which was definitely a quality sign! :)"
Virtual Summer school "Solving PDEs with Dune/PDELab", Dr. Dominic Kempf, Prof. Dr. Peter Bastian et al., March 8th - 12th 2021
This one week course will provide an introduction into the DUNE framework for the numerical solution of PDEs with the finite element method. At the end the attendees will have a solid knowledge of the simulation workflow from mesh generation and implementation of finite element and finite volume methods to visualization of the results. Topics covered are the solution of stationary and time-dependent problems, as well as local adaptivity, the use of parallel computers and the solution of non-linear PDE’s and systems of PDE’s.