Your iPhone Didn’t Make You a Photographer. Claude Code Didn’t Make You a Developer.

A few years ago, smartphone cameras got so good that everyone started calling themselves a photographer. The same thing is happening right now with Claude Code, Codex, and every other AI coding tool on the market. Just like with iPhone photography, however, there is a gap between access to the tool and mastery of the craft. Vibe coding does not make you a developer. Not automatically. Not by default.

You type something in plain English and working code comes out the other side. It is genuinely remarkable. In fact, the barrier to building software has dropped so dramatically that people who have never written a line of code are now shipping apps. “I am building a SaaS” is the new “I do photography.” And I get why it feels that way.

Still, let us use the photographer analogy seriously, because it holds up in ways that are uncomfortable.

The iPhone Did Not Make Everyone a Photographer

When iPhone cameras got genuinely good, a lot of people started taking photos. Good photos, even. Nevertheless, the wedding photographers did not go out of business. The editorial photographers did not lose their clients. The reason is straightforward: access to a better camera is not the same thing as mastering the craft. Composition, lighting, timing, knowing what you are actually trying to say with an image. Those things live in your head, not in the hardware.

The iPhone democratized photography. It did not, however, flatten the gap between enthusiasts and professionals. Instead, it just made that gap less visible to enthusiasts. Vibe coding is doing the same thing to software development right now.

The Real Exceptions Worth Acknowledging

Here is where I want to be careful, because the opposite extreme is just as wrong. Some people do create genuinely remarkable things with iPhone cameras. Photographers who embrace the tool and develop a real eye for it produce work that stands on its own. Similarly, the same is true with AI coding tools. People with deep product intuition, strong systems thinking, and a real sense for what users need can build things that are legitimately good, even if they would never describe themselves as engineers.

That exception matters. A skilled person plus a powerful tool can, in practice, produce something real. However, do not let that exception become the story you tell yourself when it does not apply to your situation.

What Vibe-Coded Output Actually Looks Like

Most vibe coding does not produce professional-grade software, and there are tells. Your app does a version of the thing you wanted. Code works until something slightly unexpected happens, and then it does not. Meanwhile, the architecture that made sense in week one is now a mess that even the AI cannot fully navigate. Security is whatever the defaults were. As a result, error handling is whatever the LLM decided to do. If you do not know enough to review any of that, you also do not know it is a problem.

Most iPhone photos still look like iPhone photos. Not because the camera is bad, but rather because taking a good photo requires more than pressing a button. Most vibe-coded apps work the same way. The UX has a certain quality. Edge cases were not thought through. It handles the happy path and falls over on everything else. Anyone who has shipped real software can tell immediately.

When That Is Fine, and When It Is Not

Most iPhone photos serve their purpose perfectly well. You captured the birthday party. Nobody needs those to be professional-grade. Similarly, plenty of internal tools, side projects, and early prototypes do not need to be professional-grade either. If you built something that solves your problem, use it. Be proud of it. Just be honest about what it is.

The problem, however, is the delusion. The moment you start believing that vibe coding makes you a developer the way hiring a senior engineer makes you an engineering team, you will make expensive mistakes. You will underestimate what real engineering work costs. Consequently, you will ship things to production that should not be there. For teams that need real reliability, the cost of getting that wrong shows up fast.

The Delusion Is the Problem, Not the Tools

The photographers who got genuinely good with iPhones knew they were learning a craft. In contrast, the ones who fooled themselves into thinking the camera did the work were just people with a lot of unremarkable photos.

Vibe coding as a starting point is legitimate. As a substitute for engineering judgment, though, it is where people get into trouble. The difference is whether you are honest about where you actually are, and whether you know what you do not know.

Your AI-assisted code can be the start of something real. The delusion is thinking the tool is doing the skilled part.