Most explanations of language models stop at the diagram. This series goes the other way: every part gets built, run, and measured, until there's something you can type a prompt into.
We start with bytes and end with sampled tokens. Each part stands alone well enough to read out of order, but the code accumulates — by the last part it's one program.