Best practices in programming
Bern, 21-22 November 2011
The goal of this course is to teach the principals of software engineering and development to bioinformaticians. We will be focusing on version control and code craftsmanship. The course will be structured around a practical example applicable to bioinformatics and mix theory with hands-on exercises putting the theory into practice. The exercises will be in the Python programming language (version 3), and Git will used for version control.
Course participants should already have some programming experience (e.g., in Python, Perl, Java, Matlab, R, or C). Since the practical portion of the course will be in Python, we encourage participants without Python experience to familiarize themselves with the language by going through the tutorial.
The environment for the course will be Eclipse with PyDev and EGit. We will be providing Eclipse distributions for MacOS X, Windows, and Linux with the required packages already built in. Eclipse/PyDev would, of course, be an ideal environment for those of you who work through this Python tutorial.
Bernd Rinn, Hannes Schabauer, Milan Simonovic, Franz-Josef Elmer, Ramakrishnan Chandrasekhar
Important note: participants must bring their own computers
Practical organization - Location and schedule
Version Control in Git
We will introduce the Git version control system and work through usage patterns optimized for small (1-2 person) teams.
2. Basic Principals for Readable, Maintainable Code
We will teach a few very useful principals for writing code that you will be able to still understand three months later.
3. Basic Principal in Depth: Unit Testing
We will take a more in-depth look at one of the basic principals: unit testing. We will look at testing strategies and techniques for minimizing writing effort and maximizing value of tests.
Room 304, main building of the University of Bern.
Registration is closed.