Skip to content

Comment on Vibe Coding Is Fun–But Vibe Refactoring Pays the Bills

Comments

So, I know the battle has been lost for the definition of vibe coding (https://simonwillison.net/2025/Mar/19/vibe-coding/).

But we definitely need a word that makes a distinction between a LLM autonomously generating software, and having a human ultimately curating all the code (even if they're using a LLM to generate it.)

If not vibe coding, what should we call that?

Simply coding. It's going to be AI-assisted by default. It already is for students getting into programming, and it'll take some years for old people to pick up these tools too, but I imagine we'll get there pretty soon.

Where do you draw the line though? Is it only vibe-coding if you don't touch a single line of code? If I ask Cursor agent to implement a basic refactor vs doing it by hand, does my level of "vibe" increase?

Why do we need a term anyway? Neologisms are nice for writing articles but I feel like we get lost in the weeds unnecessarily trying to categorize things. Its like trying to come up with genre names for electronic music. The more terms we create, the less useful they become.

I always thought of it as a temporary term anyway while we reconcile this technology with the status quo. In a few years I'll bet it will go back to be just "programming" or "development".

Why do we need a term anyway?

For the same reason I think it’s useful to distinguish between purely AI-generated imagery vs. using AI tooling in some specific and restricted way. e.g. if someone uses an AI de-noising program on a RAW photograph, the implications of that are entirely different from generating the entire image.

Until recently, it was not possible to generate sophisticated programs from scratch across a wide variety of problems domains without being involved in writing the code. This type of “development” is entirely unlike a more limited “AI-assisted” workflow and the implications of each are quite different.

As a viewer of artwork, how the art was produced entirely changes how I value it.

As a user of software - especially in certain categories - how the software is produced also changes how I value it, whether or not I trust it with my data, would be willing to install it in my computers, etc.

To your point, there’s a spectrum of AI involvement. But I think it’s necessary and useful to have language that helps identify software that sits on the extremes of that spectrum. Classifying things across the range is more difficult.

If don’t touch a single line of code, you aren’t coding.

Or where your customers/bosses vibe coding when they told you their requirements?

Judging by the younger group coming out of college that I interact with, it's just coding. This is just how it's done now.

It's going to be a spectrum so will be hard to divide up.

I know a crash-course-day's worth of programming language(python and C), but very strong understanding of the principles of programming. So LLMs are a godsend because I can basically write code, function by function if need be, in English.

"Create this variable, do these mathematical transformations on it with retrieved value from API, display the output of it here, also compare it to the output of everything in the test set, store differences greater than 30% to their own set, store all values in an SQLite database, create a simple GUI with a field showing each output, make a button that outputs the results to a .pdf, give it a title block with labeled results listed, etc. etc."

Does coding become vibecoding when you do it in English? hah

What do you call coding with Intellisense? What di you call coding while referencing documentation?

I find this happens for pretty much every name that doesn't actually match what it is suppose to describe.

In this case, most people have to be told what "vibe coding" is. I think hardly anyone guesses what it is by just hearing the name.

So I'm not at all surprised that people are using it to mean other things already.

pAIr coding? pAIr programming?

I actually kind of love this.

One is coding, the other is ordering.

Otherwise all my customers/bosses did vibe coding way before LLMs.

What do we call emails that have been spell checked?

What do we call automatic generated emails?

Usually spam

Yes, one is created without that personal connection while augmented with technology.

Why do we need a term for any of it, other than "coding". Before AI, I did not need different terms for coding when some devs would cowboy-code buggy slop straight to production vs. a full team doing test-driven development with dedicated QA staff on top of it, or anywhere in the middle. Vastly different qualities of work, but the same term - "coding".

So why do we need a term? What difference in action will hearing a different term drive?

On that front, I like the fact that the term "vibe coding" exists because anyone who uses that term unironically has just told me that they care more about the process than the result. Now that is information that changes my actions because it changes how seriously I take them.

Lazy coding

AG code?

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.