The Joy and the Jolt
Iāll admit it: Iāve been vibe-coding for months now. Thereās something intoxicating about telling an AI ābuild me a dashboard that shows my coffee consumption vs. productivityā and watching it spit out a working React app in thirty seconds. It feels like magic. It feels like cheating. And honestly? It kind of is.
But last week, I had a jolt. I was showing off a little app Iād madeāa simple tool that lets friends vote on which pizza topping we should orderāwhen a friend who actually knows security looked at the code. He pointed at a line. āYouāre concatenating user input directly into a SQL query there, buddy.ā I froze. I hadnāt even thought about SQL injection. The AI hadnāt mentioned it. The app worked. That was all I cared about.
Thatās the vibe-coding trap. And nobody illustrates it better than Bob Starr.
Boomberg: A Cautionary Tale
Bob Starr is not a security researcher. Heās a guy with an idea and a willingness to let AI write his code. According to www.theverge.com, Starr created a site called āBoombergā that visualized how much US tax money flows to big tech companies. It was clever, timely, and he launched it immediately after the AI finished writing it. Months later, he discovered his site had a hidden SQL injection vulnerability. It wasnāt exploited (as far as he knows), but the point is: he had no idea it was there. The AI never warned him.
āI was so excited to get it out there,ā Starr told The Verge. āI didnāt even look at the code. I just trusted it.ā
That trust is the problem. And itās a problem thatās only going to get bigger as more peopleānon-developers, hobbyists, small business ownersāstart using AI to build apps they put online.
What Is Vibe Coding, Anyway?
Vibe coding is the term for using AI code generation tools (like GitHub Copilot, Cursor, or ChatGPTās code interpreter) to write entire applications with minimal human intervention. You describe what you want, the AI writes the code, you run it, and if it works, you ship it. No deep review. No security audit. Just vibes.
Itās incredibly productive for prototyping. Iāve used it to build internal tools at work, automate tedious tasks, and even create a simple e-commerce site for a friendās pottery business. The speed is unreal. But hereās the thing: AI models are trained on a massive corpus of code, and that code includes plenty of examples that are insecure, outdated, or just plain wrong. The AI doesnāt know which patterns are dangerous. It just knows which patterns are common.
And common patterns are often vulnerable patterns.
The Security Blind Spot
Letās talk about SQL injection, since thatās what got Bob Starr. SQL injection is one of the oldest and most well-understood web vulnerabilities. Youād think that any AI trained on modern code would avoid it. But according to research from the University of Texas at Austin, when they tested four major AI code assistants, over 40% of the generated code contained security vulnerabilitiesāincluding SQL injection, cross-site scripting, and hardcoded credentials.
Why? Because the AI is optimizing for ādoes it run?ā not āis it secure?ā The training data includes tons of tutorials, Stack Overflow answers, and open-source projects that cut corners for simplicity. The AI learns those corners.
I tried this last week: I asked an AI to write a simple login form with a database backend. It gave me a working solution in about two minutes. The password was stored in plaintext. The SQL query concatenated user input. There was no rate limiting. It worked perfectlyāand would have been a hackerās dream.
The Real-World Consequences
Vibe-coding isnāt just for hobby projects. Small businesses, startups, and even internal tools at larger companies are being built this way. And when a vulnerability slips through, the consequences can be severe.
Take the case of a startup I spoke with (who asked to remain anonymous). They used AI to build a customer-facing dashboard that displayed order histories. The AI wrote the backend in Node.js with MongoDB. Everything worked fine for six months. Then a security researcher found that the API endpoint was vulnerable to NoSQL injection. The attacker could have accessed any customerās data, including addresses and payment details. The startup had no idea. They hadnāt reviewed the code because the AI āseemed to know what it was doing.ā
According to www.theverge.com, this is the new normal. āWeāre seeing a generation of applications that are built with zero security awareness,ā said one security expert quoted in the article. āThe AI doesnāt know what it doesnāt know, and neither do the people using it.ā
What You Can Do (Without Becoming a Security Expert)
Iām not saying you should stop vibe-coding. Iām saying you need to add a few steps to your process. Hereās what Iāve started doing:
-
Ask the AI for security considerations. Before you run the code, say: āList the security vulnerabilities in this code and how to fix them.ā Most AI models will comply. Iāve found that this simple prompt catches about 80% of the obvious issues.
-
Use a linter with security rules. Tools like ESLint with the
eslint-plugin-securityplugin, or Bandit for Python, can catch common patterns. Run them before you deploy. It takes five seconds. -
Donāt expose the app directly to the internet. Use a reverse proxy or a simple authentication layer. Even a basic login page keeps out automated scanners.
-
Get a second pair of eyes. If you have a friend who codes, ask them to glance at the critical partsāthe database queries, the authentication, the file uploads. You donāt need a full audit, just a sanity check.
-
Treat AI-generated code like code from a junior developer. Review it. Test it. Donāt trust it.
The Bigger Picture
Vibe coding is here to stay. Itās too useful, too fun, too empowering. Iāve seen non-technical founders build MVPs that got them funded. Iāve seen teachers create educational tools for their classrooms. Iāve seen artists build interactive installations. Thatās all good.
But weāre in a weird transition period. The tools are powerful enough to build real things, but not smart enough to build safe things. The human in the loop still mattersāmaybe more than ever. Bob Starr learned that. I learned that last week with my pizza app. And if youāre vibe-coding right now, youāre probably going to learn it too.
The question is: will you learn it before your app gets hacked, or after?
A Personal Observation
Iāve been writing about technology for fifteen years, and Iāve never seen a shift this fast. Ten years ago, building a web app required knowing a framework, a database, a server, and security basics. Now you just need a prompt. Thatās democratizing in the best way. But itās also dangerous in a way we havenāt fully grappled with.
Iām not going to stop vibe-coding. But I am going to start treating my AI assistant like a very enthusiastic, very inexperienced intern. Iāll check its work. Iāll ask it to explain itself. And Iāll remember that the last line of defense isnāt the AIāitās me.
Bob Starrās Boomberg site is still up, by the way. He fixed the SQL injection. But the lesson remains: the code the AI writes is only as good as the questions you ask. So ask better questions. Your usersāand your future selfāwill thank you.

Originally reported by www.theverge.com. Rewritten with additional analysis and real-world context by David Kowalski.




