Skip to content

About

No description, website, or topics provided.

Resources

Stars

5 stars

Watchers

0 watching

Forks

Latest commit

 

History

55 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fundamentals of Python — First Programs

Arewa DataScience Academy · Python Fundamentals · Cohort 4

Based on: Fundamentals of Python: First Programs (3rd ed.) — Kenneth A. Lambert

License: MIT Python 3.10+ Jupyter Beginner Friendly Next Step: ML Course


This is the on-ramp to the Introduction to Machine Learning course. Completing these 8 sessions satisfies the "some Python experience (loops, functions, lists)" prerequisite for the ML summer school. Start here if you are new to programming.


Table of Contents


About This Course

This is an 8-session introduction to programming with Python, designed for people who have never written code before. Each session is 1 hour — a short, focused walk-through of one core idea followed by hands-on practice.

The course is deliberately scoped to the Python language itself: variables, data types, decisions, loops, strings, collections, and functions. We skip broader computer-science survey topics (GUIs, networking, complexity analysis) so beginners leave fluent in writing small, correct programs.

This is the foundation course of the Arewa DataScience Academy pathway: finish here, and you're ready to move directly into the Introduction to Machine Learning course with the Python skills it assumes.


Key Features

  • 8 focused sessions — one core idea per hour, no filler
  • 8 lab notebooks — Guided → Fill-in-the-Blank → Challenge structure
  • Consistent pedagogy — every lab follows the same three-part format for predictable pacing
  • Pure standard-library Python — no external packages to install or break
  • Textbook-aligned — every session maps to a chapter of Lambert's First Programs (3rd ed.)
  • A clear next step — flows directly into the Introduction to Machine Learning course

Prerequisites

Skill Level Required
Programming None — this is the starting point
Computer use Comfortable installing software and using a web browser
Math Basic arithmetic; no algebra required
Hardware Any laptop, or just a browser (for Google Colab)

No prior coding, command-line, or math background is assumed. If you can use a web browser, you can take this course.


Setup and Installation

Cohort 4: Getting Started Guide

Presented by: Dr Shamsuddeen Muhammad

This cohort's setup is a single, self-contained guide: Getting Started with VS Code for Data Science. It replaces the separate per-topic guides used by earlier cohorts with one walkthrough covering Windows, macOS, and Linux side by side.

Work through it before Session 1. By the end of it, you are expected to be able to:

  • Navigate VS Code — the Activity Bar, the integrated terminal, and the Command Palette
  • Use basic command line operations (pwd, ls, cd, mkdir, and safely deleting files/folders) without hesitation
  • Install and use uv to manage Python versions and project dependencies
  • Create, activate, and deactivate a Python virtual environment, and explain why projects need one
  • Install Git, configure your identity, and create/push a repository to GitHub
  • Clone this course's repository (arewadataScience/ArewaDS-Introduction-to-Python-2026) to your own machine, both from the terminal and from inside VS Code
  • Explain git push and git pull — what each does, and what happens if you push without pulling first
  • Fork a repository, work on branches, and open a pull request — all from inside VS Code
  • Create your own ArewaDS-Practice repository on GitHub and use it as a personal sandbox to practice the push/pull/branch cycle
  • Write and preview basic Markdown — headings, lists, links, tables, and code blocks — for READMEs and notebook cells
  • Build, run, and push a small end-to-end Python project (script and notebook) using the tools above
Section Link
Full guide getting-started-vscode.md
Installing VS Code §3
Basic command line operations §6
Installing uv & Python §7–8
Virtual environments with uv §9
Introduction to Markdown §10
Installing Git & setting up GitHub §12–13
Cloning the course repo (terminal + VS Code) §14.2
Understanding push & pull §14.5
Branches, merge conflicts, pull requests §14.6–14.8
Practice repo: ArewaDS-Practice §14.9
VS Code and AI §15
Setup checklist §21

Previous Cohort References

The Arewa DataScience Fellowship's original setup guides remain available for reference — useful if you want a second explanation of a topic, or recordings to watch alongside this year's written guide.

Title Resource Recording
Initial Setup macOS · Windows · Linux Recording 1
VS Code for Python Fellowship Guide Recording 1 · Recording 2
Basic Command Line Operations Command Line Recording 1
Setup Git and GitHub Git / GitHub Recording 1 · Recording 2
Python Virtual Environments Virtual Environment Recording 1
Introduction to Markdown Markdown Recording 1
Google Colab Coming soon Recording 1

Weekly Schedule

Format: 1 hour per session · short lecture + hands-on lab · 8 sessions total

Each session is paced for true beginners. Loops get a session and a half, and functions span two sessions — that's where first-timers actually get stuck, so we slow down there on purpose.

# Topic Slides Lab Recording Key Concepts Reading (Lambert) Instructor
1 First Programs & the Shell Slides Lab Session 1, Session 2 The edit–run–debug loop, print, input, variables, comments Ch. 1, §2.1–2.2 Dr. I.S. Ahmad
2 Data Types & Expressions Slides Lab Session 1, Session 2 int / float / str, arithmetic, precedence, type conversion, f-strings Ch. 2 Dr. I.S. Ahmad
3 Making Decisions Slides Lab Session 1, Session 2 Booleans, comparison & logical operators, if / elif / else Ch. 3 (selection) Dr. I.S. Ahmad
4 Repetition with Loops Slides Lab Session 1, Session 2 while, for, range, accumulator & sentinel patterns Ch. 3 (loops) Dr S.H.Muhammad & Dr. I.S. Ahmad
5 Loop Patterns & Nested Logic Slides Lab Session 1, Session 2 Nested loops, combining loops with conditions, input validation, debugging Ch. 3 (cont.) Dr. I.S. Ahmad
6 Strings & Lists Slides Lab Session 1, Session 2 Indexing, slicing, string methods, list operations, iteration Ch. 4, §5.1 Dr. I.S. Ahmad
7 Dictionaries & First Functions TBA Lab Session 2 Key/value lookup, dict methods, defining functions, parameters, return Ch. 5, §6.1 Lukman A. Jibril Dr. I.S. Ahmad
8 Functions in Depth & Capstone TBA TBA Lab Scope, multiple parameters, decomposition, end-to-end capstone program Ch. 6 Dr S.H.Muhammad

Slide decks, lab notebooks, and session recordings will be linked here as each session is delivered.


Lab Notebooks

Every lab follows the same structure to make pacing predictable:

Section Duration Description
Part A — Guided ~15 min Pre-filled code — run cells and observe outputs carefully
Part B — Fill in the Blank ~25 min Skeleton code with placeholders to complete
Part C — Challenge ~15 min Open-ended extension problems for fast finishers

All notebooks will run on Google Colab — no local setup required. Colab links for each lab will be added here as they are published.

Lab Topic
01 First Programs & Variables
02 Numbers, Strings & Expressions
03 Branching: if / elif / else
04 Loops: while & for
05 Nested Loops & Validation
06 Strings & Lists
07 Dictionaries & Functions
08 Functions & Capstone Project

Getting Started

Option 1: Google Colab (recommended for beginners)

No setup needed. Once lab notebooks are published, open them directly in your browser via Colab — nothing to install.

Option 2: Local Setup (VS Code)

This cohort runs entirely in VS Code, using its built-in Jupyter Notebook support rather than the browser-based jupyter notebook server. If you haven't set up VS Code, Git, and uv yet, work through Getting Started with VS Code for Data Science first — it covers installing everything below in detail, for Windows, macOS, and Linux.

# Clone the repository (see §14.2 of the getting-started guide)
git clone https://github.com/arewadataScience/ArewaDS-Introduction-to-Python-2026.git
cd ArewaDS-Introduction-to-Python-2026
code .

# Create the project's virtual environment and install Jupyter support with uv
uv sync

Then, inside VS Code:

  1. Open a lab notebook from the labs/ folder in the Explorer panel — it opens directly in VS Code's built-in notebook editor, no browser tab required.
  2. Click Select Kernel (top right of the notebook) → Python Environments → the entry showing .venv for this project.
  3. Run cells with Shift + Enter.

pyproject.toml pins the one dependency this repo needs:

jupyter

The course itself uses only Python's standard library — there are no data-science packages to install. Jupyter is needed only to run the lab notebooks locally; if you'd rather avoid local setup entirely, use Option 1 (Colab) instead.


What's Next — From Python to Machine Learning

This course is Stage 1 of the Arewa DataScience pathway. Once you can comfortably write loops, functions, and small programs from scratch, you're ready for what comes next:

Stage Course You'll learn
1 Fundamentals of Python (this course) Variables, loops, strings, collections, functions
2 Introduction to Machine Learning scikit-learn, model building, evaluation, the full ML landscape

The ML course assumes you can read and write Python at the level this course produces — finishing the capstone in Session 8 is your green light to enroll.


Recommended Resources

Primary Textbook

  • Fundamentals of Python: First Programs (3rd ed.) — Kenneth A. Lambert (Cengage Learning). Every session in this course maps to a chapter of this book.

Supplementary Reading (free online)

Practice


Contributing

Found a typo in a notebook? Have a clearer challenge problem? Pull requests are welcome.

  1. Fork the repository
  2. Create a feature branch (git checkout -b fix/lab-03-typo)
  3. Commit your changes
  4. Open a pull request

License

This course material is released under the MIT License. The slides and exercises are based on content from Fundamentals of Python: First Programs by Kenneth A. Lambert (Cengage Learning) — please respect the original work's copyright when sharing.


Arewa DataScience Academy

About

No description, website, or topics provided.

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages