← all notes
Principle2 min

YAGNI — you aren't gonna need it

why I refuse to build the feature you'll need next month.

Don't build the feature you imagine you'll need next month. You're not a prophet, and the imagined future is usually wrong anyway — different users, different constraints, different priorities.

Every speculative feature is a tax you pay forever: it ships with bugs, gets in the way of the feature you actually need, and confuses the person reading the code later.

Build what's needed, keep it simple, and let the future feature earn its place. When it does arrive, you'll build it better — because now you know how it's really used.you're not a prophet

the point is simple — the details are not.
further reading3 references