Eight weekends, eight builds
One working program a weekend, each the inside of a tool you use every day: a shell, an interpreter, a DNS resolver, a UI framework, a ray tracer, Git, a text editor and a database.
Time frame
Eight weekends
Plans / goal-first routes through the courses
What this isThe courses go deep on one subject. A plan starts from a goal and a time frame instead, and takes the steps from across the courses that get you there.
Each plan is a short, ordered list of course steps, with what to do in each and why it's there.
One working program a weekend, each the inside of a tool you use every day: a shell, an interpreter, a DNS resolver, a UI framework, a ray tracer, Git, a text editor and a database.
Time frame
Eight weekends
Build the parts of a language model yourself, from backpropagation to the tokenizer, so you can reason about what your coding agent does and why it fails the way it does.
Time frame
Six weeks
Build the layers a web backend stands on: sockets, DNS, an in-memory store, a database's storage engine and its transactions, and nodes that keep working over a bad network.
Time frame
Three months
Learn the attacks that hit ordinary web apps by carrying them out, and the cryptography under logins and HTTPS by building it.
Time frame
A month