Summer School 2020: 13ᵗʰ Advanced Scientific Programming in Python

Target group

PhD students of the Doctoral School of (Bioscience) Engineering and Life Sciences and Medecine, Master students and Post-docs from all areas of science. 


Competence in Python or in another language such as Java, C/C++, MATLAB, or R is absolutely required.

Basic knowledge of Python and of a version control system such as git, subversion, mercurial, or bazaar is assumed. Participants without any prior experience with Python and/or git should work through the proposed introductory material before the course.

We are striving hard to get a pool of students which is international and gender-balanced.


  • Head of the organization for ASPP and responsible for the scientific program:

Tiziano Zito, Department of Psychology, Humboldt-Universität zu Berlin

  • Local team:

Nina Turk, Photonics Research Group, INTEC, Ghent University – imec

Freya Acar, Office for Data and Information, City of Ghent

Joan Juvert 

  • Institutional organizers:

Wim Bogaerts, Photonics Research Group, INTEC, Ghent University - imec

Sven Degroeve, VIB-UGent Center for Medical Biotechnology, Ghent

Jeroen Famaey, Department of Computer Science, University of Antwerp - imec

Bernard Manderick, Artificial Intelligence Lab, Vrije Universiteit Brussel

Topic of the course

Scientists spend more and more time writing, maintaining, and debugging software. While techniques for doing this efficiently have evolved, only few scientists have been trained to use them. As a result, instead of doing their research, they spend far too much time writing deficient code and reinventing the wheel. In this course we will present a selection of advanced programming techniques and best practices which are standard in the industry, but especially tailored to the needs of a programming scientist. Lectures are devised to be interactive and to give the students enough time to acquire direct hands-on experience with the materials. Students will work in pairs throughout the school and will team up to practice the newly learned skills in a real programming project — an entertaining computer game.

We use the Python programming language for the entire course. Python works as a simple programming language for beginners, but more importantly, it also works great in scientific simulations and data analysis. We show how clean language design, ease of extensibility, and the great wealth of open source libraries for scientific computing and data visualization are driving Python to become a standard tool for the programming scientist.


• Version control with git and how to contribute to open source projects with GitHub

• Best practices in data visualization

• Testing and debugging scientific code

• Advanced NumPy

• Organizing, documenting, and distributing scientific code

• Advanced scientific Python: context managers and generators

• Writing parallel applications in Python

• Profiling and speeding up scientific code with Cython and numba

• Programming in teams


31 August–5 September, 2020. Ghent, Belgium - CANCELLED DUE TO COVID-19




You can apply online:

Application deadline: 23:59 UTC, Sunday 24 May, 2020

There will be no deadline extension, so be sure to apply on time. Be sure to read the FAQ before applying:

Registration fee

Free of charge for members of the Doctoral Schools of (Bioscience) Engineering and Life Sciences and Medicine.



Evaluation criteria (doctoral training programme)

100% attendance and active participation