Skip to main content


The adage that "users want simplicity" is over-applied. At the end of the day, apps are tools to navigate real-world complexity. I want more control over my tools, not less.

Even if the complexity is abstracted away by default, it should at least be transparent. Let me look under the hood if I want to.

As software continues making its way into every nook & cranny of our lives, this becomes an issue of personal freedom & liberty. We hate bureaucratic red-tape, but tolerate the helplessness coupled to "simple" digital interfaces as if it's completely unavoidable. This slow progression of bad-software-tyranny feels unstoppable, but I think it's stupid, so I'm going to argue against it.

People get a real dopamine hit when they solve a problem. If they could see how quickly the supercomputer-in-their-pocket was performing complex tasks to assist them in their work, they would feel a thrill -- like driving a fast car. A motorcycle for the mind.

Instead, the status-quo is to sell all software as "Uber-for-X," where you're intentionally masking the "how" behind the "what." No software company wants to build lawnmowers -- they want to build on-demand lawn care services. Then, when the company evaporates, users don't own lawnmowers. They become dependent on these bad abstractions, and our brains end up renting broken tricycles instead of owning motorcycles.

Apply this pattern for every minor chore in our lives, and we end up with these big cities that resemble assisted-living communities for the youth. Have you ever worked at an old-folks home? I have, and guess what -- the old people constantly complain about imperfections in the services provided, because THEY HAVE NO FREEDOM to solve their own problems. We should build software that encourages user freedom.

Here's another angle -- Steve Jobs. Back when Apple was building one of its old computers, Steve kept rejecting the team's calculator app, saying the buttons didn't look aesthetic enough. Finally, a bright engineer named Chris Espinosa had an epiphany. Instead of building Steve a calculator, he gave Steve the tools to build his own calculator. Steve loved it.

Most people consider this story to be a quirky 1-off tale about how much Steve sweated the details... but not me! I took it literally, and combined it with another lesson that the startup universe has bestowed on me: everybody™ thinks they're the next Steve Jobs.

So, when building apps for everybody™, don't make calculators. Give them tools to roll their own calculators.

Beware of he who would deny you access to information, for in his heart he dreams himself your master.