"I read the code" – a three-tier framework for when to actually read code
- https://www.youtube.com/watch?v=k13q6ecZLrw
- Original title: The most controversial phrase in coding
Prime reacts to Mitchell Hashimoto's viral "I read the code" tweet (800k views) about measuring Fable's success. His thesis: the internet's "never read the code" vs "always read the code" debate is dumb — the honest answer is a spectrum, and he lays out three tiers by how much you should care about the code depending on the project.
Why the debate is broken
- Internet noise: lots of bad engineers giving confident advice, people always selling something, and the tired "AI is just a compiler" comparison. Prime: stop comparing an LLM to a compiler — it's a bad analogy, always has been.
Tier 1 – Don't read the code
- MVP / prototype exploration where you throw the code away. The old "headphones + Lord of the Rings soundtrack, program 16 hours to build a throwaway prototype" ritual, now done by an agent.
- Workflow he's toying with: dump ideas into Linear tickets via MCP, tell an agent to loop and build them all, come back in 12 hours, test whether the idea feels good. Cheap models fine; code gets rm -rf'd. Also fits internal tools where perceived value beats quality.
Tier 2 – Read every single line
- Things you care about deeply. His example: a video game (Mordoria) he's hand-crafting — every highlight, drag, shrink, upgrade calculation. To control exactly how it feels, he must be engaged at the line level. This realm is shrinking, but it still exists and still makes plenty of money.
Tier 3 – The interesting middle (the future default)
- Design at the interface / function / type level; care less about function contents. Example: a headless runner that lets an AI (Composer 25 Fast) play his game across 10 parallel instances.
- His method: specify exact API shapes (client/server, start/end/move by game ID), let the agent build the guts, but hand-write the integration logic — the run loop, the mode dispatch, the ~50–100 lines that are "just mine." The other 1–2k lines of setup are out of his hands. This is "building a harness."
- Requires knowing how to build things (so you know the right interfaces) and being able to iteratively drive an agent. Lets you flex knowledge where it matters and move fast everywhere else.
Takeaway
- Reject absolutes. Not all software is the same — the code you want NASA to write should look nothing like a random web CRUD app. Match your code-reading effort to how much the project deserves it, and have some fun: even skeptics should vibe-code something small once.