Writing Code Is Easy. Reading It Isn’t.
Writing code is easy. Once you have a solution in mind, and have mastered the syntax of your favorite programming language, writing code is easy. Having an LLM write entire functions for you? Even easier. But the hard part isn’t the writing. It’s the reading. It’s the time it takes to load the mental model of the system into your head. That’s where all the cost really is. A mental model is the thing you build when you read code. It’s your internal map of how the system works, where the tricky parts are, what depends on what. Without it, you’re just staring at lines of text. When I worked as a contractor, most of my jobs started the same way. I’d get a task to fix a bug or add a new feature in an application I’d never seen before. My mental model was clean and empty at first. To start filling it, I’d check the homepage to see what it looked like. I’d look at the page source: is this React? jQuery? A third-party plugin? I’d scan the codebase to see if the carousel they are requesting on
Writing code is easy. Once you have a solution in mind, and have mastered the syntax of your favorite programming language, writing code is easy. Having an LLM write entire functions for you? Even easier. But the hard part isn’t the writing. It’s the reading. It’s the time it takes to load the mental model of the system into your head. That’s where all the cost really is. A mental model is the thing you build when you read code. It’s your internal map of how the system works, where the tricky parts are, what depends on what. Without it, you’re just staring at lines of text. When I worked…
related reading
- Cognitive load is what mattersminds.md
- Here’s how I use LLMs to help me write codesimonwillison.net
- Code was our medium for thoughtwattenberger.com
- It's hard to write code for computers, but it's even harder to write code for humans · Erik Bernhardssonerikbern.com
- Write code like a human will maintain itunstack.io
- How to read a codeiamjonas.me
- Shipping at Inference-Speed | Peter Steinbergersteipete.me
- Malleable software in the age of LLMsgeoffreylitt.com
- Software Engineering in the Age of AIadiamond.me
- "Do You Still Read the Code?"zanlib.dev
- Write code that is easy to delete, not easy to... — programming is terribleprogrammingisterrible.com
- Why write code in 2026softwaredoug.com