Maintainable beats clever
The cleverest solution is rarely the right one. Software that's easy to understand and change beats software that's impressive and brittle.
There's a temptation, especially under time pressure, to reach for the clever solution — the dense one-liner, the elegant abstraction that handles ten cases at once. Clever feels like craft. But clever is often the enemy of maintainable, and maintainable is what keeps a system alive.
Code is read more than written
Every line you write will be read many times — by teammates, by future you, by whoever inherits it. Cleverness optimizes for the moment of writing. Clarity optimizes for every moment after. The second is a far better trade.
What maintainable looks like
- Obvious over impressive: the next person understands it without a guide.
- Boring patterns repeated, instead of novel ones invented.
- Clear names and small pieces over dense, all-in-one logic.
- Comments that explain why, where the why isn't obvious.
This matters more because we stay on after launch. We're the ones maintaining what we build, which is a strong incentive to build things that are pleasant to maintain.
Write code for the person who debugs it at 2am. That person is usually you.