~~NOTOC~~
a Summer School by
the G-Node and the Institute of Experimental and Applied Physics,
Christian-Albrechts-Universität zu Kiel
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, incorporating 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 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.
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 is assumed. Participants without any prior experience
with Python should work through the proposed introductory materials before the course.
Download the original announcement: {{:announcement-python-summerschool.pdf|pdf}}
====== Group photo =====
{{ ::kiel1-cut.jpg?direct&500 |}}
====== Date & Location ======
**September 2–7, 2012**. Kiel, Germany {{:flags:de.png|}}
Extraterrestrial Physics department\\
[[http://www.ieap.uni-kiel.de|Institute of Experimental and Applied Physics]]\\
[[http://www.uni-kiel.de/|Christian-Albrechts-Universität zu Kiel]]\\
[[http://g.co/maps/3v7qg|Leibnizstr. 11, 24118 Kiel]]\\
Tel. +49 (0)431 880-2518, Fax. +49 (0)431 880-3968\\
[[python-info@g-node.org]]\\
\\
**[[localinfo|Information about Kiel, travel, and accommodation]]**.
====== Preliminary Program ======
**Day0** (Sun Sep 2): **Best Programming Practices**
* Best Practices, Development Methodologies and the Zen of Python
* Version control with git
* Object-oriented programming & design patterns
**Day1** (Mon Sep 3): **Software Carpentry**
* Test-driven development, unit testing & quality assurance
* Debugging, profiling and benchmarking techniques
* Best practices in data visualization
* Programming in teams
**Day2** (Tue Sep 4): **Scientific Tools for Python**
* Advanced NumPy
* The Quest for Speed (intro): Interfacing to C with Cython
* Advanced Python I: idioms, useful built-in data structures, generators
**Day3** (Wed Sep 5): **The Quest for Speed**
* Writing parallel applications in Python
* Programming project
**Day4** (Thu Sep 6): **Efficient Memory Management**
* When parallelization does not help: the starving CPUs problem
* Advanced Python II: decorators and context managers
* Programming project
**Day5** (Fri Sep 7): **Practical Software Development**
* Programming project
* The Pelita Tournament
Lectures start at **8:30** and finish around **18:30**. During the day we will have short breaks (coffee & tea provided), and a long lunch break. **The last half hour every evening is dedicated to tutors' consultation**: Tutors will answer your questions and give suggestions for your own projects.
On Sunday, September 2 **registration starts at 8:00**: please try to be there as soon as possible, the lecture starts at 8:30 sharp.
On Friday, September 7, we are going to have a little farewell party that you should not miss: book your return travel not before Saturday, September 8 ;-)
Have a look at the planned [[social_activities|social activities]].
====== Schedule & Materials ======
[[schedule|Schedule]]
====== Applications ======
You can apply [[https://python.g-node.org/survey/index.php?sid=11135|on-line]]. Here is {{:application_form_draft.pdf|a preview of the application form}}.
Applications must be submitted before **23:59 UTC, May 1 2012**. Notifications of acceptance will be sent by **June 1, 2012**. Participants have been selected.
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 last time was around 20%.
**You are supposed to know the basics of Python to participate in the lectures!**
**You are encouraged to go through the [[introductory material|introductory material]].**
====== Students ======
[[students|Confirmed participants]]
====== Evaluation Survey ======
{{:evaluation_survey_results.pdf|Results}}
====== Faculty ======
* [[http://www.pytables.org/moin/FrancescAlted|Francesc Alted]], Continuum Analytics Inc., {{:flags:us.png|}}USA
* [[http://people.brandeis.edu/~berkes|Pietro Berkes]], Enthought Inc., {{:flags:uk.png|}}UK
* [[http://haenel.co/|Valentin Haenel]], Blue Brain Project, École Polytechnique Fédérale de Lausanne, {{:flags:ch.png|}}Switzerland
* [[http://dimer.fuw.edu.pl/Members/ZbyszekJSzmek|Zbigniew Jędrzejewski-Szmek]], Faculty of Physics, University of Warsaw, {{:flags:pl.png|}}Poland
* [[http://neuralensemble.org/people/eilifmuller/|Eilif Muller]], Blue Brain Project, École Polytechnique Fédérale de Lausanne, {{:flags:ch.png|}}Switzerland
* [[http://nilab.fbk.eu/olivetti/|Emanuele Olivetti]], NeuroInformatics Laboratory, Fondazione Bruno Kessler and University of Trento, {{:flags:it.png}} Italy
* [[http://debilski.de|Rike-Benjamin Schuppner]], Technologit GbR, {{:flags:de.png|}} Germany
* [[http://neuroscience.telenczuk.pl|Bartosz Teleńczuk]], Unité de Neurosciences Information et Complexité, Centre National de la Recherche Scientifique, Gif-sur-Yvette, {{flags:fr.png}} France
* [[http://mentat.za.net/|Stéfan van der Walt]], Helen Wills Neuroscience Institute, University of California Berkeley, {{:flags:us.png}} USA
* [[http://venthur.de/|Bastian Venthur]], Berlin Institute of Technology and Bernstein Focus Neurotechnology, {{:flags:de.png|}} Germany
* [[http://www.nikowilbert.de|Niko Wilbert]], TNG Technology Consulting GmbH, {{:flags:de.png|}} Germany
* [[http://www.cognition.tu-berlin.de/zito/|Tiziano Zito]], Institute for Theoretical Biology, Humboldt-Universität zu Berlin, {{:flags:de.png|}}Germany
====== Previous Schools ======
* [[https://python.g-node.org/python-summerschool-2011|St Andrews]], UK, September 11—16, 2011. \\
* [[https://python.g-node.org/python-autumnschool-2010|Trento]], Italy, October 4—8, 2010. \\
* [[https://python.g-node.org/python-winterschool-2010|Warsaw]], Poland, February 8—12, 2010.\\
* [[https://python.g-node.org/python-summerschool-2009|Berlin]], Germany, August 31—September 4, 2009.
You may be interested in the results of our evaluation surveys:
[[https://python.g-node.org/python-summerschool-2011/_media/evaluation_survey_results.pdf|St Andrews]],
[[https://python.g-node.org/python-autumnschool-2010/_media/evaluation_survey_results.pdf|Trento]],
[[https://python.g-node.org/python-winterschool-2010/_media/evaluation_survey_results.pdf|Warsaw]],
[[https://python.g-node.org/python-summerschool-2009/_media/evaluation_survey_results.pdf|Berlin]].
====== Contact ======
For any further questions please write to [[python-info@g-node.org]].\\
====== Organizers ======
Organized by [[http://www.ieap.uni-kiel.de/et/people/steigies/|Christian T. Steigies]] and Christian Drews of the [[http://www.ieap.uni-kiel.de|Institute of Experimental and Applied Physics]], [[http://www.uni-kiel.de/|Christian-Albrechts-Universität zu Kiel]] {{:flags:de.png|}}, and by [[http://dimer.fuw.edu.pl/Members/ZbyszekJSzmek|Zbigniew Jędrzejewski-Szmek]] and [[http://www.cognition.tu-berlin.de/zito/|Tiziano Zito]] for the [[http://www.g-node.org/|German Neuroinformatics Node]] of the [[http://www.incf.org/|INCF]] {{:flags:de.png|}}.
====== Sponsors ======
Additional support is generously provided by:
[[http://www.ppi.de|{{ppi-rgb-1-ag2_V2.jpg?240|http://www.ppi.de}}]] [[http://www.picloud.com|{{picloud-version1.png?240|http://www.picloud.com}}]] [[http://www.enthought.com|{{logo-enthought-sponsor.png?240|http://www.enthought.com}}]]\\
[[http://www.technologit.de|{{logo-technologit.png?240|http://www.technologit.de}}]] [[http://www.tngtech.com|{{logo-TNG.png?240|http://www.tngtech.com}}]] [[http://continuum.io/|{{continuum_analytics.png?240|http://continuum.io/}}]]