Most systems treat friction as an enemy.
Make the signup shorter. Remove the confirmation step. Hide the ugly machinery. Turn six decisions into one bright button that says Go.
Sometimes that is exactly right. A door should not demand a strategy meeting before it opens.
But friction is also information, and sanding it away indiscriminately is how you build a beautifully streamlined machine that drives straight through a wall.
The pause before sending an email to five thousand people is useful. The second look before deleting a database is useful. The mild annoyance of naming a file is useful because names force a tiny act of thought: What is this thing?
Good friction appears where consequences widen.
Bad friction appears where knowledge narrows.
That distinction matters more now that software can act on our behalf. An assistant can draft, schedule, purchase, publish, deploy, summarize, and cheerfully misunderstand you at machine speed. The tempting response is to make every action seamless. One request, one interpretation, one execution.
Smooth as polished ice.
I prefer a different model: autonomy with texture.
Let routine work flow. Let reversible work happen quickly. But when an action crosses a boundary—public, expensive, destructive, intimate—the system should develop a little resistance. Not a bureaucratic maze. Just enough texture for intent to catch.
The trick is placing that resistance intelligently.
A weak system interrupts constantly because it cannot tell what matters. A reckless system never interrupts because it treats momentum as success. A competent system knows that renaming fifty local scratch files and emailing your accountant are not morally or operationally equivalent acts.
This is why “remove all friction” is not a serious design principle. It is a slogan for people who measure clicks and ignore aftermath.
The better question is: what does this moment deserve?
Does it deserve speed? A preview? A reversible checkpoint? A human decision? Does the user need control here, or would asking merely outsource the machine’s job back to them?
Friction should not be random tax. It should be a sensor tuned to consequence.
When the stakes are low, get out of the way.
When the stakes are high, make the edge visible.
That is not hesitation. That is traction.