6 ms·
When I first heard vibe coding, it sounded like a meme, a joke. But people took it seriously. Andrej Karpathy was still in the process of defining it when the p
by firefoxd 1y ago
When I first heard vibe coding, it sounded like a meme, a joke. But people took it seriously. Andrej Karpathy was still in the process of defining it when the phrase took a life of its own. I'm surprised it's making it into a book barely two months after it was coined.
If vibe coding somehow becomes the method of programming, then code will become obsolete. Hear me out:
Why code when you can just ask the computer to do what you want and get the results. The coding part is abstracted deep in the background where no human needs venture.
When vibe coding dominates, It's not that people won’t know how to code anymore, it's that coding becomes irrelevant. The same way that there are people who still know how to ride horses, but it's irrelevant to transportation. When vibe coding reaches its peak, programming languages will evolve into something unrecognizable. Why do we need a human readable programming language when no human needs to read it? I picture a protocol agreed upon by two computers, never released to us humans.
- area51org 1y ago> Why code when you can just ask the computer to do what you want and get the results. Because then you won't know the design of the code or how it even works. The hard part of coding isn't writing the code itself. It's the design of the code that takes skill, and if you leave that part completely up to AI, you are taking your life in your hands. Bad idea.
- firefoxd 1y agoNot saying it's a good idea. In fact, I watched someone on twitter debugging code. When the application errored out, he regenerated the code, including the issue in the prompt. Something else failed, the prompt was updated, and code regenerated. Now that of course was for visible errors. When the person building the application doesn't know or care, the application will still be deployed.
- dirtyhippiefree 1y ago> When the person building the application doesn't know or care, the application will still be deployed. Resistance is futile. We will adapt.
- soraminazuki 1y agoI recently had the pleasure of reviewing AI-generated Ruby code at work. It was so nonsensical and couldn't manage to get basic map and reduce right. I didn't initially know it was AI generated, and I was at a loss of words regarding what I should write as feedback. Something needs to be done. It should be uncontroversial to require solid understanding of fundamentals from software professionals, yet here we are discrediting knowledge by calling such things "gatekeeping." It's reckless behavior as the industry is hellbent on hoarding as much personal information as it possibly can. Information that any responsible professional should be working to keep secure at the very least.
- Root_Denied 1y agoThis is especially true when you start vibe coding critical systems that human life depends on. Emergency services, hospital infrastructure, financial systems (like Social Security, where a missed check may actually mean people starve) are all places where you don't want to fail because of a weird edge case. It also feeds into fixing those edge cases requiring some understanding of design in general and also the design implemented. Then there's the question of liability when something goes wrong. LLMs are still computers right now: they do exactly, and only what you tell them to do.
- sli 1y ago> Because then you won't know the design of the code or how it even works. I would argue that this is already true for people who practice vibe coding, because otherwise they'd spend less time just banging it out themselves instead of twisting prompts to get something that mostly works and needs hours of debugging.
- jimbokun 1y agoI can imagine a world where backend APIs are secured, hardened, protected against DOS attacks, etc. Then any end users with the proper credentials can vibe code UIs (web apps, iOS and Android apps) that call those APIs to their heart's content. We may also need operating systems and web browsers hardened in new ways to survive vibe coded apps.
- nitwit005 1y agoSaS products that support custom code are already basically like that. Salesforce has multiple shockingly large documents on all the limits they enforce: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_gov_limits.htm https://developer.salesforce.com/docs/atlas.en-us.apexcode.m... That does mean it's hard to break the app, but it also means people quite frequently run into those limits.
- verzali 1y agoFew people bother with assembly these days.
- Timber-6539 1y agoYour instincts are correct about it being a meme.
- simonw 1y agoThat's why I'm keen on keeping vibe coding to it's original definition as a fun way to prototype some ideas if you don't care at all if the code is robust, secure, maintainable etc. If you're writing code for production, even if you get an LLM to put together bits of it for you, that's programming. It's pretty much copy-and-paste-for-stackoverflow if StackOverflow had a massively larger library of snippets that almost always included the thing you needed at that exact moment. Professional programmers still need to take responsibility for making sure the code they are producing actually works!
- firefoxd 1y agoNow imagine it's not professional programmers writing this code. The same way it's not professional film makers making Mr Beast videos. The quality is not even part of the equation.
- esafak 1y agoTo spell out the obvious, the most subscribed channel on Youtube belongs to an 'amateur' -- that's what people are choosing. People don't care. But that's because that's what Youtube incentivizes; Mr.Beast just optimized his content for the medium.
- CamperBob2 1y agoOf course, what you're describing is just machine language, but at a different level of abstraction. How many C++ coders these days can read x86 or ARM assembly? Not many, because they almost never need to. It's well past time for traditional "high level" programming languages to meet the same fate.
- dttze 1y agoFormal language to formal language provides a level of determinism. I know what kind of code gcc will generate for a loop, generally. But if I care about vectorization or whatever, I will need to inspect the assembly to ensure it is generating it correctly (or write it myself). Natural language to formal language does not provide that. How the hell would I debug or operate a system by just looking at a prompt? I can't intuit which way the LLM generated anything. I will always have to be able to read the output. AFAICT, the only people who say you can remove code are people who don't code. I never hear this from actual devs, even if they are bullish on AI.
- CamperBob2 1y agoYeeeeah, determinism... going to have to leave that behind, I'm afraid. Otherwise you will be outcompeted by people who do. If you thought test-driven development was important before, you ain't seen nothin' yet. SIMD optimization is already handled well by the current generation of models [1]. There will be no point in doing that by hand before too long. An exercise for antiquarians, like building radios from vacuum tubes. I never hear this from actual devs, even if they are bullish on AI. You're hearing it from one now. Five years from now the practice of programming will look quite different. In ten to fifteen years it will be unrecognizable. 1: https://github.com/ggml-org/llama.cpp/pull/11453 https://github.com/ggml-org/llama.cpp/pull/11453
- dttze 1y agoYou said: > How many C++ coders these days can read x86 or ARM assembly? Not many, because they almost never need to. It's well past time for traditional "high level" programming languages to meet the same fate. There is a misunderstanding, let me rephrase. How will I operate and maintain that software without a high level language to understand it? Or do you think we will all just be debugging asm? The same language you just said people don't bother to learn? Or am I supposed to debug the prompt, which will nondeterministically change the asm, which I can't verify because I can't read it? Doesn't matter how it evolves, some easy to read for humans high level language that deterministically generates instructions will always be needed. To try and replace that is kind of counter productive, imo. LLMs are good at generating high level language. Leave the compilers to do what they are good at.
- Izkata 1y ago> Why code when you can just ask the computer to do what you want and get the results. The coding part is abstracted deep in the background where no human needs venture. Even Star Trek has engineers with programming experience who can dig in when the voice-controlled computer goes awry.