A proper reference, written like a textbook and ordered exactly like the course. Every concept the ladder teaches — explained in plain English, with worked examples, the mistakes to avoid, and why it matters. Read it cover to cover, or jump to what you need.
The smallest possible working program, and the four ideas under it: printing, storing values, building text from data, and turning text into numbers.
Code that makes decisions and repeats itself — reading errors, branching with if/elif/else, combining conditions, and the two loop shapes (while and for).
The tools that turn scripts into real programs: functions and scope to organise code, and the core data structures — lists, dicts, tuples and sets — to hold the data.
Reaching past your own code: the standard library, reading and writing files and JSON, calling APIs, keeping secrets in env vars, handling errors, and the two foundations of larger programs — objects (classes) and tests.
The building blocks of a machine-learning pipeline — validating records, engineering features, classifying with rules, measuring with the right metrics, aggregating, and wiring it all into a hand-rolled train→predict→evaluate loop.
The advanced pure-Python patterns that separate solid code from senior code — lazy generators, decorators, context managers, asyncio, plugin registries, the LRU cache, and state machines.
LLM-from-code fundamentals in pure Python: prompting, conversation memory, parsing responses, tool-call dispatch, and JSON guardrails.
The production-ops patterns that make a script survive the real world: retry with backoff, idempotent re-runs, config-driven dispatch, rate-limiting and batching, dead-letter handling, dependency-ordered pipelines, and deterministic scheduling.
Building real AI features in plain Python — few-shot prompting, validated function-calling, embeddings and RAG, an agent loop with guardrails, and evals to prove it works.
The systems view of an AI product: orchestrating many agents, designing a vector store, modelling pipelines as DAGs, scaling under a concurrency cap, controlling token cost, tracing every step, and designing for the failures that will happen.
The durable skill of reviewing code you didn't write — spotting bugs and edge cases, judging structure, catching security holes, and giving feedback that's specific, kind, and ranked by severity.
Reviewing and verifying AI-generated code — catching confident-but-wrong logic, hallucinated APIs, insecure patterns and missing tests, then making the accept/reject/revise call with evidence rather than trust.