Vibe coding vs. PM coding

Real value comes from clarity of purpose — not just the spark of an idea. | Photo by Jodi B Photography

March 3, 2026

Vibe coding vs. PM coding

by Brian de Haaff

"Move fast and break things" was an old mantra. I was even told that after one of our previous companies was acquired. (In reality, that is not what they really wanted ... but that is for a different post.) Today, it feels more like "prompt fast and hope someone wants to use what you build."

A lot of product folks are getting swept up in the sheer velocity of AI. For the first time in history, the barrier to building is near zero. But the volume of noise explodes when the cost of creation drops. Just because the machine can generate code does not mean it generates value.

AI grants you the capability of a technical team, but it does not grant you the judgment of a product leader.

This sudden freedom has given rise to "vibe coding" — spending weekends prompting, iterating, and building things just to see if you can. It can be genuinely intoxicating. The speed is addictive. But building without deep insight creates the modern version of shelfware, or "slopware." It is software that runs perfectly well, but solves nothing.

When you want to build something people will actually rely on, you cannot just "vibe" your way through it. You need to apply the same strategic discipline you always have. If you thought you heard "we need you to be more strategic" on a regular basis in the past, get ready for a cacophony of those voices now.

We call this PM coding.

PM coding is not just about generating code. It is about bringing strategic product thinking to the building process. This is the thinking that separates good product managers from great product managers. It means validating what should exist before you ask AI to create it.

This is why we launched Aha! Builder. It is the only AI coding tool designed for this specific approach. You start with strategy: Define why this matters, who needs it, and what success looks like. Then, AI generates the application from that foundation. It allows you to go from concept to code without skipping the strategy part.

Want to see how it works? Sign up for the first public demo.

But the tool is only as good as the discipline you bring to it. You have to resist the urge to just make it work — instead focusing on making it right.

Here is the distinction between the two mindsets:

Impulse vs. strategy

Vibe coding begins with a solution. You see a problem, imagine a fix, and the low cost of building makes you skip straight to writing code. If it runs, you assume the job is done.

PM coding begins with a need. You define why the work matters and what success looks like before prompting. You identify the user, the context, and the business value. The building happens only after the understanding is solid.

Assumption vs. evidence

Vibe coding assumes proximity is the same as empathy. You experience a pain point, so you assume you know the cure. The logic is circular: I built it and I like it, therefore it works.

PM coding demands discovery. You talk to the people who will actually use the tool. You understand their workflow and their workarounds. You often discover that the problem you thought needed solving is different from reality. You build to solve their pain.

Novelty vs. value

Vibe coding is additive. You think of a cool feature while prompting, so you add it. The scope creeps based on what the AI is capable of generating — not what the user requires.

PM coding is defined by boundaries. When you think of a new feature, you evaluate it against your success criteria. Does this help achieve the goal? Or is it just extra? You keep the scope tight to solve one thing exceptionally well.

Output vs. outcome

Vibe coding celebrates the artifact. The victory is that the code compiled and the button clicked. The metric of success is existence.

PM coding measures the impact. The application is judged by the problem it solves. Did it eliminate manual effort? Did it clarify a complex requirement? Did it solve the user's problem? You judge success by the value it creates (and not just the fact that it runs).

Isolation vs. integration

Vibe coding happens in a vacuum. You build a standalone tool that sits on your desktop or in a siloed repo. It is disconnected from the rest of the product ecosystem.

PM coding happens in context. You build tools that connect to your roadmap, your data, and your team's workflow. You consider how this new application fits into the broader portfolio.

Moment vs. lifecycle

Vibe coding focuses on the immediate. It is about the rush of creation. It rarely accounts for who will maintain the tool or how it stays secure.

PM coding focuses on longevity. Before you build, you establish ownership. You determine who has access and who is responsible for maintenance. You treat the application as a product that requires lifecycle management.

AI has given you a superpower: You no longer have to wait for permission to build. But with that power comes a responsibility to build the right things.

Do not settle for the dopamine hit of vibe coding. Apply your product discipline. AI makes you a builder, but only strategy makes you a product manager.

Ready to build? Join the first public demo of Aha! Builder.

Brian de Haaff

Brian de Haaff

Brian seeks business and wilderness adventure. He is the co-founder and CEO of Aha! — the world's #1 product development software — and the author of the bestseller Lovability and The Startup Adventure newsletter. Brian writes and speaks about product and company growth and the journey of pursuing a meaningful life. Learn more about Brian here.