I’m not a great programmer. Good but nothing more. But the 35 years of experience I have in software development, mostly in QA roles, gives me a great understanding of requirements. This knowledge, along with an awareness of security and vulnerability issues, equips me to build applications using vibe coding.
I’ll admit I don’t have a ton of ideas for the kinds of apps I want. Some, like a note taking alternative to OneNote and Obsidian, seem out of reach. They require cross-platform mobile development, app store deployment, and competing against a massive, saturated market.
And other projects, like games, are too much work. Yes, I can get a prototype going but where do I take it from there? Trying to devise all the rules and handle playtesting is difficult.
What I do excel at are utilities. Programs to help automate and assist me while using my computer. And with the experience I have with computers, especially Windows, and the many utilities I’ve written over the last several decades without the assistance of AI, I feel like I understand the workflow involved.
I say all of this because it’s important to know not only what you need or want, but how you’ll know it is what you need once you begin testing your new vibe coded app.
To do this effectively, it’s important to have experience with similar apps, and to see the faults in those apps and understand how you might overcome them. If you know it could be better, but you’re not sure how, you might want to spend time with a chatbot and converse about it. Give it an example of an app that isn’t working, what you expect from it, and see if it can offer ideas on how to improve the experience.
Use these insights to define your requirements and acceptance criteria. Requirements are the what and why. The high-level capabilities of the application, the business value, and/or the functions the app should offer. Acceptance criteria tell you when it’s ready. It involves testing and validation.
Once the app does what you expect it to do, you’re done. Or almost done.
You’ll also want to have AI write unit tests that are run regularly. And it’s important to ask it to write code that is manageable, secure, and doesn’t present vulnerabilities. Then take the finished code and run it through a second AI chatbot or coding platform, get its opinions, and continue to improve it.
I also recommend you upload it to GitHub.com as soon as you can. It’s free for most private or public projects, and it keeps your code safe. It’s worth investing the time and effort in learning how to use GitHub.
By following these steps, ensuring you know what you want upfront, validating that the resulting application matches your requirements, and safeguarding it in GitHub or a similar on-line repository, you can find success with vibe coding.
Just know that vibe coding doesn’t take the work out of software development. It just moves it up the stack, so instead of filling the role of coder, you become a business analyst and tester instead.

Leave a Reply