Workshops in Lausanne, Bern and Zürich

In the last month, participants from everywhere in Switzerland got a solid introduction to programming and algorithms in the new version of our introductory workshops.

Florian Gatignon
Johannes' lecture about graphs

Johannes explains the basics of graph theory.

This year, we again organized autumn introductory workshops to give beginners the opportunity to get to know the Swiss Olympiad in Informatics and get a head start in programming and algorithmic design, in order to help them to perform in this year’s competition. This year, we tried out a new formula: every participant participated to two workshops, one about programming in C++ and one about algorithms. In total, everyone spent five full days learning new things, scratching their heads about tricky problems and having fun together with other like-minded participants.

The different workshops took place in the University of Bern, ETH Zürich and EPF Lausanne. Like in previous years, we offered participants the opportunity to follow workshops entirely in German or in English, and, for the programming part, even in French! This was the first time that we held a workshop with all lectures in that language, allowing people from Romandie to learn some basics in their mother language.

André gives a hands-on lecture about loops

André gives a hands-on lecture about loops.

During the first week-end, participants spent two days learning to program in C++. The lectures were very practical and most of them were what we call “hands-on lectures”: a teacher codes live in front of the students while explaining to them what he or she is doing. In between lectures, participants were given a lot of time to practice with their newly acquired skills and to try their hands on some first algorithmic problems.

Students working together and solving theoritical tasks

Students working together and solving theoretical tasks.

For the second workshop, we assumed that participants knew enough about programming to begin learning about algorithms, their analysis and their design. This workshop lasted for three days, with one topic per day: algorithmic design on Friday, graph theory on Saturday and dynamic programming on Sunday. Considering that some had little previous experience in programming, it was impressive to see participants already being able to solve some advanced problems, sometimes with the help of their teachers or of other fellow participants. And indeed, this year, there was a special focus on collaboration and learning together: for example, the most part of one day was dedicated to the analysis of algorithms in groups of a handful of participants. Everyone discussed the given programs together, had to compute their runtime and make proofs of their solutions together.

The winning team optimizing their time by solving problems on their computer while standing on the metro.

The winning team optimizing their time usage by solving problems on their computer while standing on the metro.

Of course, this was a heavy program and it would have been impossible to focus for so long without some fun activities on the side! Luckily, we had this covered: on Friday afternoon during the workshops about algorithms, we organized a scavenger hunt through the streets of Lausanne and Zürich. Using subtle hints and logical thinking, participants had to progress in groups from landmark to landmark while discovering nice cities. In Lausanne, this even extended into the beginning of the evening: since the tasks were more difficult than expected and the sun had already set, some groups had to find hints using their flashligths! Despite this minor inconvenience, everyone enjoyed the scavenger hunt and arrived safely to the youth hostel in the evening.

Two participants try their hands on challenging tasks during a contest.

Two participants try their hands on challenging tasks during a contest.

Finally, we concluded the last two days of the workshops with little contests in teams of two where participants had two hours to solve three tasks related to that day’s lectures. It was a first opportunity to get familiar with a more competitive setting, which sometimes makes everything seem suddenly way more complicated than in a stress-free environment. It is important to get used to this, as participants will feel the same emotions again a lot of times as they advance through the next rounds of the Swiss Olympiad in Informatics.

If you missed out on the workshop, don’t worry. All our teaching materials are collected here:

Workshop Ressources

There, you can find all our slides, handouts as well as all our tasks on our grading system. The next introductory workshops will take place in October 2019.

And finally, here are some pictures from the workshops on our Flickr album.