Blog

Thoughts, code, and life

Geeks or freaks? Vibe-coders.

May 14, 2025
Geeks or freaks? Vibe-coders.

Ever heard of vibe-coding?

This term was recently introduced by Andrej Karpathy (one of my favourite AI field contributors).

Vibe coding is a programming approach that uses AI, particularly large language models (LLMs), to generate code by describing the desired functionality in natural language, rather than manually writing code. In essence, you tell an AI what you want, and it attempts to produce the code for you.

I hope that those of you who have ever tried vibe-coding (intentionally or unintentionally) have already gone through feelings of joy and yet despair and can relate to what I'm about to say.
Vibe-coding is not a bad thing if you know the vibe. If you're vibe-coding a web application that you've done dozens of times before, there's nothing wrong with it. You know what you're doing, and I would even sometimes call it optimising your time or experimenting.

Unfortunately, this is not the case for most vibe-coders and sometime in the near future we will encounter and use applications that have been purely vibe-coded without proper future debugging because of the nonsense that this application will have in the codebase.

Additionally, the fact that outside of the CS community it is now possible to code without any programming knowledge has made the term silly when applied to those who rely entirely on AI (which is still very far from what we should be doing). In most cases, it's important to know what's going on in the codebase to avoid creating vulnerable or low-performing systems.

Bottom line: learn how to vibe-code properly so you don't get overpowered by crap AI coded for you.