Read the book at: https://dmccreary.github.io/learning-python/
Beginning Python — From Blocks to Code with Monty is an interactive, AI-generated intelligent textbook for students ages 10–13 who are ready to move from block-based programming (like Scratch) into real, text-based Python.
Every lesson is built around inline, in-browser coding powered by Skulpt, a JavaScript implementation of Python. Students can read a short working program, click Run to see it execute instantly (no install, no account), and then modify it — a color, a number, a direction — and run it again. Skulpt's built-in turtle graphics give immediate visual feedback, so students see shapes, spirals, and patterns appear the moment their code runs. Before most labs, a friendly mascot named Monty asks students to predict what the code will do before they click Run — a habit that builds real reasoning skills, not just copy-and-run familiarity.
The book covers 38 chapters spanning 450 concepts, validated against a full concept-dependency learning graph so that every idea builds on what came before it. Content, quizzes, glossary entries, and MicroSims are generated and curated with Claude AI skills, making this a Level 2+ intelligent textbook with interactive, hands-on elements throughout.
| Metric | Count |
|---|---|
| Concepts in Learning Graph | 450 |
| Chapters | 38 |
| MicroSims | 31 |
| Glossary Terms | 338 |
| FAQ Questions | 83 |
| Quiz Questions | 380 |
| References | 380 |
| Total Words | 260,425 |
| Equivalent Pages | 1,057 |
git clone https://github.com/dmccreary/learning-python.git
cd learning-pythonThis project uses MkDocs with the Material theme:
pip install mkdocs
pip install mkdocs-materialServe locally for development (with live reload):
mkdocs serveThen open your browser to http://localhost:8000.
Build the static site:
mkdocs buildmkdocs gh-deployThis builds the site and pushes it to the gh-pages branch.
- Use the left sidebar to browse chapters, or the search icon to search all content.
- Every chapter includes one or more inline Skulpt labs — read the code, predict what it will do, click Run, then modify it and run it again.
- Each chapter ends with a quiz and a list of annotated references.
- Explore the Turtle Graphics Gallery and MicroSims for standalone interactive examples.
learning-python/
├── docs/ # MkDocs documentation source
│ ├── chapters/ # 38 chapters, each with content, quiz, references
│ │ ├── 01-welcome-to-python/
│ │ │ ├── index.md # Chapter content with Skulpt labs
│ │ │ ├── quiz.md # Chapter quiz
│ │ │ └── references.md # Annotated references
│ │ └── ...
│ ├── sims/ # Interactive p5.js and Skulpt MicroSims
│ ├── turtle-graphics-gallery/ # Turtle graphics example gallery
│ ├── learning-graph/ # Concept dependency graph and book metrics
│ ├── js/ # Skulpt/CodeMirror lab runtime
│ ├── glossary.md # ISO 11179-compliant term definitions
│ ├── faq.md # Frequently asked questions
│ └── license.md # License details
├── mkdocs.yml # MkDocs configuration
└── README.md # This file
Found a bug, typo, or have a suggestion for improvement? Please report it:
When reporting issues, please include a description of the problem, steps to reproduce (for bugs), and screenshots if applicable.
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
You are free to:
- Share — copy and redistribute the material
- Adapt — remix, transform, and build upon the material
Under the following terms:
- Attribution — Give appropriate credit with a link to the original
- NonCommercial — No commercial use without permission
- ShareAlike — Distribute contributions under the same license
See docs/license.md for full details, including commercial licensing inquiries.
This project is built on the shoulders of giants in the open source community:
- MkDocs — Static site generator optimized for project documentation
- Material for MkDocs — Beautiful, responsive theme
- Skulpt — In-browser Python implementation powering every coding lab
- p5.js — Creative coding library from NYU ITP, used in several MicroSims
- Claude AI by Anthropic — AI-assisted content generation
- GitHub Pages — Free hosting for open source projects
Dan McCreary
- LinkedIn: linkedin.com/in/danmccreary
- GitHub: @dmccreary
Questions, suggestions, or collaboration opportunities? Feel free to connect on LinkedIn or open an issue on GitHub.