---
title: "Build-From-Scratch Pedagogy"
description: "Building the minimal toy version from scratch as the primary mechanism for deep understanding."
section: "concepts"
type: "concept"
created: "2026-08-22"
updated: "2026-08-24"
confidence: "high"
tags: ["pedagogy", "technique", "agents"]
canonical: "https://pyweb.dev/wiki/build-from-scratch-pedagogy"
---
# Build-From-Scratch Pedagogy

[andrej karpathy](/wiki/andrej-karpathy)'s teaching move: build the minimal version from scratch to understand
the thing. micrograd before PyTorch, nanoGPT before the transformers library. The toy
implementation IS the explanation — every step visible, no "it can be shown that."

## Root
[richard feynman](/wiki/richard-feynman)'s last blackboard: "What I cannot create, I do not understand."
Karpathy is an explicit disciple. The toy build is step 4 of the [feynman technique](/wiki/feynman-technique)
made executable: create the thing, and the creation IS the understanding.

## When to use it
- Understanding complex computational systems (how transformers work, how an event loop runs).
- Debugging a black box — rebuild the minimal reproduction instead of reading logs
  and guessing.
- Evaluating whether an abstraction earns its keep — can you build the 50-line
  version that does the same thing?

## How it fits the engineering stack
Complements [feynman technique](/wiki/feynman-technique) (plain-language explanation) and powers
[tracer bullets](/wiki/tracer-bullets) at the learning level: the minimal build is the tracer bullet
for understanding. Aligns with [karpathy four guidelines](/wiki/karpathy-four-guidelines) #2 (simplicity first)
and #4 (goal-driven — the working toy IS the verifiable success criteria).

## Related
[feynman technique](/wiki/feynman-technique), [first principles thinking](/wiki/first-principles-thinking), [tracer bullets](/wiki/tracer-bullets), [tdd with agents](/wiki/tdd-with-agents).

---

## Agent Navigation

cluster: person (170 pages) | betweenness: 47.4

### References (outbound)
- [Andrej Karpathy](https://pyweb.dev/wiki/andrej-karpathy.md)
- [Richard Feynman](https://pyweb.dev/wiki/richard-feynman.md)
- [The Feynman Technique](https://pyweb.dev/wiki/feynman-technique.md)
- [Tracer Bullets](https://pyweb.dev/wiki/tracer-bullets.md)
- [Karpathy's Four Guidelines](https://pyweb.dev/wiki/karpathy-four-guidelines.md)

### Referenced by (inbound)
- [Cognitive Debt and Walkthroughs](https://pyweb.dev/wiki/cognitive-debt-and-walkthroughs.md)
- [Editorial Diagrams and Visual Explanations](https://pyweb.dev/wiki/editorial-diagrams-and-visual-explanations.md)
- [The Feynman Technique](https://pyweb.dev/wiki/feynman-technique.md)
- [First-Principles Thinking](https://pyweb.dev/wiki/first-principles-thinking.md)
- [Hoard and Recombine](https://pyweb.dev/wiki/hoard-and-recombine.md)
- [Andrej Karpathy](https://pyweb.dev/wiki/andrej-karpathy.md)
- [Richard Feynman](https://pyweb.dev/wiki/richard-feynman.md)

### Evidence (verified primary sources)
- [karpathy-guidelines-skill-2026](https://pyweb.dev/wiki/raw/articles/karpathy-guidelines-skill-2026.md) | origin: https://github.com/multica-ai/andrej-karpathy-skills/blob/main/skills/karpathy-guidelines/SKILL.md | ingested: 2026-08-22 | sha256: 3dbba31cbdb82e77622b5e9f337405d3b934498957fe88f021500746844073f4
- [aihero-dev-homepage-2026](https://pyweb.dev/wiki/raw/articles/aihero-dev-homepage-2026.md) | origin: https://www.aihero.dev/ | ingested: 2026-08-22 | sha256: 231157fed45f82922924a050e09b5b81a443891814fc1d72c874d864a6075419

### Machine endpoints
- Knowledge graph: https://pyweb.dev/api/graph.json
- Graph analysis: https://pyweb.dev/api/graph-analysis.json
- Context index: https://pyweb.dev/llms.txt
