The Void in Vibe Coding (VVC)

Retzam TarleRetzam Tarle
7 min read

Hello again 👽,

I went ‘absentee’ for some time again, it was for reasons beyond my control, yet again, but I am back now 🙂.

We’ll pick up with a mid-series special!

Vibe Coding

Vibe Coding is a term loosely attributed to Andrej Karpathy, a former OpenAI co-founder and Tesla AI leader, in February 2025, when he said this while describing his approach to writing code with AI and voice commands

It's not really coding - I just see things, say things, run things, and copy-paste things, and it mostly works.

While the above context has made most people these days tightly associate Vibe Coding with using generative AI assistants to generate code, the history of the Vibe Coding phenomenon has existed way before AI could generate code.

A broader definition of Vibe Coding would be this

Vibe coding refers loosely to when developers code based on intuition, trends, or informal trial-and-error rather than sound principles like design patterns, maintainability, or security. It often emphasizes getting things to “just work” with minimal deliberate structure. Basically these phenomenon refers to copying and pasting code without thorough understanding of the implications, like copying from Stackoverflow, Github Gist, Youtube tutorials and most common now AI tools like Anthropic’s Claude.

Simply put, if you understand the code generated/copied, it can not be considered Vibe Coding. It has to be, you know, Just Vibes. Co-creator of Django Web framework, Simon Willison, said: "If an LLM (Large Language Model) wrote every line of your code, but you've reviewed, tested, and understood it all, that's not vibe coding in my book, that's using an LLM as a typing assistant." I think a perfect output for Vibe Coding would be ‘Spaghetti Code’. Spaghetti code refers to poorly structured, difficult-to-understand computer source code characterized by a lack of clear organization and a tangled control flow, resembling a bowl of tangled spaghetti.

Vibe coding prioritizes speed of development over structure, security, and anything else.

Void in Vibe Coding

As someone with a couple of years of experience using tools like GitHub Copilot and Cursor to write code in professional and personal settings across small and large teams, I have observed some concerns, starting with myself. So I did some research to investigate and understand the short and long-term implications of ‘Vibe Coding’.

Short term

In the short term, say like 6 months to 1 year:

  1. Developers would deploy code that works, but they don’t understand it, so they can’t really debug or optimize, or even maintain

  2. Developers start losing touch with their critical thinking mindsets and start finding difficulty writing, debugging code.

I have personally experienced these issues. When you’re moving fast and using genAI/Vibe coding tools, you end up having spaghetti codebase if you’re not very careful, and you start losing your skills of meticulous investigation since you copy and paste with very light review as far as it works.

Long term

In the long term, say 2+ years:

  1. Technical debt: Due to the fact that the code does not follow a specific structure, style, or principles. This affects scaling, maintenance, and optimizations

  2. Security issues: Due to the fact that the code might have a lot of security vulnerabilities that the team has no idea of, because they don’t even understand the code in the first place.

  3. Skill erosion: Increases at this point, because developers who haven’t done any decent critical thinking, code review, or debugging in about 2 years will lose a lot of those skills.

I “happened upon” (lol in 18th century Shakespeare English) a tweet from Paystack’s Co-founder, Ezra, about the void prompting creates, here you go:

Working across teams, engineers might start pushing subpar code that implicates them during code reviews in professional settings where there are code reviewers; the review process helps keep sanity in the codebase, if done diligently. I think meticulous and fastidious code reviews solve the problem.


Now, keep in mind the essence of this article is to talk about the apparent ‘void’ in Vibe Coding, which does not mean it does not have its pros.

Pros of Vibe Coding

  1. Rapid prototyping: Developers can quickly build MVPs, APIs, etc, to evaluate ideas

  2. Beginner accessibility: Junior developers and non-engineers can build small apps and services

  3. Creative flow: Allows developers to try new things


It is commonly known that practice makes perfect, but I’ll go one further: continuity maintains skill. It is common among us to say things like, if you leave some knowledge field like programming or math, even in sports, if you leave football for a month, it leaves you for two. Now there is science to back this up, so it won’t be like I am making things up 🙂.

Neuroplasticity and the “Use It or Lose It” Phenomenon

Neuroplasticity is a science in Neuropsychology that describes the brain's remarkable ability to reorganize itself by forming new neural connections throughout life. This adaptability allows the brain to change in response to experience, learning, injury, or disease. Essentially, neuroplasticity is the brain's capacity to modify its structure and function, enabling it to adapt and learn new skills, or the brain's remarkable ability to reorganize itself by forming new neural connections throughout life.

The “use it or lose it” phenomenon is a key concept in neuroplasticity, stating that neural pathways and connections in the brain weaken or disappear if they are not regularly used. Conversely, frequently used pathways become stronger and more efficient. This principle highlights the brain's dynamic nature, constantly adapting based on experiences and behavior.

The whole science of Neuroplasticity and the “use it or lose it” phenomenon shows that the brain is ‘plastic’ in nature and easily changes shape based on activities and eventually becomes a habit. Concerning the void in vibe coding, just as in any other field, this principle applies. If you stop critical thinking, questioning, investigating, fastidiously writing/reviewing code, etc, you just might ‘lose it’ 🤦🏽‍♂️.

So, how do we ensure we don’t let vibe coding erode our skills, but rather enhance them?

To be clear, there will be circumstances where you just want to vibe code for various reasons, which is fine.

The solution to actually turn the void in vibe coding to actually an advantage is a simple one thorough code review. Have an architectural and coding style, and ensure you review and understand everything the coding assistant generates. That way, you’ll learn a lot of new things, improve your thought process, creativity, and critical thinking, and make improvements on the generated code as well. As Simon Willison said, and I quoted earlier in this piece, if you review and understand the generated code, then it’s no more vibe coding, but simply using the generative AI assistant as a very creative typing assistant 🤖. Also, once in a while, try writing code all by yourself without an AI assistant ⌨️.

Epilogue

The void in vibe coding is real, and there’s the science of Neuroplasticity and the “use it or lose it” phenomenon that proves this. I know from experience how difficult it is to check yourself when using an AI assistant when writing code, especially in a fast-paced environment, you easily just go with the code the assistant provides, and with time, you just might lose that skill and end up with a codebase you can’t maintain because of the technical depth created. It is also worth noting that this void is not just in vibe coding but in the use of generative AI for most tasks.

But when we review and understand the content the generative AI produces, then we actually improve and sharpen our skills and knowledge. Also, ditch the genAI once in a while and just write code the traditional way to boost your ability and capacity. Generative AI is getting better at writing code, understanding coding conventions, styles, and architecture in a project, but still, try not to use code you don’t understand. I know it’s easier said than done, but in the long run it’ll be worth it ✅.

It does feel great to be back 👽, let me know what you think of this mid-series special. We’ll be back to our series proper from next week 🦾.

⬅️ Previous Chapter

2
Subscribe to my newsletter

Read articles from Retzam Tarle directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Retzam Tarle
Retzam Tarle

I am a software engineer.