News: 1763975767

  ARM Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life (Terry Pratchett, Jingo)

Vibe coding: What is it good for? Absolutely nothing (Sorry, Linus)

(2025/11/24)


Opinion It is a truth universally acknowledged that a singular project possessed of prospects is in want of a team. That team has to be built from good developers with experience, judgement, analytic and logic skills, and strong interpersonal communication. Where AI coding fits in remains strongly contentious. Opinion on vibe coding in corporate IT is more clearly stated: you're either selling the stuff or steering well clear.

The reasons are simple. Code generation is sold on promises of fast results from natural language prompts, not requiring specialist knowledge of how code actually works. This much is somewhat true, and impressive two-minute demos, if well chosen, are certainly possible. In this respect, vibe coding is much like the low-code/no-code movement that's been around for 30 years.

Vibe coding really falls down thereafter because it is non-deterministic. Low/no-code platforms have consistency in how their interface responds to user input. Iterative tweaking works, from fiddling with fonts to restarting with a completely new approach. Vibe coding may give you different results over time for exactly the same prompts. Trying to tweak results is highly dependent on how the AI chooses to interpret your requests, and on how strongly it's attached to its original idea. Which it often is.

[1]

Let's not get started on how you maintain a code base that no human has ever understood when your tools are constantly mutating. If there aren't many production apps under the low/no-code banner after 30 years, the prospects for vibe coding are dim indeed. Even if vibe coding fulfills its most basic function, of quickly producing a prototype model to explore ideas, it will hit the principle that prototypes can't be killed, instead mutating into monsters. Once something looks functional, the pressure from outside to build on it immediately is usually immense. That's bad enough in any environment, but the vibe really won't dig it, man.

[2]

[3]

In one respect, though, vibe coding does have an attractive attribute that is difficult to find elsewhere. For the first time since instant-on home computers that fell straight into a BASIC interpreter, it's possible to make things happen with a bit of typing as a very naive user. Linus Torvalds sees this as a saving grace, [4]comparing it last week to the days of typing in programs from the back of computer magazines. That's not wrong – if you were there, you'll remember how nightmarish it was to fix logic or printing errors in hundreds of lines of gnomic code – but it almost completely misses the point.

BASIC met criticisms similar to vibe coding back in the day, being seen as encouraging bad programming practices and unstructured, impenetrable, unmaintainable code. Elder god Edsger Dijkstra argued in [5]"Go To Statement Considered Harmful" that this was the progenitor of this critique, and the phrase resonated down the decades. Which is like saying that children who pick up a musical instrument to see what they can do, or who are taught by teachers with no formal training, will make terrible music. Often, that's true. The thing is, that's where most good musicians start. It's where music starts. If you find you love it, you get better. Same with BASIC.

[6]Devs gripe about having AI shoved down their throats

[7]Linus Torvalds is OK with vibe coding as long as it's not used for anything that matters

[8]Software engineer reveals the dirty little secret about AI coding assistants: They don't save much time

[9]AI companies keep publishing private API keys to GitHub

Vibe coding has no such path. That's not its fault, not entirely. To get to the "doing something useful" stage in a modern computing environment means producing complex code with APIs and structures and no end of confectionery around the core logic. Hacking away at iterative prompts won't build the internal framework of understanding that building code does, and without the dopamine hit of sudden understanding that fuels so many early coding experiences, the process won't reward the autodidact to keep going for more of the same.

Vibe coding that doesn't code would be a much better idea. Stuff that suggests where to start, what to learn, and helps build an environment where you can get results that quickly and clearly depend on discovering and trying out ideas. These tools exist already. They're called books. They're called tutorials.

[10]

It would be nice to be instantly productive while learning the ropes, and no tutorial or book will offer the specificity of a unique, innovative outcome. It's not clear that LLMs could do this either reliably or at all, but it would be an interesting experiment. Fortunately, there is a way to do this, and it's called joining a supportive and experienced team prepared to mentor you and feed you just the right tasks to build your skills.

If you don't know much about the realities of coding, vibe coding sounds great. That's one of generative AI's biggest risk factors, the ability to inspire confidence independent of reality. Likewise, if you remember the days when you didn't know much about coding, vibe coding sounds like a good way to help others take the same steps you did.

Both of these overlook how much of learning and coding is about motivation, reward, comprehension, understanding the future, and most importantly doing all this amid other people. That's the real vibe, man. ®

Get our [11]Tech Resources



[1] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/aiml&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=2&c=2aSQ6yOR6HEa2fS2Yd-fqZwAAAAY&t=ct%3Dns%26unitnum%3D2%26raptor%3Dcondor%26pos%3Dtop%26test%3D0

[2] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/aiml&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44aSQ6yOR6HEa2fS2Yd-fqZwAAAAY&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0

[3] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/aiml&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33aSQ6yOR6HEa2fS2Yd-fqZwAAAAY&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0

[4] https://www.theregister.com/2025/11/18/linus_torvalds_vibe_coding/

[5] https://dl.acm.org/doi/10.1145/362929.362947

[6] https://www.theregister.com/2025/11/19/ai_force_feeding/

[7] https://www.theregister.com/2025/11/18/linus_torvalds_vibe_coding/

[8] https://www.theregister.com/2025/11/14/ai_and_the_software_engineer/

[9] https://www.theregister.com/2025/11/10/ai_companies_private_api_keys_github/

[10] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/aiml&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44aSQ6yOR6HEa2fS2Yd-fqZwAAAAY&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0

[11] https://whitepapers.theregister.com/



Dinanziame

Both of these overlook how much of learning and coding is about motivation, reward, comprehension, understanding the future, and most importantly doing all this amid other people .

I'm pretty sure a lot of coders would insist that an important part of coding is doing it away from other people. Now discuss working from home vs returning to the office.

Doctor Syntax

"I'm pretty sure a lot of coders would insist that an important part of coding is doing it away from other people."

It seems to have worked out pretty well for the Linux kernel and a lot of other FOSS projects.

There's a line of argument to suggest that "doing all this amid other people" hasn't worked out too well for some commercial development.

Anonymous Coward

AI is inherently Dunning-Kruger promoting in its users.

werdsmith

It's a useful coding assistant for a less experienced developer. It can help them along, but it can't safely do their work.

It's not so useful for an experienced old hack who has explored virtually every algorithm, every pattern and thoroughly knows the way around the library landscape. However, it can relieve some of their mentoring workload.

I believe this because I am the former and I work with the latter.

zimzam

I don't think that's really true either. If it can give you different code with the same prompt, it can certainly give you different assistance with the same prompt. All of the same problems exist.

Have we been here before?

ITMA

Who remembers the launch of software called "The Last One".

Trumpeted as "the last software you'll ever need to buy"... Or something like that:

https://en.wikipedia.org/wiki/The_Last_One_(software)

Re: Have we been here before?

Doctor Syntax

"the last software you'll ever need to buy"

It was a bit ahead of its time. FOSS took a little longer to arrive.

different results over time for exactly the same prompts

Neil Barnes

And there's the problem right there... when I talk to a computer I want the same result every time.

Give me a precis of a library, sure: but don't try and incorporate it into my code, thank you very much.

Re: different results over time for exactly the same prompts

Felonmarmer

To someone who gives work briefs to real programmers, it's the same thing. See it's not meant as a tool for you even if you have to type the prompts. It's a tool for the pointy haired boss who requires you to use it. What do they care about the code not being consistent, their joy comes from delivery on time where time tends to zero.

What is important to people is what gets them their bonus, to PHBs enough dosh for a car upgrade, for their surfs - free pizza at the end of their task.

Headley_Grange

Wouldn't teaching the assistants about NASA's "Power of Ten" rules be a good start? I know they are aimed at embedded code written in C and might not be relevant for more recent "safer" languages, but to me some of the rules appear to be general enough to apply across the board. They are aimed at making written code easier to review and test, which would appear to be a necessity if something else is writing the basis for your code.

Stop anthropomorphizing AI

b0llchit

...dependent on how the AI chooses to interpret your requests...

"AI" is a statistical program than does not "choose". It is a program that merely calculates a new output on the (very) large set of inputs, where the history of inputs can be very long and some inputs may be fed noise to add variation.

Any computer running a same program using the exact same input should result in the exact same output. If that is not the case, then the computer is broken and you should buy a new one. Adding noise to the input is just obfuscation.

Re: Stop anthropomorphizing AI

Anonymous Coward

What part of "noise" being random ( or pseudorandom) do you not understand?

Re: Stop anthropomorphizing AI

Doctor Syntax

"Any computer running a same program using the exact same input should result in the exact same output. "

That was the point being made in TFA.

If the program acts in the manner of a wayward human making inconsistent choices then, in absence of more specific terminology, "choose" seems a reasonable verb to describe it.

ForthIsNotDead

As werdsmith said above, if you're experienced in the art, and your problem domain, you can do it better by yourself. I'm a lone, self-employed coder, I work mostly in C++ (embedded, from scratch projects). I use Co-pilot in VS Code, and I have to say, as an intellisense on steroids it's pretty amazing. It can write entire sections of code for me and be very accurate - mostly. It still needs to be read and checked by me - so it's arguable that it actually saves much time.

If you're new to a language AI can help as it will use language features and techniques that you weren't aware of.

Two weeks ago I managed to vibe code a Python application that allows settings to be read and installed over a modbus RS485 serial link. I know hardly anything about Python, and don't really have the desire to learn. I just wanted something quick. I ended with an app that works perfectly, including a user interface (using the Flet framework), ability to load/save settings to disk files, interrogate the device, push new settings etc. And it's cross platform. I didn't write a single line of code. I just 'vibed' with Claude in VS Code (I have a co-pilot subscription). The application works perfectly, and is cross platform.

Looking at the code, it seems quite good. All I know, it would have taken days, if not weeks, to learn the Flet GUI framework, not to mention how to do things 'properly' in Python. Using AI vibe coding, I got it done in a day and my client was absolutely astounded.

So yeah, it has it's uses. But if you're experienced in your language of choice, use it as a turbo-intellisense!

You weren't there, man

colinhoad

The best programmers in my experience are the ones who understand the guts of the machine. Being able to program - as distinct from being able to "code", which isn't really a verb I like to use - is intrinsically tied to the knowledge of how a computer works, not merely smashing tokens together to produce a toy application. I get tired of people (often on LinkedIn) saying things like "hey, remember how we used to think you needed to know assembly language to be able to program? haha wow, we've moved on since then!" as if they've said something insightful. Being able to program in assembly is still important, not so much because you need to use it (though there are still some high performance computing jobs that need it) but because of what it teaches you about how a computer works. Skipping over those fundamentals doesn't "let you focus on what matters" as a lot of these so-called thought leaders like to claim, it just makes you a sloppy programmer who will never improve.

Ho hum !!!

Anonymous Coward

In a nutshell the general opinion from the el reg community is that 'Vibe Coding' might be useful if it was just improved !!!!

Ther problem is that the improvements are many and varied which the 'AI' behind the curtain cannot do repeatably !!!

'AI' by definition changes its 'knowledge' on the basis of the data it was trained on + the prompts it 'answers'.

This is the cause of the variability of the answers you get, which is the exact thing you do not want when coding.

As we all know, this is yet another demonstration of the reality of 'AI' vs the Sales pitch !!!

It just demonstrates that 'clever pattern matching' cannot be anything more than a pretense of intelligence somewhat easiliy seen through.

A partly skilled coder assisted by a pretend 'auto-mentor' does not give me any confidence in the end product.

It is worse than scanning the 'interWebs' for code because 'AI' is so confident that the 'answer' given is right and appropriate for the needs of the coder.

Sometimes you do need to read the books and learn the hard way !!!

:)

Vibe coding

Pascal Monett

I'll believe in it when can you create a clone of Salesforce that works in every way without tinkering its insides.

In the meantime, Vibe coding is only good for managers to "show" their developers what they want. And, when the developers come back with technical issues, the manager will point to the demo and say : I made it work in two hours, so I want the result tomorrow !

Re: Vibe coding

Doctor Syntax

Have the developer present the manager with the vibe code failing the test suite.

It is not too late to turn back from the GATES of hell.
Use Linux - the free 32 bit operating system.