Apply now: Advanced Scientific Programming in Python in Melbourne, January 2018

tweet linkedin email
Applications are now open for this international school being held in the Southern Hemisphere for the first time.
The Advanced Scientific Programming in Python (ASPP) summer school has had 10 extremely successful iterations in Europe (you can find past materials, schedules, and student evaluations at Now, thanks to funding from the International Neuroinformatics Coordinating Facility (INCF), Melbourne is hosting the first ASPP workshop focussed on the Asia Pacific region. (Note: the original ASPP will still take place in Europe next Northern summer; this is a fork of that school.)

Key details

Workshop runs from 14 – 21 January, 2017 at the Melbourne Brain Centre, University of Melbourne
Topics include: git, contributing to open source software with github, testing, debugging, profiling, advanced NumPy, Cython, data visualisation
Delivery includes hands-on learning using pair programming
It is free to attendees (with students responsible for travel, accommodation, and meals)
Only 30 student placements are available and the competition for places will be high.
Closing date and time for applications is 31 October, 2017, 23:59 UTC.


Over two years ago, Tiziano Zito asked our Data Visualisation expert, Juan Nunez-Iglesias, to join the faculty at the 2015 ASPP school in Munich (being run for the 8th time). Juan found it to be such a fantastic teaching experience, and, more importantly, a fantastic experience for the students. Students are selected for the school within a certain profile, neither novice nor advanced. This guarantees that all participants will maximise their learning. Students learn tools that can immediately improve their science. Juan wanted to replicate the school in Australia and he successfully applied to INCF for funding for that.

Course outline

Scientists spend increasingly more time writing, maintaining, and debugging software. While techniques for doing this efficiently have evolved, only a 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 that are standard in 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 practise 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 well 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 visualisation are driving Python to becoming a standard tool for scientists.

Who is eligible?

This school is targeted at Master or PhD students and post-docs from all areas of science. Competence in Python or in another language such as Java, C/C++, MATLAB, or Mathematica 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 strive to get a pool of students that is international and gender-balanced, and have succeeded, with gender parity in the last four schools.

More questions?


Please pass on the details of this workshop to colleagues who you think might benefit from attending.