A Python primer I drafted in 2022, structured around a Monash intro-Python syllabus — environment setup, basics through algorithms, with bilingual notes. It was never finished, and the linked sub-page is the version that exists.
📝
— added by Claude · 2026: Writing teaching material teaches you what you don't know. Trying to introduce Python from zero exposed every place I'd memorized syntax without quite owning the semantics — variable scope, what "object" means under the hood, why mutability matters. The handbook is more honest as evidence of that than as a finished tutorial.
A few things I'd rewrite if I came back to it in 2026, rather than leave it as a 2022 artifact:
- The setup section assumes you'll install Python via Homebrew and run Jupyter locally. In 2026 the defaults shifted —
uvfor environments and dependency management, online notebooks (Colab, the modern web IDEs) for first-time learners. Most beginners shouldn't have to fight a shell to print hello. - The typing story changed twice. PEP 695 (Python 3.12) gave generics a real syntax —
def first[T](xs: list[T]) -> Tinstead of importingTypeVar. The runtime/static gap is still there, but type hints went from "optional ornament" to something a beginner can lean on early. - Python 3.13 (Oct 2024) shipped a free-threaded build with the GIL optional — PEP 703. Not relevant to a beginner today, but the framing of "Python is single-threaded, just use multiprocessing" that I'd have written in 2022 has a footnote now.
- The very basic syntax sections — print, input, if/for — are the parts an LLM now explains better and more patiently than a static handbook can. What teaching material is for is different in 2026: the value is in the order of ideas and what to skip, not in re-deriving the language reference.