three layers of quality
·
3 min read
I once spent hours tweaking the transition curve on a dropdown menu. Testing easing values until it felt just right.
Then someone tried to use the feature. They couldn't figure out how to save their work. The button was buried. The flow made no sense.
I made the door swing beautifully but forgot to build the room behind it. I see builders do this every day. We obsess over the surface while the foundation cracks underneath. We convince ourselves we're doing good work because it looks like good work.
Now, before you build anything, get painfully clear.
What happens if you don't build this, and how does it feel to use the finished thing? Not how it looks. How it feels. If you can't explain what you're making in one sentence a stranger would understand, you're not ready to build. You're guessing, and that's how you end up polishing broken things.
layer 1 — does it work?
Not "kind of works." Not "works on my machine." Does it work if someone who's never seen your product tries to use it?
Most things people ship are broken in ways they've learned to ignore. They've clicked through the same flow so many times they stopped noticing the friction. Gone blind to their own mess.
Make it work first. Truly work. Everything else is decoration until you do.
layer 2 — does it make things better?
A lot of things work. Nobody wants to use most of them.
Working is the minimum. Does it make someone's life easier?
You've used an app where everything functions but every interaction feels like a chore. You tap, you wait, you tap again, you wonder if it went through. It works, but it fights you the whole way.
Now think about the times something just flowed. You barely noticed the interface because it got out of your way. It remembered what you needed, showed you the right thing at the right time, and never made you think twice.
That gap is layer 2. Good defaults, clear flow, no wasted steps. No moment where the user thinks about your product instead of their goal.
Remove until no significant improvements left, but you have to explore widely before you can simplify well.
layer 3 — does it make people feel something?
Some products work well and you still feel nothing using them. No friction, no complaints, smooth all the way through. You finish the task, close the tab, forget it existed.
That's the ceiling of layer 2. Most builders stop here because "nobody complains" feels like a win. But "nobody complains" is not the same as "people love this."
Layer 3 inverts that. Layer 2 was removing — friction, steps, noise. Layer 3 is adding something back. Obsessing over details nobody asked for. Spending time on things no one will consciously notice. It feels irrational, like overkill. But that's what it takes, to obsess, to take a lot of care even if you know someone wouldn't notice at first glance.
The best scenario is when you build something, someone tries it, and they go "wait, this is actually good." Not good like it works. Good like they felt something. They tell people without being asked. They're proud to be associated with it. That moment where they thought "whoever made this gave a damn". You can't fake it. It only comes from caring about the people you build for and refusing to stop at "good enough."
Every time I start my work, I check myself against these three layers. I don't always get it right. I still think about that dropdown sometimes — beautiful curve, broken product. But at least now I know what to ask.