Skip to main content
OneAdvanced Software (return to the home page)

Vibe coding with AI: Benefits, risks and best practices for better software development

Vibe coding with AI can speed up software development, but it also introduces risks around code quality, performance, prompting and security. In this article, Anthony Lodwick explains what vibe coding is, where it works well, and the best practices that help teams use AI-generated code more effectively.

by Anthony LodwickPublished on 9 June 2026 4 minute read

Female programmer in an office

Vibe coding for those that don’t know, basically means building software with AI. You start with a problem, explain what you are trying to do, and use an AI to help turn that idea into some code.

That description is roughly correct, but it can make the process sound a lot easier than it really is, you still need some degree of technical knowledge, you need to question what the AI outputs and you need clear patterns and security controls.

Having recently used this approach on a real internal software project, I believe I have a better understanding of what vibe coding is, and where its limitations are.

Starting with a rough design

The great thing about vibe coding is that you don’t need to start with a fully detailed product design, you just need a problem to solve and then get started.

The problem I worked on was essentially a manual task that took too long, was not always consistent, and led to things being missed. I wanted to build a system that could do the first pass and pull out the important bits of information for further review.

What made that possible was not having to provide a detail of every screen upfront. I started with a rough idea of the outcome and fed that into the AI and it created a portal, with links, reports and a decent layout. 

Why the first version does not need to be perfect

This is one of the most useful things using this type of development, it’s how quickly you can get from an idea to something you can look at and click on (reminds me of VB6 coding back in the day, but there you would have to do all the screen design yourself).

But this doesn’t mean that the first version works, it may do the basics, look and feel quite polished, but it will need some refining.

However, once you have the initial concept in front of you, you can have more of a back and forth conversation with the AI and ask questions like:

  • Why do those two views not match?
  • Can you change that formatting?
  • Why is something relevant being filtered out?
  • Or even: just scrap it and start again but carry forward what you learned.

But AI is not perfect, it will make mistakes or make assumptions you did not consider.

Where vibe coding with AI can go wrong

One problem I hit was where a value shown in one part of the application did not match the more detailed report elsewhere. At first, it looked like just a display issue, but when checking I found that two parts of the system were reading the same data in slightly different ways. If you were coding this yourself, typing the 0’s and 1’s, this kind of issue would likely not have appeared as you would have a better understanding of the underlying code, but as the code gets written at speed, it’s hard to keep track.

Inefficient AI-generated code is easy to miss

Another limitation is that AI can produce code that technically works but is not especially efficient. It may create functions it didn’t need to, query the same thing more than once, or solve a simple problem in a more complicated way than needed. If you are developing quickly, it is easy to accept this because the screen works and the output looks right. The problem can show up later as performance issues, the code also becomes harder to follow or making one change means fixing the same thing in three different places. You have to actively take steps to make sure the AI keeps on top of this.

Poor prompts create poor results

This might be stating the obvious, but the quality of the result depends heavily on the quality of the prompt. If you’re not clear, such as asking ‘Can you add a screen to include the sales figures’, the AI will make assumptions; Where should it add it, what sales figures, how should it be displayed. Sometimes these assumptions work out, but sometimes they lead to things you didn’t ask for. You might just want a small adjustment to a filter or layout, but that may include some of logic being rewritten and if you’re not familiar with the code, you may not even notice.

Security cannot be an afterthought in AI coding

Security is probably the biggest reason not to treat AI generated code as perfect. It can suggest shortcuts that expose data, miss basic validation, handle authentication poorly, or use outdated third-party packages. As a simple example, when asked to build a web app for a beginner the AI used plain unencrypted HTTP, but when the same prompt specified an expert audience, it used full HTTPS. The AI adjusts its assumptions based on how you frame the request, and that can have real security implications. You therefore need to have the controls and processes in place to make sure security is being considered as part of development.

Final thoughts on using AI for software development

Used properly vibe coding is an amazing tool. It’s great for building an early version quickly and reducing the time between an idea and creating something useful, but it does not remove the need for technical thinking, because as per my previous example, you still need to have a degree of understanding on how these systems should be implemented in order to reduce risks. The real benefits however, come from when you bring together AI with human judgement, clear prompting, and proper controls. Then it can be an extremely useful way of building software for practically any problem you can think of.

Ready to explore what AI-assisted development could do for your organisation? If you want to move faster without losing sight of security, quality, or control, contact us to talk about how we can help you turn ideas into practical, well-governed software solutions.

About the author


Anthony Lodwick

Senior Solutions Architect

Anthony Lodwick, a Pre-Sales Solutions Architect at OneAdvanced, is an IT professional with 25 years experience spanning across system support, consultancy and architecture design.

Share

Contact our sales and support teams. We're here to help.

Speak to our sales team

Speak to our expert consultants for personalised advice and recommendations or to book a demo.

Call us on

0330 343 4000
Need product support?

From simple case logging through to live chat, find the solution you need, faster.

Support centre