10ᵀᴴ Advanced Scientific Programming in Python ============================================== a Summer School by the G-Node and the Municipality of Sithonia 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 acquiredirect hands-on experience with the materials. Students will work in pairsthroughout 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. 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 are striving hard to get a pool of students which is international and gender-balanced. You can apply online: https://python.g-node.org Application deadline: 23:59 UTC, May 31, 2017. There will be no deadline extension, so be sure to apply on time ;-) Be sure to read the FAQ before applying. Participation is for free, i.e. no fee is charged! Participants however should take care of travel, living, and accommodation expenses by themselves. Date & Location =============== August 28—September 2, 2017. Nikiti, Sithonia, Halkidiki, Greece Program ======= → Best Programming Practices • Best practices for scientific programming • Version control with git and how to contribute to open source projects with GitHub • Best practices in data visualization → Software Carpentry • Test-driven development • Debugging with a debuggger • Profiling code → Scientific Tools for Python • Advanced NumPy → Advanced Python • Decorators • Context managers • Generators → The Quest for Speed • Writing parallel applications • Interfacing to C with Cython • Memory-bound problems and memory profiling • Data containers: storage and fast access to large data → Practical Software Development • Group project Preliminary Faculty =================== • Francesc Alted, freelance consultant, author of Blosc, Castelló de la Plana, Spain • Pietro Berkes, NAGRA Kudelski, Lausanne, Switzerland • Zbigniew Jędrzejewski-Szmek, Krasnow Institute, George MasonUniversity, Fairfax, VA USA • Eilif Muller, Blue Brain Project, École Polytechnique Fédérale de Lausanne Switzerland • Juan Nunez-Iglesias, Victorian Life Sciences Computation Initiative, University of Melbourne, Australia • Rike-Benjamin Schuppner, Institute for Theoretical Biology, Humboldt-Universität zu Berlin, Germany • Nicolas P. Rougier, Inria Bordeaux Sud-Ouest, Institute of Neurodegenerative Disease, University of Bordeaux, France • Bartosz Teleńczuk, European Institute for Theoretical Neuroscience, CNRS, Paris, France • Stéfan van der Walt, Berkeley Institute for Data Science, UCBerkeley, CA USA • Nelle Varoquaux, Berkeley Institute for Data Science, UC Berkeley, CA USA • Tiziano Zito, freelance consultant, Berlin, Germany Organizers ========== For the German Neuroinformatics Node of the INCF (G-Node) Germany: • Tiziano Zito, freelance consultant, Berlin, Germany • Zbigniew Jędrzejewski-Szmek, Krasnow Institute, George MasonUniversity, Fairfax, USA • Jakob Jordan, Institute of Neuroscience and Medicine (INM-6), Forschungszentrum Jülich GmbH, Germany • Etienne Roesch, Centre for Integrative Neuroscience and Neurodynamics, University of Reading, UK Website: https://python.g-node.org Contact: python-info@g-node.org -- Jakob Jordan Institute of Neuroscience and Medicine (INM-6) Computational and Systems Neuroscience & Institute for Advanced Simulation (IAS-6) Theoretical Neuroscience Jülich Research Centre and JARA Jülich, Germany tel.: +49 2461 61-96450 http://www.csn.fz-juelich.de/ ------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------ Forschungszentrum Juelich GmbH 52425 Juelich Sitz der Gesellschaft: Juelich Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498 Vorsitzender des Aufsichtsrats: MinDir Dr. Karl Eugen Huthmacher Geschaeftsfuehrung: Prof. Dr.-Ing. Wolfgang Marquardt (Vorsitzender), Karsten Beneke (stellv. Vorsitzender), Prof. Dr.-Ing. Harald Bolt, Prof. Dr. Sebastian M. Schmidt ------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------