Hey there! I'm Matt Gilbert, and I've been passionately working in the software testing space for over a decade now. I earned my Bachelor of Science degree in Software Development from Western Governors University, and since then, I've had the opportunity to work in various industries like Insurance, Tech Startups, SaaS, and Healthcare, as well as contract work.
I am also the creator and founder of ClearInsite - a comprehensive web testing platform that helps identify issues in websites across accessibility, performance, and security. It can also automatically generate hundreds of functional tests that you can plug-and-play into your existing test suite. It automatically scans websites, provides detailed reports with severity ratings, and offers AI-powered recommendations to improve user experience and ensure compliance with web standards.
In my posts, you can expect to read about everything from beginner to advanced testing concepts, as well as insights on leadership, technical testing approaches, team management strategies, and generative AI and its application in software testing. I regularly work with industry-standard tools as well as constantly learn new ones, and I'm passionate about sharing practical knowledge that you can apply to your own testing challenges.
Throughout my career, I've gained extensive experience in a wide range of testing techniques, such as API testing, Integration, Performance, Accessibility, UI, Usability, Mobile, and Contract testing. In addition, I've honed my skills in Test Automation Framework development using Python, Typescript, Java, and C#. I’ve also built GenAI applications for cross-team use. You can find me on LinkedIn, where I regularly share insights about software testing. Let's connect!
There's a term making rounds in programming circles lately: “vibe coding.” People use it to describe writing code based on intuition rather than understanding - throwing solutions at the wall until something sticks. While this might sound like a freeing approach to programming, it misses the mark on what coding actually requires.
I can simplify this further:
The exploration and experimentation with a shiny new tool to produce software one does not understand and cannot explain.
What's Wrong With “Vibe Coding”?
I don't call myself a “vibe mechanic” when I change my oil, brake pads, or try to diagnose issues with my OBD scanner. Why are we suddenly okay with “vibe coding” as a legitimate approach to software development?
The term suggests that programming is something you can feel your way through without technical knowledge. It implies that being in a “flow state” is enough to produce good code. But here's the problem: that “flow state” only becomes valuable when built on a foundation of technical skill and real-world experience.
When I first started building ClearInsite, it was more than an idea. It was based on lived-experience and a deep technical and user-centric understanding of the current problems and how to solve them. Sure, I used a few different AI tools to help me pull together code and write documentation, but I understood the problem, and the approach I wanted to take to solve it. I also structured it in a way that allows scalability following best practices for the language I chose. I wrote detailed requirements, and used it the software as I would foresee an end user using it (ultimately, myself). As an engineer, you should be able to explain every block of code and it’s purpose, otherwise you are just guessing and hoping that the generated code does what you asked for. Putting blind trust in something without verification or understanding is dangerous.
In addition to this, building large scale applications without fully understanding them is financially dangerous. We’ve all seen the stories about these “vibe coded” applications with publically exposed API keys, AI startups that were merely smoke and mirrors. This is irresponsible. Vibe coding can be fun, but please understand what you are doing first before celebrating.
The False Promise of Pure Vibes
Coding based purely on “vibes” leads to:
Brittle applications that break in unexpected ways
Technical debt that accumulates faster than you can say “refactor”
Sloppy code that other developers have to clean up
Solutions that work by coincidence rather than design
Poorly performing applications
False positives
An unskilled developer might get lucky occasionally. They might copy-paste their way to a functioning program. But without understanding what's happening under the hood, they're building on quicksand.
Large language models love to generate code, but oftentimes, there is a simpler approach that doesn’t cause code bloat.
The Right Balance: Technical Skill + Intuition
Here's what actually matters:
Technical precision comes first. You need to understand variables, functions, algorithms, and system design before you can meaningfully innovate. You also need to have a good understanding of prompt engineering. The output you get will significantly improve based on the input.
Intuition develops through experience. What feels like “vibes” to beginners is actually pattern recognition that skilled developers have built over years of practice.
Mindful programming requires both technical knowledge and awareness -knowing not just what code to write, but why you're writing it that way. - Learn technical and business requirements, user experience best practices, and accessibility standards!
The best developers don't just randomly try solutions until something works. They develop intuition based on deep technical knowledge. Their “flow state” isn't magical - it's the result of having internalized programming concepts so thoroughly that they can focus on solving higher-level problems.
When “Vibes” Actually Matter
There are aspects of programming where sensibility and intuition do matter:
User experience design
API design that feels natural to use
Coding patterns that make sense to human readers
Aesthetics of code organization
But even these require technical skill to implement effectively. The “vibe” is the polish on top of solid engineering, not a replacement for it.
Moving Beyond the Label
Vibe coding isn't real coding, just like making breakfast in the morning doesn't make me a chef.
What really makes developers effective:
Building technical knowledge deliberately
Understanding systems thoroughly
Learning from mistakes systematically
Combining creativity with precision
Programming isn't about vibes - it's about skill developed through practice and study. The satisfaction of writing good code comes from mastery. Technical precision matters.
Bonus
Read this far? Congrats! I am running a promotion the whole month of June, offering 15% off ClearInsite services. Simply use code BLOG15 at checkout. Prefer a demo first? Reach out to matt@clearinsite.io or through LinkedIn and I can provide more information.
Outro
Thanks for reading! If you have any questions about this article or any of my past articles, feel free to reach out on my LinkedIn. I’d love to hear your thoughts!