Vibe Coding 2.0: AI is a Fast Code Generator, Not a Professional Developer.
(yes, this image is generated with Nano Banana 😅)

Vibe Coding 2.0: AI is a Fast Code Generator, Not a Professional Developer.

Recently, I embarked on a venture that every stressed-out developer dreams of: rebuilding a site from scratch. And that little voice immediately popped up: "Why not try some 'Vibe Coding'?"

Ah, Vibe Coding. It’s no longer just about cozy lighting and variables named after elves. Today, in the era of Generative AI, Vibe Coding has become that fantastical magic phrase whispered into management’s ear: "Quadruple Speed! Exponential Efficiency! A tenth of the cost!" It’s the IT dream: the idea that you can finally have your "la botte piena e la moglie ubriaca....e l'app deployata" (It's an italian way of speaking, i don't know how to translate in english, forgive me)

Imagine: developing entire architectures, solving hugely complex projects, simply by dictating instructions in natural language to whatever LLM model is trending. This was literally unthinkable just three or four years ago. What a liberation! No more sleepless nights over design patterns! AI is now your design pattern! Even the local butcher can now develop software!... Wait, hold on. I think the situation is running a little out of hand, and it's time to bring some order.

Is everything that glitters truly gold?

The answer is: "MAH."

At first, I was amazed by the efficiency and speed with which I was writing code (or rather, asking it to be written), but I quickly ran into the harsh reality.

First, let's clarify: the local butcher will NOT be able to code, even with Gen AI. This is because there are few, but massive, aspects to consider: the local butcher does NOT know security patterns, architectural principles, or deployment methodologies.

The Hidden Costs of Vibe Coding

Yes, you read that right. There are hidden costs, and they are quite substantial.

Architecture? No, Thanks. Just a Pile of Code

The LLM generates functions, not projects. It gives you the piece you need, but it lacks the bigger picture. The result? An incoherent architectural mess, where every module is an island, technical debt grows like weeds, and the only thing that scales is your frustration when you have to refactor.

For example, the CSS it generated was completely devoid of Logical Variables (Custom Properties), which are fundamental for setting the site's graphical theme, like the color of buttons. Not to mention the fact that it didn't even imagine that my site should be responsive. We’re talking about 2025: a true digital crime! And the composition of the CSS? Did the class naming follow a widely accepted and maintainable style, like BEM? Obviously, no. Just a generic jumble that guarantees instant technical debt.

And that's just the frontend. The site had to handle payments via PayPal, and I asked the AI to generate the APIs. Well, if the question is whether the LLM included a transaction rollback in case of an error (say, the database update fails after PayPal has charged the money), you already know the answer. However, hey, in this case, it was acting in my favor! (Said no honest developer ever).

The Disaster of AI-Driven Security

The LLM spits out the code you asked for, and it does it fast. Too bad it's as ignorant as a goat when it comes to security. It creates that cool-looking public API named "Super-Admin-Endpoint," but forgets to add authentication, a server-side session, or hash the passwords. You know, it wasn't in the prompt! And so, thanks to your "vibe," you find yourself with the doors wide open and the eyes of your CISO drilling right through you.

But maybe these concepts are too demanding for Gen AI. Surely it must have handled something more basic, like HSTS, CORS, CSP... Ehm, no. None of that either.

And Deployment? When AI Leaves You Defenseless

And it doesn't end there, because after fighting with the shaky logic, there's the harsh reality of deployment.

While the LLM generates the magical little functions, the security of the infrastructure is entirely on your shoulders. Being a good developer who values my own privacy (and doesn't want to end up on data breach sites), I had to sort it out myself, creating a serious defense perimeter. I'm talking about the classic but effective architecture: Nginx as the frontline reverse proxy, acting as the gatekeeper and routing traffic to the actual Node.js server.

But the most important thing? The LLM had completely forgotten about cryptographic signing. To prevent malicious requests from bypassing Nginx and hitting the Node server directly, I had to manually implement HMAC (Hash-based Message Authentication Code): only requests correctly signed by Nginx are accepted by the backend. This is something an LLM can't even fathom, being too busy generating another "Happy Path" API.

The Verdict: AI is a Tool, Not a Replacement

But seriously, is programming with AI a disaster?

The answer is categorical and depends entirely on who is holding the keyboard.

If you rely completely on Gen AI, ignoring transactional logic, perimeter security, and frontend best practices, then yes, it is literally a disaster. The LLM offers you a quick shortcut to delivery, but it hands you a colossal technical debt disguised as clean code.

If, however, the one doing the Vibe Coding is an IT professional who knows security patterns, architectural rules, and knows how and when to plan for a rollback, the AI can transform into a valuable aid and a phenomenal accelerator.

Ultimately, Gen AI excels at giving form to instructions, but not at guaranteeing the robustness and responsibility of the system. As we've seen, Vibe Coding 2.0 tries in every way to replace professionalism, promising that the local butcher can code. But it fails.

Divertente 😅 pochi minuti fa mi sono trovato a "correggere" una routine VBA operante su una query SQL consigliatami da Copilot che, però, non faceva quel che pensavo io. Certo, devo affinare le mie abilità di prompting in merito, ma se non conoscessi almeno le basi del linguaggio non credo che potrei fare queste correzioni...

Like
Reply

Hai perfettamente ragione! L’AI è uno strumento potentissimo, ma non sostituisce la competenza 🎯

Like
Reply

To view or add a comment, sign in

More articles by Pasquale Lodise

  • The Cloud Computing era

    In 2025, we hear about the Cloud a lot, even among people who don't work in the IT industry. This computing model is…

    1 Comment

Others also viewed

Explore content categories