Starts 19 Oct 2021
Ends 17 Dec 2021
Central European Time
Online -
An ICTP Virtual Meeting

Writing software has become central to research in many fields of science. This school aims to give early-career scientists an introduction to a variety of topics that help them to write efficient, clean, maintainable and long-lived code that is useful beyond solving an immediate problem. In a mixture of talks and many hands-on sessions, the focus lies on showing best practices and building fundamental skills in creating, extending and collaborating on modular and reusable software.

  • Effective collaborative development with multiple co-authors
  • Python / shell scripts as glue code
  • Modular, reusable software design
  • Software optimization
  • Version control and release cycles
  • Automated testing frameworks
  • Structured documentation
  • Management of open source scientific packages
  • Continuous integration & deployment
  • Conversational development

A. CORBETTA, Eindhoven University of Technology, Netherlands
A. FARNUDI, École normale supérieure de Lyon, France & Sharif University of Technology, Tehran, Iran
I. GIROTTO, ICTP, Trieste, Italy
D. GRELLSCHEID, University of Bergen, Norway & ICTP, Trieste, Italy
S. HOLMGEIRSDOTTIR, Sensar Marine, Bergen, Norway
S. RICHTER, University of Stockholm, Sweden
A. SARTORI, ICTP, Trieste, Italy

Prerequisite: Participants are expected to have some experience in a programming language, this course is not suitable for beginners in programming.

Registration: There is no registration fee.
**DEADLINE: 27/09/2021**


Alessandro Corbetta (Eindhoven University of Technology, Netherlands), David Grellscheid (University of Bergen, Norway & ICTP, Italy), Local Organiser: Ivan Girotto