keyboard-shortcut
d

Simple Is Hard

2 min read

Any fool can make something complicated. It takes a genius to make it simple.

People love making things more complicated than they need to be. We even have an acronym for the reminder: KISS — keep it simple, stupid. A lot of advice about simplicity involves insulting someone's intelligence, which I don't love, but the point is sound.

Software gets especially complicated when we expose too much power to its users. Letting people configure every option and tweak every step of the journey can feel generous. Usually, it just turns our implementation details into someone else's problem — and creates a much larger surface area to support.

I prefer slim interfaces and fat implementations: a small, opinionated API backed by code that does the hard work. Sane defaults mean most users never need to know about the machinery underneath, and we only need to maintain the basic interfaces that matter.

Simple software isn't always simple to build. It is simple to use because someone chose what to leave out.