Summary
The CSA Africa 2025 Workshop will be held in-person from July 14th to 31st, 2025. This workshop is organised in collaboration with the University of Nairobi's Department of Computing and Informatics, located at the Chiromo Campus in Nairobi, Kenya. The workshop will bring together a diverse group of 200 participants from across Kenya, with a strong emphasis on gender inclusivity. We aim for approximately 50% female participation. Depending on available funding, travel support and childcare assistance may be provided to participants, including mothers attending the workshop. On-campus accommodation will be available for all attendees.
The three-week workshop will serve as a launch pad for our beneficiaries and hopefully ignite their passion for programming. We will be offering three tracks with various learners in mind:
-
Python Fundamentals: This is for absolute beginners. No prerequisite or technical background is required.
-
Python for Software Engineering: This is an intermediate track and a knowledge of basic Python fundamentals is required.
-
Python for Data Science: This is an intermediate track and a knowledge of basic Python fundamentals is required. Knowledge of statistics and linear algebra is a bonus.
Ready to apply? Applications close on February 28, 2025.
Gallery
The workshop is structured into three distinct tracks, catering to participants of all skill levels—from beginners to those with advanced experience. This format ensures everyone has the opportunity to develop and enhance their programming skills. Each participant will select one track to follow for the entire 3-week duration. Below is an overview of each track, with further details to be confirmed.
Workshop Tracks
Tracks
Track 1: Python fundamentals (beginner)
This track will cover:
-
Introduction to Python programming
-
Variables and expressions
-
Types and for-loops
-
Lists
-
Functions
-
If-statements
-
Problem Solving
-
Algorithms
-
While loops
-
Files
-
Dictionaries
Pre-requisite:
-
No programming experience is required for this track.
Track 2: Python for Software Engineering (intermediate)
This track will cover:
-
Quick recap of Python fundamentals
-
Git basics
-
Python data structures
-
Branching in Git
-
Functional programming
-
Object-oriented programming
-
Git collaboration features (pull requests, code reviews, forking)
-
Modularising Python
-
Python error handling
-
Testing in Python
-
CI with GitHub
-
Using WebAPIs in Python
-
Advanced Python topics
-
Python Software Architectures(Flask, FastAPIs)
Pre-requisite:
-
Proficiency in Python Programming - Have a solid understanding of Track 1 programming concepts.
Track 3: Python for Data Science
(intermediate)
This track will cover:
-
Introduction to Data Science, Python and Git Basics
-
Data Manipulation with Pandas and GitHub Collaboration
-
Data Visualization with Matplotlib and Seaborn
-
Data Wrangling and Advanced Pandas
-
Working with Database and SQL in Python
-
Data Acquisition and Web Scraping
-
Data Cleaning and Preparation
-
Introduction to Statistical Analysis
-
Introduction to Machine Learning with Scikit-Learn
-
Working with Big Data and Cloud Services
-
Practical application of the data skills, project management and problem-solving
-
Critical thinking and ethics in data collection, analysis and sharing
Pre-requisites:
-
Proficiency in Python Programming - Have a solid understanding of Track 1 programming concepts.
-
Maths and statistics background - Familiarity with linear algebra and basic descriptive statistics.
-
Basic computing concepts - including software installation, version control, CLI commands, and file system management.
Course Structure
Weeks 1&2 (14 - 25 July)
Get ready for an exciting start! Weeks 1 and 2 will feature a blend of interactive lectures and hands-on coding exercises, designed to make your learning fun and engaging.
Week 3 (28 - 31July)
In the final week, you’ll team up to tackle a real-world challenge using Python. It’s your chance to apply your skills, showcase creativity, and work collaboratively.
Meet your 2025 Instructors
Here is the team of experienced professionals dedicated to helping you succeed. Our instructors bring expertise in Python programming, software engineering, and data analysis, with years of industry and teaching experience. Explore their profiles and connect with them to learn more.
Ready to apply? Applications close on February 28, 2025.