Curriculum
Learning tracks
A connected path from first principles to modern language-model systems.
Orientation & Foundations
Build an accurate mental model of language models and the mathematics needed for everything that follows.
- 01.01What is a language model, really?→
- 01.02A 60-second history: n-grams to the GPT-5 era→
- 01.03Probability you actually need→
- 01.04Vectors, matrices, and dot products→
- 01.05Matrix multiplication as transformation→
- 01.06Derivatives and gradients, geometrically→
- 01.07Python, NumPy, and PyTorch in 20 minutes→
- 01.08How to read an ML paper→
From Text to Tensors
See how text becomes tokens, vectors, and numerical structures a neural network can process.
- 02.01Why computers can't read→
- 02.02Tokenization I: characters, words, and subwords→
- 02.03Tokenization II: BPE, step by step→
- 02.04Tokenization III: SentencePiece, byte-level, and why token counts bite→
- 02.05Embeddings: meaning as geometry→
- 02.06word2vec, GloVe, and the analogy trick→
- 02.07Entropy, perplexity, and what 'good' means→
Neural Network Fundamentals
Learn how neural networks represent functions, measure error, propagate gradients, and improve through optimization.
- 03.01The perceptron→
- 03.02Multilayer perceptrons and non-linearity→
- 03.03Activation functions: ReLU, GELU, and SwiGLU→
- 03.04Loss functions and cross-entropy→
- 03.05Backpropagation, visualized→
- 03.06Gradient descent and the loss landscape→
- 03.07Optimizers: SGD to Momentum to Adam to AdamW→
- 03.08Initialization, normalization, and residuals→
- 03.09Overfitting, regularization, and the bitter lesson→
Sequence Models
Follow the path from recurrent state to encoder-decoder models and attention, the immediate ancestors of the Transformer.
The Transformer
Assemble the architecture behind modern LLMs, beginning with self-attention and its query, key, and value operations.
- 05.01"Attention Is All You Need" in context→
- 05.02Self-attention from first principles: Q, K, V→
- 05.03Scaled dot-product attention & the √d_k→
- 05.04Causal masking & why order matters→
- 05.05Multi-head attention→
- 05.06Positional encoding I: sinusoidal & learned→
- 05.07Positional encoding II: RoPE→
- 05.08Positional encoding III: ALiBi & relative bias→
- 05.09The feed-forward block & where knowledge lives→
- 05.10Residuals, pre-norm vs post-norm→
- 05.11The full block, assembled→
- 05.12Encoder-only, decoder-only, encoder–decoder→
- 05.13Build a GPT from scratch, annotated→
- 05.14Reading real weights: what a trained model looks like→
Pretraining at Scale
Design the objectives, data, optimization, parallelism, and cost model behind a serious language-model pretraining run.
- 06.01Objectives: causal LM, MLM, span corruption, FIM→
- 06.02Data: sourcing, filtering, dedup, decontamination→
- 06.03Training your own tokenizer→
- 06.04Scaling laws I: Kaplan→
- 06.05Scaling laws II: Chinchilla & compute-optimality→
- 06.06Scaling laws III: inference-aware & over-training→
- 06.07Data parallelism, ZeRO & FSDP→
- 06.08Tensor, pipeline & sequence parallelism→
- 06.09Mixed precision: fp16, bf16, fp8→
- 06.10Gradient checkpointing & memory maths→
- 06.11Learning-rate schedules & warmup→
- 06.12When training goes wrong: spikes, divergence, NaNs→
- 06.13What a real pretraining run costs→
Post-training & Alignment
Turn pretrained predictors into useful assistants through instruction tuning, preference learning, reinforcement learning, and distillation.
- 07.01Why base models aren't assistants→
- 07.02Supervised fine-tuning & instruction data→
- 07.03LoRA, QLoRA & PEFT→
- 07.04Reward models & human preference data→
- 07.05RLHF with PPO→
- 07.06DPO: skipping the reward model→
- 07.07ORPO, KTO, SimPO & the alignment zoo→
- 07.08GRPO & RL on verifiable rewards→
- 07.09Reasoning models: test-time compute & long CoT→
- 07.10Constitutional AI & RLAIF→
- 07.11Distillation: making small models punch up→
Inference & Efficiency
Understand how trained models generate text and how decoding choices trade off diversity, coherence, latency, and cost.
- 08.01What actually happens when you hit send→
- 08.02The KV cache→
- 08.03Prefill vs decode: two different machines→
- 08.04Sampling: temperature, top-k, top-p, and min-p→
- 08.05Beam search, speculative decoding & Medusa→
- 08.06MQA, GQA & MLA→
- 08.07FlashAttention & IO-awareness→
- 08.08PagedAttention & continuous batching→
- 08.09Quantization I: int8, int4, the basics→
- 08.10Quantization II: GPTQ, AWQ, GGUF, QAT→
- 08.11Serving stacks: vLLM, SGLang, TensorRT-LLM→
- 08.12Running models locally→