There is an assumption buried so deep in how we build software that it rarely gets questioned. The assumption is that an interface is something you make. You sit down, you make decisions. What goes where, what colour, what size, what order... Those decisions get encoded into a codebase that serves them to everyone who arrives, identically, until someone decides to make different decisions.

This is not how most things that learn work. A teacher doesn't deliver the same lesson to every student in the same order with the same emphasis regardless of what they already know. A good doctor doesn't give every patient the same examination in the same sequence regardless of what they came in for. But software has always worked this way, one interface, authored once, served to everyone, and we've never really interrogated whether that's the best we can do or just the best we knew how to do.

We think it's the latter. And we think that's changing.

The Logic Knows Everything. The Visuals Know Nothing About You

The most interesting thing about how interfaces are built today is what they don't separate.