Vibe Coding: It's Not a Dirty Word
Vibe coding is quite often used as derogatory terminology by people who are opposing the rise of AI in software development. It’s become shorthand for “not real programming” or “lazy developers letting AI do the thinking.” But here’s the thing - the term was selected as the “Word of the Year 2025” by Collins dictionary. And the definition is not what you think it is.
What Collins Actually Says
The definition in Collins dictionary defines the term originally popularized by Andrej Karpathy as “the use of artificial intelligence prompted by natural language to assist with the writing of computer code.”
If you stop to think about it, that’s actually a quite good definition. It’s neutral and descriptive. There’s nothing in it that says “this means you are not adopting the proper practices of specifications, quality control and other aspects of modern SDLC.” It simply describes a way of working - using natural language to guide AI in writing code.
The Terminology Wars
I have to admit, that even personally I started steering towards terminology like “AI assisted software development lifecycle”, which honestly is boring, does not mean anything to anyone outside of IT industry and let’s face it - not too catchy.
And that’s the problem with the backlash. The critics loaded the term with meaning it was never designed to carry. They turned it into a straw man - implying that anyone who uses AI to write code must be abandoning all engineering rigor.
Why the Fear?
The resistance is understandable if you look at it from a certain angle. Software engineering has been built on decades of hard-won practices: code reviews, testing, architecture patterns, design principles. When someone suggests that you can “just describe what you want and the AI writes it,” it feels like an attack on the craft.
But that’s a misreading of what’s actually happening. The best practitioners of AI-assisted development aren’t throwing out engineering discipline - they’re augmenting it. The natural language prompt is just another interface. The thinking, the architecture, the understanding of trade-offs - that all still matters. Maybe even more so, because now you need to be precise enough in your communication that an AI can translate your intent into working code.
The Real Shift
What vibe coding actually represents is a fundamental shift in the developer’s role. Instead of being the person who types syntax, you become the person who thinks about systems. You describe behavior, constraints, and goals. You review, refine, and direct. You’re still the architect - you just have a very fast builder working alongside you.
At Elexive, this is how we work every day. We use Claude Code as our central development tool, and the workflow is very much about directing and reviewing rather than character-by-character coding. We still do proper architecture. We still test. We still review. We just move significantly faster.
Embracing the Term
So, with this definition, I am happy doing vibe coding from now onwards. And being proud of it.
The term has energy. It captures something real about the experience of working with AI - there’s a flow to it, a rhythm of describing, reviewing, refining. It feels different from traditional coding, and it deserves its own vocabulary.
If you’re in the camp that uses “vibe coding” as an insult, I’d encourage you to read the actual Collins definition again. It’s not describing recklessness. It’s describing the future of how software gets built.
Where Do You Stand?
Camp vibe or camp artisan coding? I think the answer for most serious practitioners will eventually be “both.” The artisan mindset - caring deeply about quality, performance, and maintainability - combined with the vibe approach of using AI as a powerful collaborator. That’s not a contradiction. That’s evolution.