Vibe Coding: Why AI Isn’t Great at Real-World Code
Every discussion of AI-generated code begins with the same sorts of arguments:
“AI provides tools to support real developers; it’s not meant to replace them.”
“AI’s the future, and it’s not going away — better get used to it.”
“This is the worst that AI will ever be.”
For the time being, let’s skip past those statements and focus on the facts: People are currently using AI to generate code, and they’re deploying that code on their production websites and apps. We’ve seen this with some of our clients — and while we’re not sure how AI code will play into the future of programming, it’s certainly having an impact on the present.
At Blue Stingray, we’ve built a team of talented human developers with decades of combined expertise. We’ve helped our clients build estores in Magento/Adobe Commerce, build more efficient businesses in Odoo, and find novel solutions for connecting legacy software to modern platforms.
While we’re excited about the potential use cases for AI, there are important caveats to consider if you’re using generative AI to create code.
1. AI has trouble with organization, which leads to big problems at scale.
AI-generated code lacks the nuanced understanding of system architecture and context that human developers bring to the table.
Even if you’re not a developer, you can get a sense of how this works. By this point, most readers will have had lengthy conversations with generative AI chatbots. During those conversations, you probably noticed a few idiosyncratic quirks of tools like ChatGPT and Google Gemini:
- AI chatbots tend to provide long answers, even when the question is simple and straightforward.
- Each tool is partial to certain words. For example, ChatGPT’s GPT-4o tends to say “utilize,” while Gemini is partial to “essentially.”
- Various tools also prefer certain types of formatting, such as em dashes and bulletpoint lists (like, ahem, this one).
These quirks are built into the tools’ design, and they’re fundamentally problems with data organization. They’re just as persistent when chatbots create code — but if you don’t have a background, you’ll probably miss these sorts of issues:
- Code is poorly optimized for performance and scalability.
- Chatbots ignore project-specific conventions and best practices.
- AI code contains subtle logical errors that pass basic tests but fail in real-world scenarios.
That last issue is most problematic. Many vibe coders (folks who use AI to generate working code without truly understanding said code) will fail to identify the errors. Over time, the code becomes bloated and disorganized — but key issues might not be immediately detectable, which builds the organization’s technical debt considerably. By the time you notice the flaws, you’ve got a big problem on your hands.
2. Current AI tools are not ready for any use case that requires security.
If you hired a human developer who was prone to making logical errors, you certainly wouldn’t trust them with anything related to security — and if you did, you’d certainly review their work extensively before going live.
- Reproducing outdated or insecure practices.
- Generating code that mishandles sensitive data, such as API keys or credentials.
- Using insecure libraries or dependencies.
Again, if you are not a developer, you probably won’t notice these issues. But bad actors will certainly notice them, and they’ll take advantage.
We should note here that bad actors are using AI, too: Security researchers have found evidence that malicious actors are uploading malware packages to open-source software supply chains, and as malware campaigns become more sophisticated, human devs will become even more important for maintaining secure products.
3. Human developers understand context; AI does not.
On a fundamental level, code is a set of instructions for software. If the software needs to handle a novel problem, the instructions need to be somewhat creative.
AI operates by identifying patterns in its training data, which limits its ability to innovate. That’s an issue when you need your app to do something specific: Connect with legacy software to report sales, for instance, or remove extraneous features from an ERP that bog down your workflow.
And even when AI can suggest a solution, it may not recommend the right solution. An AI might provide code that works but is computationally expensive, or the code might fail to scale with increased data loads.
Regardless of what your use case is, you want robust, future-proof software — and AI isn’t great at providing that result.
4. Overreliance on AI can prevent human devs from finding creative ways to solve problems.
AI-generated code can create a situation where developers rely so heavily on auto-generated solutions that they do not fully understand them. To put that another way: AI can make human developers less effective.
We’ve seen evidence of that phenomenon with chatbots: A 2025 study from the Massachusetts Institute of Technology (MIT) showed that people who use ChatGPT to write essays showed less activity within brain networks associated with cognitive processing. In other words, overreliance on ChatGPT made human essayists less capable.
This is not to say that you cannot use ChatGPT without atrophying your brain — “overreliance” is the key term here. But human devs need to carefully manage their usage of AI tools to keep their skills sharp.
AI is a useful tool, but it’s not the right tool for every use case
Writing code requires true creativity. Currently, that’s what humans are best at (and if we’re ranking creative abilities, we’d put crows and elephants ahead of AI, at least for the time being).
Nearly every project will have novel challenges that require outside-of-the-box thinking. For example, last year we were tasked with optimizing a warranty claims process for a major hockey gear manufacturer; that meant building our understanding of the current process, recommending a solution based on our analysis, and creating that solution.
And in 2024, we built an Odoo implementation to match an energy supplement manufacturer’s intricate, multi-day production cycles, which included specifications for rigorous quality checkpoints and detailed tracking of ingredients at every stage. In that project, bloat was unacceptable, so our Odoo team meticulously studied the client’s workflows before writing a single line of code.
None of this means that AI is useless for development.
It will be essential for managing repetitive tasks and handling boilerplate code. It’s already useful as a training tool, and it’s helpful when troubleshooting minor issues.
But human programmers can understand the scope and goals of a project in a way that AI cannot manage (at least, for the time being). Humans can write clear, simple, well-organized code that’s easy to change in the future — and follow best practices to maintain a secure, robust product.
AI is a supportive tool, not a replacement for skilled developers (we knew we’d get back to that introductory argument at some point). If you need to solve a problem, you need problem solvers; a skilled dev team is essential here, and that will be the case for the foreseeable future.
To learn more about Blue Stingray, contact us today or schedule a demo.



