PyCon Africa 2020 went virtual in August 2020!
Day One began with an enthusiastic welcome address and opening remark from our Chair, Marlene Mhangami. She highlighted during her opening remarks, the current situation the world is in during this Covid-19 pandemic and the changes that everyone is adjusting to. She also stated that PyCon Africa is the annual Pan-African gathering of the Python community on the continent of Africa. This is the 2nd edition. Last year was the inaugural edition which was held in Accra, Ghana. People from over 26 different countries were present last year. It was well attended. She explained that this year the choice was made to host the conference online to ensure the safety of all of the attendees and the number of attendees this year has been doubled and that’s very exciting.
She spoke about Hopin, the platform for the conference which allows more interactive video sessions, networking, dynamic questions and answer sessions and others.
She highlighted how the team has put in a lot of effort to create a very welcoming environment where each conference attendee has the liberty to share their knowledge, experience, learn and grow together as a community.
She spoke about the code of conduct which serves as a tool to ensure the safety of all of the attendees to the conference and encourage respect and kindness amongst attendees. The code of conduct can be found at africa.pycon.org/coc.
She mentioned that each day will have an international selection of talks and speakers, panel sessions, networking sessions with both attendees and sponsors and each day will end with a keynote speech. The conference schedule can be viewed at africa.pycon.org/schedule. Also, the session recordings will be available on YouTube.
Building Your First Open Source Python Library
The first workshop was by Rising Odegua, a Data Scientist, Machine Learning Engineer & Researcher with experience in end-to-end data analytics projects ranging from data collection, exploration, transformation/wrangling, modelling and derivation of actionable business insights. The workshop was on building your first open-source python library. This workshop was to help participants learn:
1. How to take an open-source idea.
2. Implement it in Python.
3. Upload and open source it on GitHub and
4. Package it to PyPi for easy installation by other Python developers.
This workshop was beginner-friendly. Attendees were equipped with
An introduction to GitHub and preparing your open source repository
Setting up your development environment and creating a basic python library.
An introduction to PyPi and uploading your library to PyPi.
Writing tests for your library.
Writing documentation and user guide.
Updating and releasing new versions and
How to efficiently manage your package.
The library that was being created for the purpose of this tutorial was a simple math library to perform operations on numbers. The library can be found here https://test.pypi.org/project/mathist/0.1.
Also, the source code can be found here https://github.com/risenW/mathist.
This session was insightful and it prepared conference attendees for further tutorials on open source python libraries.
The session was followed by a break to network and meet sponsors in the exhibition booths. It was fun and full of interaction between the conference attendees and the sponsors. The platform being used, Hopin made this extraordinary. Attendees had the opportunity to interact with other attendees and speakers through a random selection by the platform. This definitely gave attendees the opportunity to build their network.
Managing Data Science Project Environments With Conda
The next tutorial session took place after lunch. This was a beginner-friendly tutorial on managing your data science project environments with Conda(+pip). This was taught by David R. Pugh, a staff scientist with the King Abdullah University of Science and Technology (KAUST) Research Computing Core Labs where he provides data science training and consulting services to KAUST students, faculty, and research scientists.
This workshop was a Software Carpentry-style introduction to Conda (+pip) for (data) scientists. Conda is an open-source package and environment management system that runs on Windows, Mac OS and Linux. Pip is the de-facto standard package-management system used to install and manage software packages written in Python. Conda and pip work great as a team and this workshop covered when and how to use pip to install packages into Conda environments.
In this workshop, attendees had the opportunity of following along by trying the code out themselves as David was handling the session. There were also exercises for attendees to try out. This was very helpful.
Link to workshop lesson materials: https://carpentries-incubator.github.io/introduction-to-conda-for-data-scientists/
Link to installing Conda on your own computer: https://carpentries-incubator.github.io/introduction-to-conda-for-data-scientists/setup/
Link to run Jupyter lab running in the cloud via Mybinder service: https://mybinder.org/v2/gh/carpentries-incubator/introduction-to-conda-for-data-scientists/binder?urlpath=lab
David clearly pointed out that the best way to learn to use a tool is by doing. His lessons covered the following:
Why you need a tool to manage your packages.
Working with environments.
How to install a package into an existing environment.
Sharing environments and,
Attendees were interactive in this session and were able to follow along until the end.
The last session was a fun activity which involved a throwback of videos and pictures from PyCon Africa 2019. Attendees networked with each other in the networking booth.
Day One of PyCon Africa 2020 was definitely the beginning of an amazing conference!
Look forward to the days ahead!