An interactive, from-arithmetic-up path to understanding machine learning. Built on first principles. Designed to feel like figuring things out, not like reading a textbook.
Foundations of math
Numbers, variables, functions, rates of change — built from scratch.
Numbers & variables
Arithmetic recap, the variable abstraction, the equals sign as a question.
Functions, intuitively
Input → machine → output. Tables, plots, the shape of a function.
Rates of change
Slope, secants, secants collapsing to tangents, the derivative.
Composing functions
f(g(x)), the chain rule by feel, why composition is the whole game.
Many dimensions
Vectors, matrices, gradients — the language of more than one variable.
Programming, the minimum
Just enough Python to make the math executable.
Learning machines
A single neuron, autograd, MLPs — the core of every modern model.
A single neuron
The world's smallest learner.
Autograd, from scratch
Build micrograd. The computational graph. Backprop as bookkeeping.
MLPs & nonlinearity
Stack neurons. Activation functions. Train on a real dataset.
Sequence models & language
Bigrams, embeddings, attention, transformers, GPT.
Bigrams & makemore
The simplest language model. Counting vs learning.
Embeddings & tokens
Words become vectors. Tokenization.
Attention
Every token looks at every other token. Query / key / value.
Transformers & GPT
Stack attention + MLP blocks. nanoGPT-shaped finale.