A Few Thoughts on Simple Interfaces
Something I keep noticing: a lot of interfaces that get described as "simple" are really just interfaces with fewer visible elements. The complexity hasn't gone away — it's been pushed somewhere less visible, usually onto the person using it.
A form with one field looks simpler than a form with ten. But if that one field has to guess at nine things behind the scenes, and gets it wrong half the time, the person filling it out is doing more cognitive work than before, not less. They're just doing it silently, and often blaming themselves when it goes wrong.
Two kinds of simple
I've started separating this into two categories when I think about my own projects. There's visual simplicity — how much is on the screen — and there's structural simplicity — how few decisions and edge cases the system actually has to handle. They're related but not the same, and it's possible to trade one for the other in ways that don't feel obvious in the moment.
An interface with more visible controls but a predictable, well-understood model underneath can end up feeling calmer to use than a minimal one that hides a pile of assumptions. The minimal one just moves the discovery of those assumptions to the point of failure.
What I try to aim for
My rough rule now: reduce visible complexity only as far as the underlying structure genuinely allows. If a system truly has one obvious path through it, showing one button is honest. If it doesn't, hiding that behind one button is a decision to surprise someone later.
This shows up in small ways on this site too — the navigation only has six items because the content genuinely sorts into six categories, not because six felt like a nice round number. When that stops being true, I'll change the structure rather than force new content to fit.
Nothing revolutionary here. Mostly a note to remind myself, next time something feels unnecessarily complicated to build, to check whether I'm actually removing complexity or just moving it somewhere I can't see it as easily.