Reminder: Application deadline is August 31st, 2010!
===================================================
Advanced Scientific Programming in Python
=========================================
an Autumn School by the G-Node, the Center for Mind/Brain Sciences
and the Fondazione Bruno Kessler
Scientists spend more and more time writing, maintaining, and
debugging software. While techniques for doing this efficiently have
evolved, only few scientists actually 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 with
theoretical lectures and practical exercises tailored to the needs
of a programming scientist. New skills will be tested in a real
programming project: we will team up to develop an entertaining
scientific computer game.
We'll 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. Clean language design and easy extensibility are
driving Python to become a standard tool for scientific computing.
Some of the most useful open source libraries for scientific
computing and visualization will be presented.
This school is targeted at Post-docs and PhD students from all areas
of science. Competence in Python or in another language such as
Java, C/C++, MATLAB, or Mathematica is absolutely required. A basic
knowledge of the Python language is assumed. Participants without
prior experience with Python should work through the proposed
introductory materials.
Date and Location
=================
October 4th—8th, 2010. Trento, Italy.
Preliminary Program
===================
Day 0 (Mon Oct 4) — Software Carpentry & Advanced Python
• Documenting code and using version control
• Object-oriented programming, design patterns, and agile programming
• Exception handling, lambdas, decorators, context managers, metaclasses
Day 1 (Tue Oct 5) — Software Carpentry
• Test-driven development, unit testing & Quality Assurance
• Debugging, profiling and benchmarking techniques
• Data serialization: from pickle to databases
Day 2 (Wed Oct 6) — Scientific Tools for Python
• Advanced NumPy
• The Quest for Speed (intro): Interfacing to C
• Programming project
Day 3 (Thu Oct 7) — The Quest for Speed
• Writing parallel applications in Python
• When parallelization does not help: the starving CPUs problem
• Programming project
Day 4 (Fri Oct 8) — Practical Software Development
• Efficient programming in teams
• Programming project
• The Pac-Man Tournament
Every evening we will have the tutors' consultation hour: Tutors
will answer your questions and give suggestions for your own projects
Applications
============
You can apply on-line at http://www.g-node.org/python-autumnschool
Applications must be submitted before August 31st, 2010.
Notifications of acceptance will be sent by September 4th, 2010.
No fee is charged but participants should take care of travel, living,
and accommodation expenses.
Candidates will be selected on the basis of their profile.
Places are limited: acceptance rate in past editions was around 30%.
Prerequisites
=============
You are supposed to know the basics of Python to participate in
the lectures! Look on the website for a list of introductory material.
Faculty
=======
• Francesc Alted, author of PyTables, Castelló de la Plana, Spain
• Pietro Berkes, Volen Center for Complex Systems, Brandeis
University, USA
• Valentin Haenel, Berlin Institute of Technology and Bernstein
Center for Computational Neuroscience Berlin, Germany
• Zbigniew Jędrzejewski-Szmek, Faculty of Physics, University of
Warsaw, Poland
• Eilif Muller, The Blue Brain Project, Ecole Polytechnique Fédérale
de Lausanne, Switzerland
• Emanuele Olivetti, NeuroInformatics Laboratory, Fondazione Bruno
Kessler and University of Trento, Italy
• Rike-Benjamin Schuppner, Bernstein Center for Computational
Neuroscience Berlin, Germany
• Bartosz Teleńczuk, Institute for Theoretical Biology,
Humboldt-Universität zu Berlin, Germany
• Bastian Venthur, Berlin Institute of Technology and Bernstein Focus:
Neurotechnology, Germany
• Stéfan van der Walt, Applied Mathematics, University of Stellenbosch,
South Africa
• Tiziano Zito, Berlin Institute of Technology and Bernstein Center for
Computational Neuroscience Berlin, Germany
Organized by Paolo Avesani for the Center for Mind/Brain Sciences
and the Fondazione Bruno Kessler, and by Zbigniew Jędrzejewski-Szmek
and Tiziano Zito for the German Neuroinformatics Node of the INCF.
Website: http://www.g-node.org/python-autumnschool
Contact: python-info@g-node.org