A comprehensive beginner-to-intermediate Python curriculum for Class 5 learners (ages 10-11) transitioning from Scratch to Python.
Complete 24-week progression:
- ✅ Weeks 1-6: Python Foundations (text-based games)
- ✅ Weeks 7-12: Turtle Graphics (visual games & animations)
- ✅ Weeks 13-18: Pygame Zero (2D game development)
- ✅ Weeks 19-24: micro:bit (physical computing & robotics)
For each week:
- Detailed teacher notes with lesson flows (60-75 min sessions)
- Student task sheets with guided and challenge activities
- Ready-to-run, well-commented Python code
- Common errors to demonstrate and debug
Comprehensive documentation:
- Setup guides (Thonny, Pygame Zero, micro:bit)
- Python cheatsheet (all concepts: lists, loops, functions, error handling, file I/O)
- Troubleshooting guide for all platforms
- Teacher FAQ
- 4 milestone rubrics (weeks 6, 12, 18, 24)
- Assessment templates
- Parent communication templates
- Portfolio guidelines
- Accessibility guide
- Install Thonny: Download from https://thonny.org/
- Open a program: Navigate to
week01_hello_python/week01_story_printer.py - Run it: Press F5 (or click Run button)
- Success! You're ready to teach!
👉 See docs/QUICKSTART.md for detailed setup.
One-click access to every lesson:
| Week | Topic | Teacher Notes | Student Tasks | Code | Status |
|---|---|---|---|---|---|
| 01 | Hello Python | 📖 | 📝 | 💻 | ✅ Complete |
| 02 | Variables | 📖 | 📝 | 💻 | ✅ Complete |
| 03 | Input & Guess | 📖 | 📝 | 💻 | ✅ Complete |
| 04 | Decisions | 📖 | 📝 | 💻 | ✅ Complete |
| 05 | Loops | 📖 | 📝 | 💻 | ✅ Complete |
| 06 | Functions | 📖 | 📝 | 💻 | ✅ Complete |
📊 Milestone: Week 6 Rubric
| Week | Topic | Teacher Notes | Student Tasks | Code | Status |
|---|---|---|---|---|---|
| 07 | Turtle Basics | 📖 | 📝 | 💻 | ✅ Complete |
| 08 | Loops & Patterns | 📖 | 📝 | 💻 | ✅ Complete |
| 09 | Keyboard Events | 📖 | 📝 | 💻 | ✅ Complete |
| 10 | Collision | 📖 | 📝 | 💻 | ✅ Complete |
| 11 | Timers | 📖 | 📝 | 💻 | ✅ Complete |
| 12 | Capstone | 📖 | 📝 | 💻 | ✅ Complete |
📊 Milestone: Week 12 Rubric
| Week | Topic | Teacher Notes | Student Tasks | Code | Status |
|---|---|---|---|---|---|
| 13 | Pygame Setup | 📖 | 📝 | 💻 | ✅ Complete |
| 14 | Movement | 📖 | 📝 | 💻 | ✅ Complete |
| 15 | Collisions | 📖 | 📝 | 💻 | ✅ Complete |
| 16 | Levels | 📖 | 📝 | 💻 | ✅ Complete |
| 17 | Difficulty | 📖 | 📝 | 💻 | ✅ Complete |
| 18 | Game Jam | 📖 | 📝 | 💻 | ✅ Complete |
📊 Milestone: Week 18 Rubric
| Week | Topic | Teacher Notes | Student Tasks | Code | Status |
|---|---|---|---|---|---|
| 19 | Setup & Buttons | 📖 | 📝 | 💻 | ✅ Complete |
| 20 | Sensors | 📖 | 📝 | 💻 | ✅ Complete |
| 21 | Music & LED | 📖 | 📝 | 💻 | ✅ Complete |
| 22 | Pins | 📖 | 📝 | 💻 | ✅ Complete |
| 23 | Radio | 📖 | 📝 | 💻 | ✅ Complete |
| 24 | Final Capstone | 📖 | 📝 | 💻 | ✅ Complete |
📊 Milestone: Week 24 Rubric
Legend: 📖 Lesson Plan | 📝 Student Activities | 💻 Code | ✅ Ready to Teach
Goal: Master core Python concepts through text-based games
| Week | Topic | Project | Key Concepts |
|---|---|---|---|
| 1 | Hello Python | Story Printer | print(), comments, running code |
| 2 | Variables | Scoreboard | variables, assignment, math |
| 3 | Input & Validation | Guess the Number | input(), int(), if/else |
| 4 | Decisions | Choose Your Path | if/elif/else, conditions |
| 5 | Loops | Training Drills | for loops, range(), rounds |
| 6 | Functions | Game Pack Menu | def, parameters, return, refactoring |
Milestone: Week 6 rubric assesses understanding of all foundations.
Goal: Create visual games with graphics and events
| Week | Topic | Project | Key Concepts |
|---|---|---|---|
| 7 | Turtle Basics | Art Gallery | forward(), goto(), penup/pendown |
| 8 | Loops & Patterns | Pattern Maker | nested loops, while loops, angles |
| 9 | Keyboard Events | Move the Hero | event handlers, keyboard input |
| 10 | Collision Detection | Coin Collector | distance(), lists, random |
| 11 | Timers | Timed Collector | time module, countdown, game over |
| 12 | Capstone | Turtle Catcher | mouse events, ontimer(), complete game |
Milestone: Week 12 rubric assesses Turtle graphics mastery.
Goal: Build 2D games with professional game framework
| Week | Topic | Project | Key Concepts |
|---|---|---|---|
| 13 | Pygame Zero Setup | Moving Dot | update(), draw(), game loop |
| 14 | Keyboard Control | Explorer | keyboard state, smooth movement |
| 15 | Collisions & Score | Catch the Stars | collision detection, error handling |
| 16 | Levels | Two-Level Game | state management, progression |
| 17 | Multiple Objects | Dodger | lists for enemies, difficulty scaling |
| 18 | Game Jam | Complete Game | start screen, game over, polish |
Milestone: Week 18 rubric assesses game development skills.
Goal: Program physical devices with sensors and outputs
| Week | Topic | Project | Key Concepts |
|---|---|---|---|
| 19 | micro:bit Setup | Mood Badge | buttons, LED display, MicroPython |
| 20 | Sensors | Shake Dice | accelerometer, gestures, random |
| 21 | Sound & Animation | Alarm System | music, LED patterns, loops |
| 22 | Pins & Components | Traffic Light | pin control, external hardware, file I/O |
| 23 | Radio Communication | Walkie-Talkie | radio, string operations, messaging |
| 24 | Final Capstone | Student Choice | integrate all concepts, showcase |
Milestone: Week 24 rubric assesses complete curriculum mastery.
- Warm-up (5-10 min): Review or debug small challenge
- New Concept (10-15 min): Teach one concept with examples
- Guided Build (20-25 min): Code together step-by-step
- Independent Challenge (15-20 min): Students complete tasks
- Wrap-up (5 min): Students explain what they learned
- Small edits + run often: Immediate feedback loop
- Celebrate debugging: Errors are learning opportunities
- Game language: Score, lives, levels keep it engaging
- Scratch connections: Bridge from visual to text coding
- Progressive complexity: Each week builds on previous
PythonQuest/
├── README.md (this file)
├── LICENSE (MIT)
├── CONTRIBUTING.md
├── CHANGELOG.md
├── docs/
│ ├── QUICKSTART.md (5-minute setup)
│ ├── SETUP.md (detailed installation)
│ ├── pygame_zero_setup.md
│ ├── microbit_setup.md
│ ├── python_basics_cheatsheet.md (complete reference)
│ ├── debugging_cheatsheet.md
│ ├── TROUBLESHOOTING.md
│ ├── FAQ.md (teacher questions)
│ ├── teacher_guide.md
│ ├── 24_week_plan.md
│ ├── week6_milestone_rubric.md
│ ├── week12_milestone_rubric.md
│ ├── week18_milestone_rubric.md
│ ├── week24_milestone_rubric.md
│ ├── assessment_templates.md
│ ├── parent_communication_template.md
│ ├── portfolio_guidelines.md
│ ├── ACCESSIBILITY.md
│ └── scratch_to_python_map.md
├── week01_hello_python/
│ ├── teacher_notes.md (detailed lesson plan)
│ ├── student_tasks.md (guided activities)
│ └── week01_story_printer.py (working code)
├── week02_variables/
│ └── ... (same structure)
... (weeks 3-24, same structure)
- Python 3.10, 3.11, or 3.12 (recommended: 3.11)
- Tested on: Windows 10/11, macOS 12+, Ubuntu 20.04+
- Weeks 1-12: Thonny IDE (https://thonny.org/) - bundles Python, no setup needed
- Weeks 13-18: Pygame Zero - install via
pip install -r requirements.txt - Weeks 19-24: Mu Editor (https://codewith.mu/) or online editor
- Weeks 1-18: Any computer (Windows/Mac/Linux)
- Weeks 19-24: BBC micro:bit v1 or v2 ($15-25, optional - simulator available)
Option 1: Thonny (Recommended - All-in-One)
# Download from https://thonny.org/
# Includes Python 3.10+ built-in
# Week 13-18: Tools → Manage Packages → install pgzeroOption 2: System Python
# Verify version
python3 --version # Should be 3.10+
# Install dependencies for weeks 13-18
pip3 install -r requirements.txtOffline Mode: See Offline Setup Guide
- macOS: May need to allow Thonny in Security & Privacy settings
- Windows: Turtle graphics may flicker on some systems (normal, cosmetic only)
- Linux: May need
python3-tkpackage:sudo apt install python3-tk - All: micro:bit requires specific USB cable (some are charge-only)
👉 Full troubleshooting: TROUBLESHOOTING.md
By the end of 24 weeks, students will be able to:
- ✅ Write Python programs with proper syntax and structure
- ✅ Use variables, loops, conditionals, and functions confidently
- ✅ Work with lists and manage multiple objects
- ✅ Handle errors gracefully with try/except
- ✅ Read from and write to files
- ✅ Create visual games with graphics libraries
- ✅ Implement game mechanics (collision, scoring, levels)
- ✅ Program physical devices with sensors and outputs
- ✅ Debug code independently
- ✅ Explain their code to others
- ✅ Design and complete original projects
- Week 6: Python foundations (variables, loops, functions)
- Week 12: Turtle graphics & event-driven programming
- Week 18: Game development & state management
- Week 24: Complete curriculum & physical computing
- Weekly quick checks (2-3 questions per week)
- Code reviews during wrap-up
- Portfolio of completed projects
- Student explanations of concepts
Students build a portfolio with 4 major projects:
- Game Pack (Week 6)
- Turtle game (Week 12)
- Pygame Zero game (Week 18)
- micro:bit project (Week 24)
- All graphics use shapes and text (no image files needed)
- Simplifies setup and distribution
- Focus on code, not asset management
- Diverse character names and scenarios
- Accessibility guide included
- Multiple learning pathways
- Differentiation strategies in teacher notes
- Explicit connections to Scratch concepts
- Visual-to-text coding transition
- Familiar game-based approach
- While loops (Week 8)
- Lists and list operations (Weeks 10, 17)
- Error handling with try/except (Week 15)
- File I/O (Week 22)
- String operations (Week 23)
- First time: 30-60 min per week to review materials
- Subsequent times: 10-20 min to refresh
- Works with 1-30 students
- Pair programming recommended
- Differentiation built into tasks
- Extension activities for advanced students
- Detailed lesson plans with timing
- Common errors to demonstrate
- Success criteria for each week
- Troubleshooting guide
- FAQ for common questions
- All software is free and safe
- No account creation required (for Thonny)
- Can be completed at home with parent guidance
- Parent communication templates provided
- Progress updates at weeks 6, 12, 18, 24
We welcome contributions! See CONTRIBUTING.md for:
- How to report issues
- Suggesting improvements
- Submitting code fixes
- Sharing teaching experiences
This curriculum is released under the MIT License. See LICENSE for details.
TL;DR: Free to use, modify, and distribute. Attribution appreciated but not required.
- Setup issues: See
docs/TROUBLESHOOTING.md - Teaching questions: See
docs/FAQ.md - Technical problems: Check error messages in troubleshooting guide
- General questions: Open an issue on the repository
✅ 24 Complete Weeks - Every week has teacher notes, student tasks, and tested code
✅ 4 Milestone Rubrics - Assessment for weeks 6, 12, 18, 24
✅ 15+ Documentation Files - Setup, troubleshooting, FAQs, templates
✅ Offline Support - Full classroom kit instructions for no-internet labs
✅ CI/CD Pipeline - Automated quality checks on every commit
✅ Tested on Python 3.10, 3.11, 3.12 - Verified across platforms
Transparency Pledge: See COMPLETENESS.md for detailed status of every component.
- Syntax Checked: All Python files compile without errors
- Structure Validated: All 24 weeks have required files
- Documentation Complete: All referenced files exist
- Tested: Code runs on Windows, macOS, Linux
See CHANGELOG.md for version history and updates.
Current Version: 1.1.0 (Complete 24-week curriculum with professional enhancements)
Designed for Class 5 learners (ages 10-11) with Scratch experience, this curriculum provides a complete pathway from beginner to intermediate Python programming.
Ready to start? → See docs/QUICKSTART.md
Questions? → See docs/FAQ.md
Let's build amazing things with Python! 🚀