Reporting on the Second Software Carpentry Workshop in Namibia

This post originally appeared on the Software Carpentry website.


After attending this year’s African Instructors Meetup in Cape Town South Africa, Jessica Upani and Gabriel Nhinda from Namibia started laying the groundwork for another Software Carpentry workshop for Namibia. The previous workshop took place about a year ago as part of a 12-month programme to build computing capacity in Africa. This year however, the workshop was initiated, organised and taught by exclusively local instructors and helpers, Gabriel and Jessica with assistance from Ruber.

The workshop ran on 18 – 19 August 2017 at the University of Namibia, at the Main Campus in Windhoek, Namibia. About four days before the workshop, 30 people (including instructors and helper) had signed up and we closed the online registration form. The Associate Dean of the School of Computing at UNAM provided support by making a venue available for the event and catering was sponsored by Talarify.


We held an installation party the day before the workshop started and three people showed up. Here we installed all the required tools and software. Compared to the last time we had a SWC Workshop in 2016, this step was faster and we were more ready to handle different errors and scenarios. Additionally, to try and reduce the number of participants who would show up at the installation party, we e-mailed the download links to all installation instructions as well as all the necessary data files, for all the participants to download.

This meant that the people that showed up were ready for the workshop to begin.

Mamibia tweet

Day 1

The instructors and helpers made the final preparations to the venue before the attendees showed up. However the attendees were delayed and most did not show up at all. This was partly because there was a festival going on and day 1 fell on the same day, this was also the due date for all university examination scripts. In the end fifteen people showed up for day one.

Gabriel introduced the workshop, and the aims and objectives of Software Carpentry to the participants and the helper (Due to work commitments, Jessica joined us two hours after the workshop started). Gabriel commenced the workshop with the UNIX Shell for the morning session. We had two people that were also at the 2016 workshop attend the 2017 workshop. This time we had attendees from Chemistry and Biochemistry, Biological Sciences, Physics and School of Computing.

The lesson was interactive and we went as far as pipes and redirects for day 1 (We continued with “The UNIX Shell” at the end of Day 2 after the git lesson).

The second half of the day was for Python led by Jessica, it was an awesome class since people also had specific questions that relates to their research work. Some of the participants asked that the instructors and helper remain behind during the break to have a look at their actual work and code they were working on. The day ended at around 17:30, one hour after the schedule, however considering that we started late, it balanced out.

Day 2

Day two was reserved for Python and Version Control with Git (VCG). Jessica started off the day with the python lesson picking up from the previous day. Jessica did a marvellous job of explaining the content of the lesson and also keeping the participants aching for more. Some examples from how to use lists and declare variables came from the audience.

The version control (VCG) lesson was led by a local developer, Paulus Shituna. Surprisingly, this lesson went faster than expected, it could be because of the fewer number of participants.

Being that the VCG lesson finished ahead of schedule, the participants requested that we go as far as possible with the UNIX shell lesson. We worked all the way through Loops but could not complete the shell scripts.

Mamibia workshop

Lessons Learned

Sometimes after setting your dates for the Carpentry workshop, other events and due dates might affect the attendance of the workshop.

People tend to assume “African Time”. So be prepared to start your workshop an hour late.

Before starting the workshop scope for those that are using different Operating Systems compared to the one you are using and make sure to cater to all participants.

Charging a small fee might actually encourage commitment from attendees.

Just because you have reached your maximum number of participants, don’t close your registration process. Rather screen those that registered, maybe by asking a few questions during the registration process.

Have another instructor or helper time the lessons to avoid going over the time limit or deviating from the lessons too much. This eats time and results in not completing the lessons.


Some peer instruction was also observed as the attendees tried to help their colleagues when they saw a red sticky note. For the major part they managed to solve the issue, often it was syntax, indentation on Python or Case sensitivity, which caused most of the errors.

A question was raised as we went through the Python Lesson with regards to the examples that were used in one of the chapters. We had attendees whose first language was not English/ not fluent and as such we often had to use alternative explanations to get concepts across. In our case we had one attendee who spoke Portuguese and one of our instructors was able to provide assistance albeit their Portuguese not being fluent.

Images from Mamibia

Some images from Namibia, a country with vast spaces (total land area of 825,615 km2 with a population of around 2.5 million people) and incredibly beautiful and diverse landscapes. (Coulage images from, created in


Although the workshop was poorly attended, we think it was successful. This is mainly because the people that showed up really wanted and needed the knowledge they acquired during this workshop for both their studies and research work. To this end, we are planning on having a study group to discuss Python, UNIX, and any other topics related to applying computing to research.

We would like to thank Anelda from Talarify for the sponsorship, mentorship and overall doing an awesome job of making sure we had all that we needed for this workshop.

Another thank you goes to our helper and participants for making this workshop a success.

Dialogue & Discussion

Comments must follow our Code of Conduct.

Edit this page on Github