EN IT
· 9 min read

Most software that exists shouldn’t exist at all

And the people who build it for a living are the last to admit it.

I've been building software for twenty years. I've shipped projects, run sprint planning, configured pipelines, written specs, argued about architecture. Software is my professional life.

And it's from that position, not as an outside critic or a Monday-morning quarterback, that I'm telling you something our industry refuses to hear: most software that exists shouldn't exist.

Not because it's poorly made. Some of it is, sure, but that's not the point. It shouldn't exist because it doesn't solve a problem. Or it solves a problem nobody has. Or it solves a problem that was already solved, and does it worse. Or, in the most common and most insidious case, it creates the problem it then pretends to solve.


The Graveyard of Invented Problems #

Open your phone. Count the apps. How many do you actually use? How many solve a real problem in your life? And how many exist because somebody put together a convincing pitch deck, closed a seed round, and built something the world never asked for?

This isn't a fringe phenomenon. This is the dominant model of the software industry for the last fifteen years.

The cycle goes like this: someone identifies a "pain point" (almost always a minor inconvenience inflated into an existential crisis), builds an MVP, raises funding, hires developers, scales. At some point the software exists, it has users, it generates revenue. But nobody ever stopped to ask whether the world needed it. The question was irrelevant. The only question that mattered was: is it growing?

I've seen apps for sharing grocery lists with your roommates. Platforms for booking your barber with artificial intelligence. SaaS products for managing your houseplants. Marketplaces for swapping used dog outfits. I'm not making these up. Every single one of these received funding, had a development team, burned server capacity, energy, human time.

The problem isn't that they were bad products. Some were technically flawless. The problem is they had no reason to exist. And nobody said so, because saying so meant being the person who "doesn't get innovation."


The Hidden Tax #

Software isn't free. Ever. Even when it costs the user nothing, it costs the world.

It costs energy. Every app that shouldn't exist runs on servers consuming electricity. Every pointless SaaS has a database replicated across three availability zones, a monitoring stack, a global CDN. The cloud is not a cloud. It's a warehouse full of machines overheating in Oregon or Northern Virginia, powered by a grid that has physical limits.

It costs attention. Every useless piece of software installed on someone's phone competes for their attention with everything else. With work, with relationships, with sleep, with productive boredom, with unstructured thought. Attention is a finite resource. Every useless app that captures it is stealing it from something more important.

It costs complexity. Every piece of software adds an interface, a login, a password, another batch of notifications, another set of terms of service nobody reads, another stream of personal data flowing to God knows where. The complexity of our digital environment grows every year, and not because problems are multiplying. Because solutions are multiplying faster than problems.

It costs talent. This is the one that makes me angriest. There are extraordinarily talented developers out there spending their days optimizing the conversion funnel of an app that lets you order coffee with three fewer taps. People who could be building software that saves lives, makes education accessible, improves public health. Instead they're A/B testing the color of a "Buy Now" button.

It's not their fault. The market pays more for the button. But it's a waste so obscene we should at least have the decency to call it what it is.


"But the Market Decides" #

Here's the objection. If a piece of software exists and has users, then the market has decided it's needed. Supply meets demand, the invisible hand does its thing, everybody's happy.

Except it's not true. The software market doesn't work like the apple market.

First: the marginal cost of distribution is near zero. This means software can reach millions of users without the quality or necessity of the product ever being tested by any natural feedback mechanism. A greengrocer selling rotten apples goes under in a week. An app that solves no problem can survive for years, funded by venture capital, growing in users who don't pay, until the next round or the acqui-hire.

Second: the advertising model has decoupled value from price. When the user doesn't pay, the product doesn't need to be useful to the user. It needs to be useful to the advertiser. And for the advertiser, the metric is attention, not satisfaction. Software that makes people miserable but keeps them glued to the screen is an extraordinary commercial success. The market "decided" it's needed. But the market, in this case, is sick.

Third: network effects create natural monopolies. Once everyone uses a platform, you can't not use it. Not because it's good, but because it's where everyone is. The market didn't "decide" that WhatsApp is the best way to communicate. It decided it's the way everyone communicates, which is a completely different thing.


The Radical Act of Not Building #

In tech culture, building is always positive. "Makers gonna make." "Ship it." "Build in public." The verb build has a sacred aura, and whoever builds is by definition on the right side of history.

But there is a braver act than building, and nobody talks about it: deciding not to build.

Deciding that the world doesn't need another task manager. That a spreadsheet does the job better than your app. That the problem you're about to solve isn't a problem. That your talent and your time are better spent elsewhere.

In my experience, the best engineers I've ever worked with were also the ones most capable of saying "we don't need this." Not out of laziness, not out of cynicism. Out of respect. Respect for the problem, for the user, for the complexity of the real world. They knew that adding software to a context means adding complexity, dependencies, maintenance, technical debt. And that doing it without a strong reason is irresponsibility dressed up as productivity.

The Unix philosophy said it forty years ago: do one thing, and do it well. Not "do everything." Not "do new things because you can." Do one thing. Leave the rest alone.


The Software That Should Exist #

I'm not saying software is the enemy. That would be like saying writing is the enemy because bad books exist.

The software that should exist is the kind that expands human capability without creating dependency. That solves a real, verifiable problem. That works for the people who use it, not for the people who sell it. That you can stop using without consequences. That doesn't need to trap you to justify its own existence.

The software that should exist is the kind that, if it vanished tomorrow, someone would notice and miss it. Not the compulsive missing of an addict, but the concrete missing of someone who lost a useful tool. Like losing a good kitchen knife. Like losing a reliable bike.

That's the metric we should be using: if it disappeared, would you miss it? If the answer is "probably not," that software shouldn't exist. If the answer is "I wouldn't even know it was gone," that software is wasting the planet's resources and the time of everyone who built it.


The Responsibility of Those Who Build #

Every time we decide to build a piece of software, we're making a decision about real resources. Developer time. Server energy. User attention. The complexity of the digital ecosystem. And in a world with finite resources and enormous problems, building something useless is not neutral. It's active waste. It's a misallocation of human intelligence.

A civil engineer has to justify why a bridge is needed. An architect has to demonstrate that a building meets a need. A doctor doesn't prescribe drugs just because they exist. Why should software be different? Why should we accept that 90% of what we build will end up forgotten in an App Store, abandoned by its own creators after six months, left with user data inside and the servers still running?

Real innovation, in 2026, is not building more. It's building less, building better, building for better reasons.

And having the guts to say, once in a while, "no, we're not doing this one." Not because we can't. Because it doesn't need to exist.


The Luxury of Subtraction #

There's a concept in architecture that the software world has never learned: the value of empty space.

A good architect doesn't fill every square foot. They know that empty space isn't absence. It's breathing room. It's possibility. It's the room that the people who live there need to move, to think, to live. A building packed to the last inch isn't a masterpiece of efficiency. It's a prison.

Our digital landscape is a building packed to the last inch. Every space is occupied by an app, a service, a platform, a notification. There's no breathing room. There's no empty space. There's no quiet.

And in the middle of all that noise, the software that's actually useful, the kind that solves real problems, gets lost. It becomes invisible. Not because it's any worse, but because it's buried under tons of software that shouldn't exist.

Subtraction is a creative act. Choosing not to build is a design decision. And in an industry that can't say no to anything, it might be the rarest and most valuable skill there is.


The best software I ever wrote is the software I decided not to write.