Please note:
This power week is jointly organized and offered together with the Collaborative Research Center TransRegio (CRC-TR) 211.
For registration please send a brief email to info[at]hgs-hire.de as soon as possible specifying in your registration email
(i) the programming languages you typically use in your work and (ii) your GitHub user name.
Date
October 6-10, 2025
Topic
Clean Software Development
Lecturers/Tutors
Alessandro Sciarra (U Frankfurt)
David A. Clarke (U Bielefeld)
Coordinator
Gerhard Burau (HGS-HIRe)
Course Information
Aim and motivation
In this pedagogical and exciting training, general principles will be explored in order to let participants easily improve their knowledge
and toolkit and, in turn, their daily coding quality. Using many examples, the idea of clean code and clean testing will be introduced,
several aspects discussed and participants will immediately apply what learnt. Most of the time will be spent in training sessions letting
participants not only exercise on the discussed topics, but also practice techniques like pair programming and test/behaviour driven development.
As much as time will allow it, different topics naturally belonging to software development will be touched (e.g. use of a versioning control system,
semantic versioning, branching patterns, profiling and optimising).
After this training, which is offered requiring as few as possible prerequisites and in the spirit of life-long-learning, participants will be able
to write code from a totally new perspective and, at least, will be aware of what should be done to work in a sustainable way and what it would instead
happen when choosing the quick-and-dirty way.
Thematic focus
The training is tailored to doctoral students doing computational science and, hence, have to deal with medium to large software
on a regular or even daily basis. The main focus is clean software development. The ideas of clean code and clean testing will be
introduced in the very beginning of the course and will be explored more and more throughout the week, enriching the participants
section after section.
Prerequisites
It will be assumed that you have been (or in the best case will be) working with software for a while. Basically, the only prerequisite
is some experience in coding on which you will reflect during the course. The programming language used is not (too) relevant, because
most of ideas and principles discussed during the week apply to all of them. However, you should have in your toolkit some program to do
rudimentary plotting as well as know some scripting language to deal with data files in a basic way. Python serves both aspects very well,
but you will not be forced to use it.
If you are totally new to Git, you should take some time and read through some introduction to it. You can pick your favourite tutorial online
or read through the first two parts of this trilogy
(the third part will be discussed in the training).
Requirements and what to bring
Every participant is assumed to fulfil the following requirements:
- Bring a laptop to work on during the training. If you do not have one, please contact the trainers or the coordinator by e-mail.
- Choose a piece of your own software and have it ready. This has to be in a language known to the participant
and, ideally, it is either a small program or a stand-alone-working part extracted from a larger project.
As rule of thumb, such a small program should be a few hundreds of lines long, but not longer of ~1000 lines.
- Have a computing environment ready to be used. This might be your own laptop or a remote machine
(for instance the own university computer e.g. reached over ssh). In particular, every participant should be able to edit,
possibly compile and run their own chosen piece of software.
- Have Git installed in your computing environment. It is likely that Git is already installed on your operating system.
In order to check it, try to type "git version" in your terminal and see if the command is recognised. In the unlikely case
Git is not installed, you can follow this
nice guide in order
to install it.
- Have a GitHub account. You might already have one, that's fine. If not,
create one
for the power week (you might need it in your future at some point anyhow). During the training, we will collaborate in a private repository,
so do not worry about making private work public.
Agenda
The preliminary agenda and schedule is provided in the
pdf file
linked here. If you need further information, please contact the coordinator.
Practical Information
Registration
Registration is simply done by email to info[AT]hgs-hire.de. Please, specify in your registration email
- the programming languages you typically use in your work and
- your GitHub user name.
Please note, this power week has been jointly organized together with the CRC-TR 211. In case of a large request,
a waiting list will be established and the organizers will consider to enlarge the participants number, as far as possible.
Begin/End
The power week starts with a brief welcome on Monday, October 6, 2025, at 12:00. The scientific program starts after lunch (see agenda).
Please arrive well in time. The power week will close on Friday, October 10, afternoon around 15:00.
Late arrivals
If you will arrive late please contact the coordinator by e-mail in advance.
Venue
The lecture week will take place at Landhotel Waldhaus. The address is: An der Ringelhöhe 7, D-35321 Laubach.
More information
can be found here.
Travel
Travel to the venue is on Monday, October 6, in the morning. Please arrange for individual travel to the location.
You can reach the venue by public transport (e.g. by train to Grünberg (Oberhessen) and from there by bus to the
hotel Waldhaus in Laubach (Hessen), more details
here),
otherwise please try to travel by car pool. If somebody want to offer a lift, he/she should send an e-mail to info[at]hgs-hire.de
so that we can forward the information to the other participants of the power week.
Accomodation
Accommodation at the venue is mostly in twin bed rooms and has been booked for all registered participants and the lecturers/tutors.
If you want to share the room with a particular roommate, please inform the coordinator in advance.
Food
Special food requirements (vegetarian, other) should be communicated to the coordinators in advance.
Corresponding requests will be forwarded to the local kitchen team.
Full board is included in the power week.
What to bring additionally
Clothing: The power week will be very informal, so only casual attire is necessary.
Linen/towel/others: All rooms have linen and towels, no need to bring them.
The hotel offers a swimming pool and a sauna. In case you want to make use of it,
don't forget to bring your swimming things/togs and/or sauna equipment.
Internet
Wireless internet access is available. Please bring your own laptop (see comments above).
Expenses
All basic expenses including accommodation are covered by HGS-HIRe.
All meals are included.
You only have to pay for local expenses, e.g., drinks etc. in the evening.
Insurance
Though this trip will not generate any costs for your supervisor or group please
do not forget to file a trip request so you are covered by insurance during the
power week. Please ask the secretary of your working group at the university or
at GSI / HI Jena / HI Mainz for the appropriate form.
Participants (max. 16)
For privacy reasons we cannot display the list of participants here.