[ANN] Advanced Scientific Programming in Python Winter School in Warsaw, Poland
Advanced Scientific Programming in Python
a Winter School by the G-Node and University of Warsaw
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 winter school is targeted at Post-docs and PhD students from all areas. Substantial proficiency in Python or in another language (e.g. Java, C/C++, MATLAB, Mathematica) is absolutely required. An optional, one-day introduction to Python is offered to participants without prior experience with the language.
Date and Location: February 8th — 12th, 2010. Warsaw, Poland.
Preliminary Program: - Day 0 (Mon Feb 8) — [Optional] Dive into Python - Day 1 (Tue Feb 9) — Software Carpentry • Documenting code and using version control • Test-driven development and unit testing • Debugging, profiling and benchmarking techniques • Object-oriented programming, design patterns, and agile programming - Day 2 (Wed Feb 10) — Scientific Tools for Python • NumPy, SciPy, Matplotlib • Data serialization: from pickle to databases • Programming project in the afternoon - Day 3 (Thu Feb 11) — The Quest for Speed • Writing parallel applications in Python • When parallelization does not help: the starving CPUs problem • Programming project in the afternoon - Day 4 (Fri Feb 12) — Practical Software Development • Software design • Efficient programming in teams • Quality Assurance • Programming project final
Applications: Applications should be sent before December 6th, 2009 to: firstname.lastname@example.org No fee is charged but participants should take care of travel, living, and accommodation expenses. Applications should include full contact information (name, affiliation, email & phone), a *short* CV and a *short* statement addressing the following questions:
• What is your educational background? • What experience do you have in programming? • Why do you think “Advanced Scientific Programming in Python” is an appropriate course for your skill profile?
Candidates will be selected on the basis of their profile. Places are limited: early application is recommended. Notifications of acceptance will be sent by December 14th, 2009.
Faculty • Francesc Alted, author of PyTables, Castelló de la Plana, Spain [Day 3] • Pietro Berkes, Volen Center for Complex Systems, Brandeis University, USA [Day 1] • Zbigniew Jędrzejewski-Szmek, Institute of Experimental Physics, University of Warsaw, Poland [Day 0] • Eilif Muller, Laboratory of Computational Neuroscience, Ecole Polytechnique Fédérale de Lausanne, Switzerland [Day 3] • Bartosz Teleńczuk, Institute for Theoretical Biology, Humboldt-Universität zu Berlin, Germany [Day 2] • Niko Wilbert, Institute for Theoretical Biology, Humboldt-Universität zu Berlin, Germany [Day 1] • Tiziano Zito, Bernstein Center for Computational Neuroscience, Berlin, Germany [Day 4]
Organized by Piotr Durka, Joanna and Zbigniew Jędrzejewscy-Szmek (Institute of Experimental Physics, University of Warsaw), and Tiziano Zito (German Neuroinformatics Node of the INCF).
Website: http://www.g-node.org/python-winterschool Contact: email@example.com