In the beginning of July, ACACIA’s WP5 ran a Python programming workshop in Addis Ababa, hosted by the Ethiopian Meteorological Service. The workshop was intended to build a basis for a sub-seasonal forecasting “hackathon” that we plan to organize later this year.
The workshop took a participant-centred approach, with the programme evolving throughout the week to match the needs of those attending. Rather than sticking to a fixed schedule, each day’s sessions were adjusted based on feedback, allowing more time for challenging and essential topics. This flexible format ensured that the training remained relevant, practical, and tailored to the group’s needs. This was important as the group was rather diverse – some participants were meteorologists or climatologists who wanted to upgrade their Python skills, while some were IT specialists who got a good understanding of writing code, although not necessarily in Python, and wanted to learn about climate data processing.

The workshop started with some basics that needed to be covered to get those participants less familiar with Python to get started. This was all covered on day 1 where we were able to explain how to install the packages and software required and how to understand the structure of how python deals with data. Once the basics were covered day 2 was spent looking at how to read in more complicated data files and how to visualize this data using python packages. The visualization of data was further explored on day 3 and day 4 was spent exploring how to perform different statistical analyses in python as well as analyzing sub-seasonal forecast data. Day 5 was spent in discussion understanding what the participants still needed, which precipitated in a session on using git and github, and a discussion around documenting and sharing code and data.
Throughout the workshop exercises were given for each topic to allow participants to practice what was taught and demonstrated – the flexible timetable also meant that the time pressure of these exercises was minimal which allowed for participants to engage with these exercises on a deep level. The exercises included the basic exercise plus advanced options for those who were more experienced, this approach worked well and allowed for everyone to be challenged and no one to feel pressured or left behind.
The workshop was filled with amazing people and the flexible timetable allowed for space for some fun, creative and social moments. Another shout out which added to the vibes was the amazing food – this workshop was not sponsored by Injera but certainly was powered by it! Injera and Ethiopian coffee of course.

The venue — which was the new EMI offices in Bole — although still sparsely populated by meteorologist, had some very cool facilities such as the smart screen, which allowed not just for ad-hoc drawings to explain more complicated concepts such as hindcast initialization, but also for some off-the-cuff creativity. We also toured the new state-of-the-art computing facility that was very impressive indeed!

Participants’ feedback told us that everybody really enjoyed the course and the topics that we covered were considered very useful – everyone either learned new skills or refreshed their old ones. The level of training was in general considered to be on the too high side – but it’s good to be challenged a bit, isn’t it? And it seems that we should have accommodated a few more hands-on, practical sessions. We will definitely take these comments into account when running the next training workshop on the same topic with DGM in Madagascar in August!
NB. Thanks to Mesay Tolossa and the Deputy Director General, Dr Asaminew Teshome, for assisting with organization and hosting the successful training workshop.

Blog written Sabina Abba Omar and Piotr Wolski (both CSAG, UCT)


Leave a comment