Understanding the distinction between vibe coding for lower stakes projects and augmented engineering for products
Language is funny. Basically all uses of AI tooling to make software are getting lumped together as "vibe coding."
There's lots of cynicism out there about it from my fellow builders.
I think vibe coding is great. I think of it in the way Andrej Karpathy described when he coined the term in a tossed off tweet: letting go, not caring about the specifics, pure conjuring of software into existence.
This is the path for personal projects for yourself or prototypes to test a concept. I'm currently vibe coding my first native iOS app to track weight training workouts just the way I want to despite the existence of many apps for that purpose. I don't like the ones I've tried so I'll make my own. Low stakes.
I'll spend hours of time to make something I could get for free or a few bucks, because it'll make me happy and I get to create something.
But, if money is going to change hands - I'd hope someone understands how the system that's being paid for works. That's where I like to use the term augmented engineering.
Augmented engineering lets me apply AI to all aspects of the software development lifecycle to get much more done and even at a superior quality to what I would be able to produce on my own.
But at every step, I can be sure I understand how the system works and that it will be easy for other humans to understand.
The risk does get higher when you get outside your own deep expertise, but risks can be managed.
It lets me be more ambitious - for my own projects I'm serious about and on behalf of clients.
I'm not naive enough to think I can get people to not lump this type of approach in with true vibe coding. I'm embracing that.
But, I figure it's worth being clear about which approach I'm using.
Cheers to all the folks using AI to engineer software more effectively. And to the folks riding the vibes and making cool stuff.
If you're planning to get rich off of just vibe coding, tread carefully.
Follow along as I build and share what I learn
Found this helpful? Share it with your network!