A hands-on, beginner-friendly course for teen students. Work through each section in order every topic builds on the one before it.
| # | Section | What's Inside |
|---|---|---|
| 1 | π Intro to Python | 4 notebooks |
| 2 | π Data Literacy | 2 notebooks + 1 workbook |
| 3 | π€ Machine Learning | 1 notebook + 1 workbook |
| 4 | π¬ Natural Language Processing (NLP) | 1 notebook + 1 workbook |
| 5 | ποΈ Computer Vision | 1 notebook + 1 workbook |
| 6 | β¨ Basic Intro to Generative AI | 1 notebook + 1 workbook + Python scripts |
Click Open notebook to view on GitHub, or click the Colab badge to run it instantly in your browser β no installation needed!
| # | Topic | GitHub | Google Colab |
|---|---|---|---|
| 1 | Fundamental Programming Concepts | Open notebook | |
| 2 | Program Logic and Control Flow | Open notebook | |
| 3 | Data Structures and Functions | Open notebook | |
| 4 | File Paths and File System | Open notebook |
| # | Topic | GitHub | Google Colab |
|---|---|---|---|
| 5 | Working with Data:Β Pandas | Open notebook | |
| 5b | Data Analysis Workbook | Open workbook | |
| 5c | Creating Dashboards with Streamlit | Open notebook |
| # | Topic | GitHub | Google Colab |
|---|---|---|---|
| 6 | Machine Learning Notebook | Open notebook | |
| 6b | Machine Learning Workbook | Open workbook |
| # | Topic | GitHub | Google Colab |
|---|---|---|---|
| 7 | NLP Notebook | Open notebook | |
| 7b | NLP Workbook | Open workbook |
| # | Topic | GitHub | Google Colab |
|---|---|---|---|
| 8 | Computer Vision Notebook | Open notebook | |
| 8b | Computer Vision Workbook | Open workbook |
| # | Topic | GitHub | Google Colab |
|---|---|---|---|
| 9 | Intro to GenAI Notebook | Open notebook | |
| 9b | GenAI Workbook | Open workbook |
This is the recommended way for most students.
- Click any Colab badge from the Quick Navigation tables above.
- Sign in with your Google account.
- Click "Copy to Drive" so your changes are saved.
- Run cells with Shift + Enter and you're good to go! π
What you need:
- Python 3.8+
- VS Code or Jupyter Notebook
Steps:
# 1. Clone the repository
git clone https://github.com/Publica-AI/cchub-AI_for_teens_bootcamp.git
# 2. Move into the folder
cd cchub-AI_for_teens_bootcamp
# 3. Create a virtual environment (recommended)
python -m venv venv
source venv/bin/activate # Mac / Linux
venv\Scripts\activate # Windows
# 4. Install all required packages
pip install -r requirements.txt
# 5. Launch Jupyter
jupyter notebookA browser window will open. Click any folder, then click a .ipynb file to open it.
The requirements.txt file lists every Python package this course needs β things like pandas, matplotlib, scikit-learn, tensorflow, and more. Installing it once sets up everything for all sections.
Sometimes packages clash with each other or with your Python version. Here are three ways to fix it:
Option A β Install without strict versions (most flexible)
Instead of pinning exact versions, install the packages by name only:
pip install pandas matplotlib seaborn scikit-learn tensorflow keras pillow requests openai jupyter notebook streamlitThis lets pip choose versions that work together on your machine.
Option B β Use a fresh virtual environment
A clean environment avoids conflicts with anything already installed on your computer:
# Create a brand new environment
python -m venv fresh_env
# Activate it
source fresh_env/bin/activate # Mac / Linux
fresh_env\Scripts\activate # Windows
# Install from requirements.txt
pip install -r requirements.txtOption C β Use conda (if you have Anaconda or Miniconda)
conda create -n teens_ai python=3.10
conda activate teens_ai
pip install -r requirements.txtπ‘ Quick tip: If one specific package fails, skip it and install the rest. Most notebooks will still work. Only install what that section actually needs.
- Install the Jupyter extension in VS Code (
ms-toolsai.jupyter). - Open the cloned folder in VS Code.
- Click any
.ipynbfile β it opens directly in VS Code. - Pick a Python kernel from the top-right dropdown and run cells with Shift + Enter.
| π Notebook | π Workbook |
|---|---|
| Teaches the concept step by step | Applies the concept to a real project |
| Includes explanations and examples | Includes student challenges and tasks |
| Complete thisfirst | Complete thisΒ after the notebook |
Folder:
Intro_to_Python/
Start here if you are new to coding. These four notebooks cover the basics of Python.
| # | File | What you will learn |
|---|---|---|
| 1 | fundamental_programming_concepts.ipynb |
print(), input(), variables, data types, comments |
| 2 | program_logic_and_control_flow.ipynb |
Operators,if/elif/else, for loops, while loops |
| 3 | data_structures_and_functions.ipynb |
Lists, tuples, dictionaries, functions, return values |
| 4 | file_paths_and_file_system.ipynb |
File paths, reading and writing files, directories |
Folder:
Data_literacy/
Learn how to explore and visualise real data using pandas and Streamlit.
| File | What it covers |
|---|---|
working_with_data_pandas.ipynb |
Loading, cleaning, filtering, grouping, and charting data |
data_analysis_workbook.ipynb |
Work with a real dataset of 2,392 student records |
creating_dashboards_with_streamlit.ipynb |
Build interactive dashboards with Streamlit |
Data folder: Data_literacy/data/
| File | Description |
|---|---|
kenyan_student_data.csv |
Kenyan student dataset used in the pandas notebook |
Student_performance_data.csv |
Real dataset of 2,392 student records used in the workbook |
student_data_dictionary.md |
Explains what each column in the dataset means |
Folder:
Machine Learning/
Learn how machines learn from data and how to build simple prediction models.
| File | What it covers |
|---|---|
machine_learning_notebook.ipynb |
What ML is, types of ML, training and testing models, key algorithms |
ml_workbook.ipynb |
Build a real ML project from data to prediction, with student tasks |
Folder:
NLP/
Learn how computers understand and work with human language β like detecting emotions in text!
| File | What it covers |
|---|---|
nlp_notebook.ipynb |
Tokenisation, stopwords, sentiment analysis, text classification |
nlp_workbook.ipynb |
Apply NLP to a real text dataset, with student challenges |
Folder:
Computer_Vision/
Learn how computers see and understand images β like identifying cats, dogs, and people in photos!
| File | What it covers |
|---|---|
cv_notebook.ipynb |
How images work, loading and processing images, object detection basics |
cv_workbook.ipynb |
Apply computer vision to real images, with student challenges |
Image folder: Computer_Vision/image/
| File | Description |
|---|---|
boy.jpg, boy2.jpg |
Sample photos of people |
girl.jpg, girl2.jpg |
Sample photos of people |
cat.jpg |
Sample photo of a cat |
dog.jpg, dog2.jpg |
Sample photos of a dog |
backpack.jpg |
Sample photo of an object |
dress.jpg, shirt.jpg, shirt2.jpg |
Sample photos of clothing |
knife.jpg |
Sample photo of an object |
These images are used in the notebook and workbook exercises β no need to download anything extra.
Folder:
Basic_Intro_to_GenAI/
Learn what LLMs and chatbots are, and build your own!
| File | What it covers |
|---|---|
notebook.ipynb |
What chatbots and LLMs are, how they work, OpenAI and Ollama |
workbook.ipynb |
Build and customise chatbots, student challenges |
Python scripts:
| Script | What it does |
|---|---|
ask_openai.py |
Send a question to OpenAI from the terminal |
ask_ollama.py |
Send a question to Ollama (works offline) from the terminal |
openai_chatbot_app.py |
A full chatbot app powered by OpenAI |
ollama_chatbot_app.py |
A full chatbot app powered by Ollama (runs offline) |
β οΈ The GenAI scripts need an API key (for OpenAI) or Ollama installed (for offline use). Full instructions are inside the notebooks.
cchub-AI_for_teens_bootcamp/
β
βββ README.md
βββ LICENSE
βββ requirements.txt
β
βββ Intro_to_Python/
β βββ fundamental_programming_concepts.ipynb
β βββ program_logic_and_control_flow.ipynb
β βββ data_structures_and_functions.ipynb
β βββ file_paths_and_file_system.ipynb
β
βββ Data_literacy/
β βββ working_with_data_pandas.ipynb
β βββ data_analysis_workbook.ipynb
β βββ creating_dashboards_with_streamlit.ipynb
β βββ data/
β βββ kenyan_student_data.csv
β βββ Student_performance_data.csv
β βββ student_data_dictionary.md
β
βββ Machine Learning/
β βββ machine_learning_notebook.ipynb
β βββ ml_workbook.ipynb
β
βββ NLP/
β βββ nlp_notebook.ipynb
β βββ nlp_workbook.ipynb
β
βββ Computer_Vision/
β βββ cv_notebook.ipynb
β βββ cv_workbook.ipynb
β βββ image/
β βββ boy.jpg, boy2.jpg
β βββ girl.jpg, girl2.jpg
β βββ cat.jpg
β βββ dog.jpg, dog2.jpg
β βββ backpack.jpg
β βββ dress.jpg, shirt.jpg, shirt2.jpg
β βββ knife.jpg
β
βββ Basic_Intro_to_GenAI/
βββ notebook.ipynb
βββ workbook.ipynb
βββ ask_openai.py
βββ ask_ollama.py
βββ openai_chatbot_app.py
βββ ollama_chatbot_app.py
| Action | Shortcut |
|---|---|
| Run the current cell | Shift + Enter |
| Run and add a new cell below | Alt + Enter |
| Add a cell below | B (command mode) |
| Delete a cell | D D (command mode) |
| Stop a running cell | Click the β Stop button |
π‘ Tip: Click a cell to select it (command mode). Press
Enterto type inside it (edit mode). PressEscapeto go back to command mode.
See LICENSE for details.