Our first training event in Ghana was organized in Accra from 18th January to 22nd January 2011. We were lucky enough to introduce Python to about 40 people, mainly students and young professionals.
The event was organized at the African University College of Communications (AUCC), the venue for the training days, and the Ghana Telecom University College (GTUC), the venue for the hackathon days, with the support of the following organizations and groups:
- Google Africa - our Gold sponsor,
- Ageliaco (Association pour une Gestion Libre et Avancée de Contenu), an association of Plone users in the academic sector in Geneva, Switzerland - our Silver sponsor,
- BECATEC (Bureau d’Etudes, de Contrôle et d’Assistance Technique), an african (Togo) consultancy company in the domain of civil engineering interested by ICT for development - our second Silver sponsor,
- Python Software Foundation / Python Sprints - the Hackathon sponsor,
- The PAT Ghana team backed by Ghana Google Technology User Group (Ghana GTUG), Hutspace (a startup company using Python and Django) and the GTUC branch of Technology Students Association (TESA-GTUC).
You can find more about the sponsors, supporters, and organization team here. You will notice the geographical diversity as well as diversity in terms of the domains / sectors represented by these supporters. That’s another proof that diversity offers richer connections and sharing!
First training day
Participants were welcomed to the African University College of Communications campus by Mr. Kwabena Mantey of the University staff. This was followed by a presentation by Gameli Adzaho (@gamelmag) about Python African Tour, the goals of the project, and what participants should expect over the five days of training.
Emmanuel Okyere (@eokyere) started the tutorials serie by presenting Python basics to the participants ; introduction to programming, introduction to Python, installation of Python on windows computers, interactive mode and script mode, different types of errors, functions, etc. Participants wrote their first Python programme and function (finding the area of a circle, given radius) in interactive mode.
Second training day
With Kweku Danso (@kwekud) as lead, participants briefly reviewed concepts covered the first day, before plunging into Python programming in script mode. Some of the exercises undertaken in interactive mode were repeated in script mode. During the second half of the day, Henry Addo (@eyedol) took over to take the participants through a word-counting program that encapsulated all the aspects of Python programming covered so far, even classes and objects.

The Python training participants
Third training day
With Kamon Ayeva (@kamon), they reviewed the word-counting exercise, an opportunity for them to play by themselves with script mode coding, make errors and fix them with the guidance of the tutors, and ask more questions.
Just after lunch, Florence Toffa of Mobile Web Ghana made a brief presentation of their Mobile Entrepreneurs in Africa Training Programme that was to start at the end of February 2011. A sizeable number of participants were interested in this opportunity.
Back to the training, Emmanuel Okyere took over the lead. We had to change the plans regarding the Django tutorial that was planned after 10mn of Emmanuel trying to introduce the topic ; he realized that most participants did not meet the minimal requirements for learning a web framework, such as understanding of HTTP and HTML basic principles, added to the general low level of programming expertise. Emmanuel with great agility - another quality of Pythonistas
- switched to an introduction of the Python turtle module, a fun way for new programmers to learn how to use predefined functions to achieve different shapes and movements. It was a good and engaging learning experience as a conclusion for the tutorials days.
The hackathon
At the Ghana Telecom University College campus, on friday and saturday, we continued the Python learning experience with the “hackathon” format. It was an opportunity for motivated people to get more deeply into coding, during two days, and another chance for going through the web framework tutorial.
Some people were also interested by mobile programming stuff, which could have been covered via the angle of RapidSMS and related APIs, but it was decided to only focus on 2 topics: the Django web framework and the Plone CMS.
We started with quick presentations of the Django framework and Plone CMS to the participants. So they were then able to compare the two technologies, with input from the hackathon leaders, in order to select the topic they wanted to probe further into. Two groups were made: the Django one led by Kweku (most of the participants) and the Plone one led by Kamon.

The learning hackathon is going on
The Django group went through the official Django tutorial: installation, database setup and models definition, the administration interface, urls, views and templates.

Hackathon - Kweku Danso leading the Django group
The smaller Plone CMS group started with installing Plone, setting up a Plone site, and organizing its content. The second day, they continued on looking at how to customize the logo and the public stylesheet. They also installed an add-on to Plone, PloneFormGen, and learned how to create forms through the Plone interface using that system.

Hackathon - Adel Yahaya (@linuxaccra) playing with Plone

Hackathon - A form quickly configured using PloneFormgen
At the end of the hackathon, many of the participants were able to show a working prototype of a Django-based application or Plone-based website.
A Python Ghana user group is born
At the end, while we were wrapping up, we came up with the idea of organizing another training in Kumasi in a few weeks… if the plan goes well. This would be a second PAT Ghana event. The dates will be announced as soon as we have the organization details confirmed.
For now, a mailing list has been created to keep up the conversation about Python and as a first step to a future active user group in Ghana. Meet you there!
Thank you!
The PAT Ghana team is grateful for the support of all its partners and facilitators: AUCC and GTUC for hosting our activities, the sponsors, the tutors, and the attendees. Thank you for making the Ghana leg of Python African Tour a success!
We enjoyed all the ingredients for a useful training on an important technology, while having fun: passionate Python developers from Ghana helping as tutors, enthusiasm from participants and willingness to learn, good food provided for lunch, etc.

Good food (rice, spaghetti, fried plantain), thanks to the sponsors
Also, thanks to Nnenna Nwakanma (@nnenna) for her active participation, interesting discussions we had at lunch time, and for live-tweeting the event during the training days.
Now, let’s continue with that goodness!

Group photo after the hackathon