The laboratory
Write code, run tests, measure. Levels A–D run in your browser; from level E in an isolated container. Sign in to run.
Labs (20)
Lab: lists, loops and dictionaries
Cin the browser · about 40 min · teaches Python — lists, loops and dictionaries
Lab: mean, median and standard deviation by hand
Cin the browser · about 40 min · teaches Statistics — mean, median and spread
Lab: simulate dice and compare with the theory
Cin the browser · about 40 min · teaches Probability — the basics
Lab: the best line with least squares
Cin the browser · about 40 min · teaches Linear regression: fitting a straight line to data
Lab: your first Python functions
Cin the browser · about 30 min · teaches Python — the basics
Lab: a neural network in pure NumPy — forward, backprop, gradient check
Da sandbox · about 75 min · teaches Backpropagation
Lab: dot product, norm and cosine similarity
Din the browser · about 40 min · teaches Vectors
Lab: gradient descent from scratch
Din the browser · about 50 min · teaches Gradient descent
Lab: k-means from scratch
Da sandbox · about 45 min · teaches Clustering: k-means and hierarchical
Lab: k-nearest neighbours from scratch
Da sandbox · about 45 min · teaches k-nearest neighbours (kNN)
Lab: matrix multiplication and one layer of a neural network
Din the browser · about 45 min · teaches Matrices and matrix multiplication
Lab: scaled dot-product attention with a causal mask
Da sandbox · about 60 min · teaches Attention
Lab: semantic search with embeddings
Da sandbox · about 45 min · teaches Embeddings — words as vectors
Lab: tensors, autograd and your first training loop
Da sandbox · about 50 min · teaches PyTorch — tensors and autograd
Lab: train a digit classifier in PyTorch
Da sandbox · about 60 min · teaches Train a neural network in PyTorch
Lab: an agent loop with tools, a budget and a trace
Ea sandbox · about 60 min · teaches The ReAct loop: think, act, observe
Lab: BM25 and a minimal RAG pipeline
Ea sandbox · about 60 min · teaches BM25 and keyword search
Lab: build an eval harness
Ea sandbox · about 60 min · teaches Build an eval harness
Lab: byte-pair encoding from scratch
Ea sandbox · about 60 min · teaches Byte-pair encoding
Lab: LoRA on a small network — train only the adapters
Fa sandbox · about 75 min · teaches LoRA — Low-Rank Adaptation
Projects (5)
Project 1: Teach a computer to recognise patterns
Cin the browser · about 90 min · teaches Project: train an image classifier in the browser
Project 2: Build a neural network from scratch
Da sandbox · about 150 min · teaches Project D: a classifier of your own in PyTorch
Project 3: Dissect a language model
Ea sandbox · about 180 min · teaches Build a small GPT from scratch
Project 4: Fine-tune a model with LoRA
Fa sandbox · about 180 min · teaches Project F: fine-tune and evaluate a language model
Project 5: Build a memory system for an agent
Fa sandbox · about 180 min · teaches Semantic memory and consolidation
Frontier Lab (4)
Level G: reproduce a paper, run ablations, build a benchmark and find circuits in a model. Discuss at research level with the tutor (the «Research» depth on every node), submit to public benchmarks and research challenges, and get peer review on your project. The path there: Frontier Lab — an independent research project.
Lab: ablation — which component does the work?
lab · about 90 min · teaches Ablation studies
Lab: build and validate a benchmark
lab · about 90 min · teaches Build your own benchmark
Lab: find the circuit — activation patching and ablation in a small transformer
lab · about 120 min · teaches Circuits, ablation and activation patching
Project 6: Reproduce a paper — Dropout (Srivastava et al. 2014)
project · about 240 min · teaches Project G: an independent research project