How to Read The Archive
The conventions, the page template, and how the code switcher works.
Every page in this archive is written to a deliberate template, so you always know what's coming and never have to guess where the useful part is.
The five beats of a page
| Beat | What it gives you |
|---|---|
| The 10-second version | A plain-language summary of the whole idea. |
| Why this existed | The problem, the people, and a short history of why it mattered then. |
| Inside the inventor's head | The messy human process — first attempts, failures, the pivot. |
| The final approach | The complete working algorithm: diagrams, invariants, code, complexity. |
| Where you meet it today | Modern real-world uses, with small snippets. |
Every page ends with a Recap — the handful of things worth keeping — and a link to what to read next.
The code switcher
Code examples come in three languages: C, JavaScript, and Rust. Use the switcher in the
page header to pick your language; the whole site remembers your choice. Each snippet also
carries a small switch: control in case you want to peek at another language for one block.
The default is JavaScript. Not because it's the "best" teaching language, but because it's the least boilerplate to read — no headers, no ownership rules getting in the way of the idea. When you want to see the machine, switch to C. When you want to see the machine done safely, switch to Rust.
Diagrams
Diagrams are rendered live and follow the light/dark theme. You'll see a few flavours:
- Timelines — when the idea entered the world.
- Flowcharts — the decision-making inside an algorithm.
- Memory / structure sketches — how the thing actually sits in RAM.
Conventions
O(...)always means the average or worst case unless stated otherwise.- Indexing starts at
0, everywhere. - Inline
codeis for names and tiny expressions; real examples get a full block. - Every page lists Prerequisites at the top. If a link looks unfamiliar, read it first — the whole archive is arranged so nothing is used before it's explained.
Ready? Start with Big-O & Asymptotic Analysis.