The Archive

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

BeatWhat it gives you
The 10-second versionA plain-language summary of the whole idea.
Why this existedThe problem, the people, and a short history of why it mattered then.
Inside the inventor's headThe messy human process — first attempts, failures, the pivot.
The final approachThe complete working algorithm: diagrams, invariants, code, complexity.
Where you meet it todayModern 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 code is 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.

On this page