Vibe Coding: The Two Sides of AI in Software

I want to talk about something I’ve been thinking a lot about as a developer here in Porto: vibe coding. It’s a term you’ve probably heard, and it sounds pretty cool, right? It’s this idea of just chatting with an AI and watching the code appear, almost like magic. But from my perspective, after 25+ years in this game, “vibe coding” isn’t just one thing. It’s actually two completely different ideas, and how we use it, and who uses it, is a really big deal. Let’s dive in and chat about why.

The “Training Wheels” Version (and why we should be cautious)

Imagine a new developer, fresh out of a bootcamp or just starting to learn. They have a great idea for a simple website. They fire up an AI assistant and start typing: “Build me a login form with a button and a thank you message.” The AI responds instantly with a nice chunk of HTML, CSS, and JavaScript.

This is what many people call vibe coding. They’re “giving in to the vibes,” as the creator of the term once said, and getting a working result without truly understanding the code itself.

From My Experience:

This feels a lot like a parent tying their child’s shoes. It’s super helpful in the moment, and the child gets to go play faster. But if you never teach them to tie their own shoes, they never learn that fundamental life skill. They remain dependent.

For new developers, constantly relying on an AI to do the heavy lifting prevents them from building the critical skills that matter most:

  • Debugging: When the AI-generated code inevitably breaks, how do they fix it if they don’t understand why it was written that way in the first place?
  • Problem-Solving: The core of software development isn’t typing; it’s problem-solving. Vibe coding bypasses this crucial part of the learning process.
  • Critical Thinking: How do you know if the AI gave you a good solution? Is it secure? Is it efficient? Without a strong foundation, it’s impossible to tell.

This isn’t just a problem for the individual developer, either. I’ve seen a concerning trend where companies might hire junior developers and implicitly encourage this kind of vibe coding to get a result faster and cheaper. This is absolutely terrible. It creates what I call “black box” code: nobody truly understands it, which leads to massive technical debt and security risks down the line. It’s a short-term win that will cost the business dearly.

Pro Tip: For a new developer, AI is best used as a Socratic mentor, not a code-writing shortcut. Instead of asking it to do a task, ask it to explain a concept. Ask, “What are the pros and cons of using puppeteer vs. playwright?” or “Explain this line of code for me.” That’s how you truly learn. And, you should immediately adopt AI in your workflow.

The “Colleague” Version (where the magic really happens)

Now, let’s look at the other side of the coin.

This is where a senior developer, with a deep understanding of code—and I mean really deep, from the bits and bytes to the architecture—uses AI. They’re still using natural language to chat with the AI, saying things like, “Hey, let’s try this,” or “Let’s add that.” This is also vibe coding, but it’s a completely different animal.

What’s the difference?

For the senior developer, the AI isn’t a crutch; it’s a super-fast colleague. It’s a tool for rapid prototyping and ideation. We’re not typing every line of code for a boilerplate setup anymore; we’re using the AI to get from zero to a working prototype in a fraction of the time.

This isn’t about laziness; it’s about efficiency. It frees us up to focus on the truly hard parts (where AI will still have to evolve a few years to completely replace these as well, because of the tremendous amount of context it would need to make enterprise-grade decisions):

  • Architectural Design: How should all the different pieces of this system fit together for the long term?
  • Business Logic: Is the code solving the right problem for the client?
  • Performance and Security: We’re the ones responsible for reviewing that code, optimizing it, and making sure it’s bulletproof before it goes into production.

The senior developer is the master chef who knows how to use every single tool in the kitchen, from the whisk to the instant pot. They can use the AI for a quick, experimental recipe, but they are the ones who taste it, refine it, and ultimately serve the final, high-quality dish.

There is zero shame in this. This is just a new evolution of our toolkit.

FAQ

Q: Will AI replace developers?
A: This is a question I hear all the time! My short answer is no, it won’t. But my longer answer is that it will absolutely change what it means to be a developer. AI is a tool, not a replacement. Or better, it is a very fast colleague you have access all the time. A calculator didn’t replace mathematicians; it just freed them up to solve more complex problems. AI is doing the same for us. It handles the repetitive, “typing” part of the job, but it’s the human who still needs to do the “thinking” part: designing the architecture, solving the tricky problems, and understanding the business needs.

Q: Is “vibe coding” a bad thing, then?
A: It really depends on who is using it. For an experienced developer, it’s a fantastic way to accelerate a project, prototype an idea, and offload the grunt work. For a new developer, it can be a serious trap. It’s like a shortcut that skips the most important lessons. The real danger is a junior developer who can produce code but can’t debug it or explain why it works. This creates an illusion of competence that will catch up to them—and the business—eventually.

Q: How should companies handle this?
A: This is where leadership comes in. You should encourage your senior developers to use AI as a strategic tool for efficiency. This will speed up innovation and let them focus on high-value work. At the same time, for your junior talent, you need to set clear expectations. Their use of AI should be focused on learning, but it should be adopted right now. Encourage them to ask the AI questions, review the code it generates, and then write their own version. This turns the AI from a crutch into a powerful teaching assistant, which is the key to building a strong, self-sufficient team.

External Links & Resources

If you want to dig deeper into this topic, here are a few other articles from people who are also thinking about the future of software development with AI.

  • The Truth About Vibe Coding: A Veteran Developer’s Perspective
    • This is a great article that really gets into the pros and cons of vibe coding. The author shares a cautionary tale about a real-world project that failed due to a lack of fundamental coding knowledge. It’s a powerful read that reinforces my point about the dangers of this approach for new developers.
  • AI in Software Development: Revolutionizing the Coding Landscape
    • This one is a great, comprehensive overview of how AI is impacting the entire software development lifecycle. It’s a good resource for anyone, especially business owners, who want to understand the bigger picture of how AI is being used today, from code generation to testing and project management.
  • Why/How Senior Engineers Embrace AI Tools in Development?
    • I really like this one because it frames senior developers as “master chefs” who know exactly when to use AI tools, just like a chef knows when to use a microwave versus an oven. It’s a perfect analogy that explains why we’re not using AI out of laziness, but out of a deep understanding of our craft.

How to Find Great Developers

If you’re a business owner looking for a developer who understands the difference between these two approaches, and knows how to leverage the best tools without sacrificing quality, you need to work with a trusted expert.

That’s why I recommend Codeable, they vet their developers for both technical skill and professional integrity. You can find some fantastic, trustworthy people there.

Affiliate Disclosure:
This is a link that will take you to Codeable, a platform I’ve worked on now for almost 10 years, and I trust all the single experts they onboard. So feel free to open your task and ask your question, the link we assign this task to me as a referrer for the platform.

Leave a Reply

Your email address will not be published. Required fields are marked *