“I built a mobile app with no coding experience.”

“I cloned Spotify in a weekend.”

People often call projects like these slop because the code is bad. I think the problem usually starts before the code.

Building something and deciding whether it is worth building are different skills. AI made the first much cheaper. It did very little for the second.

The old filter

When software was expensive, the cost filtered out many weak ideas. A team needed time, money, design, and a reason to believe the product would be useful before anyone could build it.

That filter was imperfect, but it forced people to answer basic questions. Who wants this? Which problem does it solve? Why should this version exist?

Now someone can build another note-taking app or habit tracker in a weekend. The cost that once forced those questions has mostly disappeared.

Code is not the deciding factor

An AI-generated codebase may have poor abstractions and no tests. That can make it bad software, but it is not what makes the product disposable.

The harder problem is judgment:

  • Is it useful?
  • Is it fun?
  • Does it solve a problem someone actually has?
  • Is it better enough to justify another option?

Video games make this clear. AI can generate assets, levels, and working game logic. It cannot decide whether the game is fun. That comes from many design choices, playtesting, and someone having a clear idea of the experience they want.

What this changes for developers

Competent implementation is becoming cheaper. Developers who only translate a detailed specification into code will compete with tools that are improving quickly.

The harder work is deciding what to build, finding the unnecessary parts, understanding users, and pushing back on the wrong specification. Strong engineers already do this. AI makes the difference more visible.

When anyone can build an acceptable version, acceptable stops being enough. The person choosing what deserves to exist becomes more important than the person producing the most code.