9 ms·
Automatic Programming
- doe88 8mo ago@antirez if you reading this, it would be insigthful I think if you could share what is your current AI workflow, the tools you use, etc. Thanks!
- antirez 8mo agoThanks, sharing a lot on X / BlueSky + YouTube but once the C course on YouTube will be finished, I'll start a new course on programming in this way. I need a couple more lessons to declare the C course closed (later I'll restart it likely, the advanced part). So I can start with the AP course.
- CraftingLinks 8mo agoLooking forward! The C course is great!
- antirez 8mo agoAppreciated :)
- dang 8mo ago[stub for offtopicness]
- jpnc 8mo agoHow does it feel to see all your programming heroes turn into Linkedin-style influencers?
- dang 8mo agoPlease don't cross into personal attack, no matter how much you dislike an article. You may not owe programming heroes or Linkedin inluencers better, but you owe this community better if you're participating in it. https://news.ycombinator.com/newsguidelines.html https://news.ycombinator.com/newsguidelines.html
- Imustaskforhelp 8mo agoYou either die as a programmer hero or live long enough to be a Linkedin-style influencer. On a more serious note, the technology & its use cases of AI are pretty dividing especially within software engineering. I would consider the fact that the financial incentives driving it and the what ~3 TRILLION $ invested in AI driving up some of this divide too.
- nvlled 8mo agoI don't see Carmack or Torvalds doing this, so it's all good (for now).
- Thanemate 8mo agoThe closest we've gone with Torvalds was using LLM's for non-important tasks.
- WillAdams 8mo agoOr Knuth.
- deleted 8mo ago[deleted]
- helloplanets 8mo agoHow big of a Carmack fan are you really, if you don't know one of his most well known takes on programming? (And you definitely don't need to be a fan.) Carmack has been heavily in favor of leveraging power tools since way back. Direct quote from the man himself: > I will engage with what I think your gripe is — AI tooling trivializing the skillsets of programmers, artists, and designers. > My first games involved hand assembling machine code and turning graph paper characters into hex digits. Software progress has made that work as irrelevant as chariot wheel maintenance. > Building power tools is central to all the progress in computers. > Game engines have radically expanded the range of people involved in game dev, even as they deemphasized the importance of much of my beloved system engineering. > AI tools will allow the best to reach even greater heights, while enabling smaller teams to accomplish more, and bring in some completely new creator demographics. > Yes, we will get to a world where you can get an interactive game (or novel, or movie) out of a prompt, but there will be far better exemplars of the medium still created by dedicated teams of passionate developers. > The world will be vastly wealthier in terms of the content available at any given cost. https://x.com/ID_AA_Carmack/status/1909311174845329874 https://x.com/ID_AA_Carmack/status/1909311174845329874
- fact_check_bot 8mo ago[flagged]
- layer8 8mo agoThe trick always was to not heroify people.Mentally putting people on a pedestal is almost always a mistake.
- Dachande663 8mo agoI used to aspire to reach the same and now I lose a bit more respect with their every drag of the AI-pipe.
- penguin_booze 8mo agoThis is why you should never meet--nor listen too much--to your heroes.
- etamponi 8mo agoThis. Thanks. It's a relief to see I am not the only one completely disappointed. I still believe that these posts are just an ad stunt to publicize their soon-to-be released AI tool. If they really believe what they're writing, it's really sad.
- permo-w 8mo agoHow does it feel to read yet another unbelievably unenlightening article about LLM usage voted to the top of the frontpage for the thousandth day in a row?
- AlexeyBrin 8mo agoI feel slightly disappointed. At the same time nobody is obliged to live like the public (or his "fans") think that person should live.
- huflungdung 8mo ago[dead]
- conartist6 8mo agoThis was just such a worthless post that it made me sad. No arguments with moral weight or clarity. Just another hollowed out shell beeping out messages of doom...
- satisfice 8mo agoIt’s not automatic programming, any more than compiling is. It’s a form of high level programming. It’s also sloppy and irresponsible. But hey, you can fake your work faster and more convincingly than ever before. Call it slop coding.
- permo-w 8mo agoHow many times are we going to reinvent the wheel of LLM usage and applaud? Why every day is there another LLM usage article adding essentially nothing educational or significant to the discourse voted to the top of the frontpage? Am I just jaded? It feels like the bar for "Successful article on Hacker News" is so much lower for LLM discourse than for any other subject
- on_the_train 8mo ago[flagged]
- permo-w 8mo agoVoting on articles?
- mwkaufma 8mo agocope
- cadamsdotcom 8mo agoOr call it agentic coding.. Whatever you call it, for an experienced engineer to gain so much leverage in so little time while maintaining quality, it’s vibey and a ton of fun.
- _alaya 8mo agoYes! Hooray! Automatic Programming! I embrace this new term. "Vibe coding" is good for describing a certain style of coding with AI. "Automatic programming" is what I get paid for in my 9-5, things have to work and they have to work correctly. Things I write run in real production with real money at stake. Thus, I behave like an adult and a professional. Thank you 'antirez for introducing this language.
- airbreather 8mo agoNothing has changed, it is just now, more than ever, specification is everything. It is just that for some decades now it was possible to get away with poor or lacking specification, by continually incrementing by sprints, or pivoting, or whatever. But, back in the day when systems analysts were still a person with very particular skills that might never code, specification was everything. And now, the wheel turns, and the importance of good specification appears to be the defining factor once again, all of a sudden.
- rvz 8mo ago> I'm a programmer, and I use automatic programming. The code I generate in this way is mine. My code, my output, my production. I, and you, can be proud. Disagree. So when there is a bug / outage / error, due to "automatic programming" are you ready to be first in line to accept accountability (the LLM cannot be) when it all goes wrong in production? I do not think that would even be enough or whether this would work in the long term. No excuses like "I prompted it wrong" or "Claude missed something" or "I didn't check over because 8 other AI agents said it was "absolutely right"™". We will then have lots of issues such as this case study [0] where everything seemingly looks fine at first, all tests pass but in production, the logic was misinterpreted by the LLM with a wrong keyword, [0] during a refactor. [0] https://sketch.dev/blog/our-first-outage-from-llm-written-code https://sketch.dev/blog/our-first-outage-from-llm-written-co...
- mejthemage 8mo agoI hope you aren't missing the point. My position is similar to the author. I WILL take responsibility for the code I push to production, and rather than input a prompt and roll the dice on the outcome, I am strategic in my prompts, ensuring the LLM has the right context each time I I voke it, some of that context being accurate descriptions of what I want built, and I am in charge of ensuring it has been properly vetted. Many times I will erase what the LLM has written and redo it, by myself depending on the situation. Replace "LLM" with "IDE" and re-read. The LLM is another tool. Of course tools can't be held responsible, the person wielding the tool is.
- throwdbaaway 8mo ago> Many times I will erase what the LLM has written and redo it, by myself depending on the situation. The contention here is that antirez doesn't think this is necessary anymore. 100% code gen, with the occassional "stepping in and tell the AI how to write a certain function" Your position is more balanced and quite similar to https://mitchellh.com/writing/non-trivial-vibing https://mitchellh.com/writing/non-trivial-vibing
- antirez 8mo ago> So when there is a bug / outage / error, due to "automatic programming" you are first in line and ready to accept accountability when it all goes wrong in production? Absolutely yes. Automatic programming does not mean software developers are no longer accountable for their errors. Also because you can use AP in order to do ways more QA efforts than possible in the past. If you decide to just add things without a rigorous process, it is your fault.
- margorczynski 8mo agoVibe coding is an idiotic term and it's a shame that it stuck. If I'm a project lead and just giving directions to the devs I'm also "vibe coding"? I guess a large of that is that 1-2 years ago the whole process was much more non-deterministic and actually getting a sensible result much harder.
- nubg 8mo agoI think if a manager just gave some high order instructions and then went mostly handsoff until teammembers started quitting, dying etc, only then he steps in, that would be vibe managing. Normal managing would be much more supervision and guidance through feedback. This aligns 100% with TFA.
- slfreference 8mo agoSculpt coding?? Sculding?? Rice by any other name??
- xixixao 8mo agoThis is a classic false dichotomy. Vibe coding, automatic coding and coding is clearly on a spectrum. And I can employ all the shades during a single project.
- pseidemann 8mo agoAI is like an instrument which can be played in various ways, different styles and intensities. One might say it's spec strumming.
- treetalker 8mo agoDistilled: > Users should claim the output of LLMs as their own, for the following reason. LLMs are tools; tools can be used with varying degrees of skill; the output of tools (including LLMs) is a function of the user's skill; and therefore the output is attributable to and belongs to the user. > Furthermore, we should use tools, including LLMs, actively and mindfully. We shouldn't switch off our brains and accept the output uncritically. We should iterate and improve as we go along. I agree with you that the author seems to inappropriately convert differences in degree of skill into differences of kind.
- fwlr 8mo agoIt’s very healthy to have the “strong anti-disclosure” position expressed with clarity and passion.
- sandruso 8mo ago> Pre-training is, actually, our collective gift that allows many individuals to do things they could otherwise never do, like if we are now linked in a collective mind, in a certain way. The question is if you can have it all? Can you get faster results and still be growing your skills. Can we 10x the collective mind knowledge with use of AI or we need to spend a lot of time learning the old wayTM to move the industry forward. Also nobody needs to justify what tools they are using. If there is a pressure to justify them, we are doing something wrong.
- Imustaskforhelp 8mo agoPeople feel ripped off by AI & products which use AI. So this is the reason why you have to justify the tool use of AI.
- marmalade2413 8mo agoI disagree with referring to this as automatic software as if it's a binary statement. It's very much a spectrum and this kind of software development is not fully automatic. There's actually a wealth of literature on defining levels of software automation (such as: https://doi.org/10.1016/j.apergo.2015.09.013 https://doi.org/10.1016/j.apergo.2015.09.013).
- songodongo 8mo agoNot that I necessarily disagree with any of it, but one word comes to mind as I read through it: “copium”
- noodletheworld 8mo agoVibe Engineering. Automatic Programming. “We need to get beyond the arguments of slop vs sophistication..." Everyone seems to want to invent a new word for 'programming with AI' because 'vibe coding' seems to have come to equate to 'being rubbish and writing AI slop'. ...buuuut, it doesn't really matter what you call it does it? If the result is slop, no amount of branding is going to make it not slop. People are not stupid. When I say "I vibe coded this shit" I do not mean, "I used good engineering practices to...". I mean... I was lazy and slapped out some stupid thing that sort of worked. /shrug When AI assisted programming is generally good enough not to be called slop, we will simply call it 'programming'. Until then, it's slop. There is programming, and there is vibe coding. People know what they mean. We don't need new words.
- 9dev 8mo agoThat's kind of Salvatore's point though; programming without some kind of AI contribution will become rare over time, like people writing assembly by hand is rare now. So the distinction becomes meaningless.
- bsza 8mo agoThere is no perfect black or perfect white, so the distinction is meaningless, everything is gray.
- mccoyb 8mo agoa better term might be “feedback engineering” or “verification engineering” (what feedback loop do I need to construct to ensure that the output artifact from the agent matches my specification) This includes standard testing strategies, but also much more general processes I think of it as steering a probability distribution At least to me, this makes it clear where “vibe coding” sits … someone who doesn’t know how to express precise verification or feedback loops is going to get “the mean of all software”
- rtpg 8mo agoEvery time I hear someone mention they vibed a thing or claude gave them something, it just reads as a sort of admission that I'm about to read some _very_ "first draft"-feeling code. I get this even from people who spend a lot of time talking about needing to own code you send up. People need to stop apologizing for their work product because of the tools they use. Just make the work product better and you don't have to apologize or waste people's time. Especially given that you have these tools to make cleanup easier (in theory)!
- radu_floricica 8mo agoYep. And they should also raise their expectations and work on delivering better vibecoded apps. Likely also with automation.
- zahlman 8mo agoThe problem is that it's become feasible to get further in a design without caring about architecture or code quality.
- jakkos 8mo ago> Pre-training is, actually, our collective gift I feel like this wording isn't great when there are many impactful open source programmers who have explicitly stated that they don't want their code used to train these models and licensed their work in a world where LLMs didn't exist. It wasn't their "gift", it was unwillingly taken from them. > I'm a programmer, and I use automatic programming. The code I generate in this way is mine. My code, my output, my production. I, and you, can be proud. I've seen LLMs generate code that I have immediately recognized as being copied a from a book or technical blog post I've read before (e.g. exact same semantics, very similar comment structure and variable names). Even if not legally required, crediting where you got ideas and code from is the least you can do. While LLMs just launder code as completely your own.
- yuvadam 8mo agoI don't think it's possible to separate any open source contribution from the ones that came before it, as we're all standing on the shoulders of giants. Every developer learns from their predecessors and adapts patterns and code from existing projects.
- jakkos 8mo agoIf you fork an open source project and nuke the git history, that's considered to be a "dick move" because you are erasing the record of people's contributions. LLMs are doing this on an industrial scale.
- OJFord 8mo agoI don't really understand how that isn't allowed/disallowed simply on the basis of whether the licence permits use without attribution?
- FeteCommuniste 8mo agoThe hard truth is that if you're big enough (and the original creator is small enough) you can just do whatever you want and to hell with what any license says about it.
- mgaunard 8mo agoI stopped reading at "soon to become the practice of writing software". That belief has no basis at this point and it's been demonstrated not only that AI doesn't improve coding but also that the costs associated are not sustainable.
- reidrac 8mo agoI continued reading, but you're right. Why did the author feel that it was necessary to include that?
- CraftingLinks 8mo agoBecause typing in text and syntax is now becoming irrelevant and mostly taken care of by language models. Computational thinking and sematics on the other hand will remain essential in the craft and always have been.
- helloplanets 8mo agoCare to link your sources? At least one of the studies that got attention here was basically done with a bunch of programmers who had no prior experience with the tools.
- reidrac 8mo ago> Pre-training is, actually, our collective gift that allows many individuals to do things they could otherwise never do, like if we are now linked in a collective mind, in a certain way. Is not a gift if it was stolen. Anyway, in my opinion the code that was generated by the LLM is yours as long as you're responsible for it. When I look at a PR I'm reading the output of a person, independently of the tools that person used. There's conflict perhaps when the submitter doesn't take full ownership of the code. So I agree with Antirez on that part
- slim 8mo agoIt is knowledge, it can't be stolen. It is stolen only in the sense of someone gatekeeping knowledge. Which is as a practice, the least we can say, dubious. because is math stolen ? if you stole math to build your knowledge on top of it, you own nothing and can claim to have been stolen yourself
- jakkos 8mo agoAre you against copyright, patents, and IP in all forms then?
- logicprog 8mo agoI am.
- catdog 8mo agoIndependent of ones philosophical stance on the broader topic: I find it highly concerning that AI companies, at least right now, seem to be largely exempt from all those rules which apply to everyone else, often enforced rigorously.
- logicprog 8mo agoI draw from this that no-one should be subject to those rules, and we should try to use the AI companies as a wedge to widen that crack. Instead, most people people who claim that their objection is really only consistency, not love for IP spend their time trying to tighten the definitions of fair use, widen the definitions of derivative works, and in general make IP even stronger, which will effect far more than just the AI companies they're going after. This doesn't look to me like the behavior of people who truly only want consistency, but don't like IP. And before you say that they're doing it because it's always better to resist massive, evil corporations than to side with them, even if it might seem expedient to do so, the people who are most strongly fighting against AI companies in favor of IP, in the name of "consistency" are themselves siding with Disney, one of the most evil companies — from the perspective of the health of the arts and our culture — that's working right now. So they're already fine with siding with corporations; they just happened to pick the side that's pro-IP.
- dugmartin 8mo agoI have 30+ years of industry experience and I've been leaning heavily into spec driven development at work and it is a game changer. I love programming and now I get to program at one level higher: the spec. I spend hours on a spec, working with Claude Code to first generate and iterate on all the requirements, going over the requirements using self-reviews in Claude first using Opus 4.5 and then CoPilot using GPT-5.2. The self-reviews are prompts to review the spec using all the roles and perspectives it thinks are appropriate. This self review process is critical and really polishes the requirements (I normally run 7-8 rounds of self-review). Once the requirements are polished and any questions answered by stakeholders I use Claude Code again to create a extremely detailed and phased implementation plan with full code, again all in the spec (using a new file is the requirements doc is so large is fills the context window). The implementation plan then goes though the same multi-round self review using two models to polish (again, 7 or 8 rounds), finalized with a review by me. The result? I can then tell Claude Code to implement the plan and it is usually done in 20 minutes. I've delivered major features using this process with zero changes in acceptance testing. What is funny is that everything old is new again. When I started in industry I worked in defense contracting, working on the project to build the "black box" for the F-22. When I joined the team they were already a year into the spec writing process with zero code produced and they had (iirc) another year on the schedule for the spec. At my third job I found a literal shelf containing multiple binders that laid out the spec for a mainframe hosted publishing application written in the 1970s. Looking back I've come to realize the agile movement, which was a backlash against this kind of heavy waterfall process I experienced at the start of my career, was basically an attempt to "vibe code" the overall system design. At least for me AI assisted mini-waterfall ("augmented cascade"?) seems a path back to producing better quality software that doesn't suffer from the agile "oh, I didn't think of that".
- jdjdjssh 8mo ago[dead]
- orochimaaru 8mo agoAgile isn’t against spec writing. Specs can be a task in your story and so can automated tests. Both can be deliverables in your acceptance criteria. But that’s not how it went - because the human nature is to look for least effort. Which AI, least effort is the specs so that’s the “greatest thing to do” again.
- VadimPR 8mo ago"I automatically programmed it" doesn't really roll off the tongue, nor does it make much sense - I reckon we need a better term. It certainly quicker (and at times, more fun!) to develop this way, that is for certain.
- antirez 8mo agoYou will say I programmed it, there is no longer for this distinction. But then you can add that you used automatic programming in the process. But shortly there will be no need to refer to this term similarly to how today you don't specify you used an editor...
- Imustaskforhelp 8mo ago(Yes?) but the editor isn't claiming to take your job in 5 years. Also I do feel like this is a very substantial leap. This is sort of like the difference between some and many. Your editor has some effect on the final result so crediting it/mentioning it doesn't really impact it (but people still do mention their editor choices and I know some git repo's with .vscode which can show that the creator used vscode, I am unfamiliar if the same might be true for other editors too) But especially in AI, the difference is that I personally feel like its doing many/most work. It's literally writing the code which turns into the binary which runs on machine while being a black box. I don't really know because its something that I am contradicted about too but I just want to speak my mind even if it may be a little contradicted on the whole AI distinction thing which is why I wish to discuss it with ya.
- CraftingLinks 8mo agoLLMs translate specs into code, if you master conputational thinking like Antirez, you basically reduce LLMs to intelligent translators of the stated computational ideas and specifications into a(ny) formal language + the typing. In that scenario LLMs are a great tool and speedup the coding process. I like how the power is in semantics, whereas syntax becomes more and more a detail (and rightfully so)!
- 8mo ago
- laserlight 8mo agoHave we ever had autocomplete programming? Then why have a new term for LLM-assisted programming?
- falloutx 8mo agoMay be a language issue but "Automatic" would imply something happening without any intervention. Also, I dont like that everyone is trying to coin a term for this but there is already a term called lite coding for this sort of a setup, I just coined it.
- keepamovin 8mo agoThank you. I and you can be proud. Yes we can! :) I posted yesterday about how I'd invented a new compression algorithm, and used an AI to code it. The top comment was like "You or Claude? ... also ... maybe consider more than just 1-shotting some random idea." This was apparently based on the signal that I had incorrectly added ZIP to the list of tools that uses LZW (which is a tweak of LZ78, which is a dictionary version of the back-reference variant by the same Level-Ziv team of LZ77, the thing actually used in Zip). This mistake was apparently signal that I had no idea what I was doing, was a script kiddie who had just tried to one shot some crap idea, and ended up with slop. This was despite the code working and the results table being accurate. Admittedly the readme was hyped and that probably set this person off too. But they were so far off in their belief that this was Claude's idea, Claude's solution, and just a one-off that it seemed they not only totally misrepresented me and my work, but the whole process that it would actually take to make something like this. I feel that perhaps someone making such comments does not have much familiarity with automatic programming. Because here's what actually happened: the path to get from my idea (intuited in 2013, but beyond my skills to do easily until using AI) was about as far from a 'one-shot' as you can get. The first iteration (Basic LZW + unbounded edit scripts + Huffman) was roughly 100x slower. I spent hours guiding the implementation through specific optimization attempts: - BK-trees for lookups (eventually discarded as slow). - Then going to Arithmetic coding. First both codes + scripts, later splitting. - Various strategies for pruning/resetting unbounded dictionaries. - Finally landing on a fixed dict size with a Gray-Code-style nearest neighbor search to cap the exploration. The AI suggested some tactical fixes (like capping the Levenshtein table, splitting edits/codes in Arithemtic coding), but the architectural pivots came from me. I had to find the winning path. I stopped when the speed hit 'sit-there-and-watch-it-able' (approx 15s for 2MB) and the ratio consistently beat LZW (interestingly, for smaller dics, which makes sense, as the edit scripts make each word more expressive). That was my bar: Is it real? Does it work? Can it beat LZW? Once it did, I shared it. I was focused on the bench accuracy, not the marketing copy. I let the AI write the hype readme - I didn't really think it mattered. Yes, this person fixated on a small mistake there, and completely misrepresented or had the wrong model of waht it actually took to produce this. I believe that kind of misperception must be the result of a lack of familiarity with using these tools in practice. I consider these kind of "disdain from the unserious & inexperienced" to be low quality, low effort comments than essentially equate AI with clueless engineers and slop. As antirze lays out: the same LLMs depending on the human that is guiding the process with their intuition, design, continuous steering and idea of software. Maybe some people are just pissed off - maybe their dev skills sucked beofre AI, and maybe they still suck with AI, and now they are mad at everything good people are doing with AI, and AI itself? Idk, man. I just reckon this is the age where you can really make things happen, that you couldn't make before, and you should be into and positive. If you are a serious about making stuff. And making stuff is never easy. And it's always about you. A master doesn't blame his tools.
- prorez 8mo agoFriendly reminder that almost nobody is working this way now. You (reader) don't have to spend 346742356 tokens on that refactor. antirez won't magically swoop in and put your employer out of business with the Perfect Prompt (and accompanying AI blog post). There's a lot of software out there and MoltBook isn't going to spontaneously put your employer out of business either. Don't fall into the trap of thinking "if I don't heavily adopt Claude Code and agentic flows today I'll be working at Subway tomorrow." There's an unhealthy AI hype cottage industry right now and you aren't beholden to it. Change comes slowly, is unpredictable, and believe it or not writing Redis and linenoise.c doesn't make someone clairvoyant.
- 9dev 8mo agoPutting your head in the sand and ignoring it all isn't a good strategy either. Like it or not, AI will be a part of the rest of your career in some quantity. Not just because we collectively decide that we want to use these tools, but because tools that undeniably provide a huge productivity boost when used correctly are something the economy cannot ignore. My advice would be to avoid feeling compelled to try every new tool immediately, but at least try to stay aware of major developments. A career in software engineering also dooms you to life-long learning in a very fast changing environment. This is no different. Agents are tools that work quite differently from what we're used to, and need cognitive effort and learning to wield effectively. Waking up one day to realise you're now expected to work naturally in tandem with an AI agent but lack the experience is not a far-fetched scenario.
- catdog 8mo agoLike with most technological change I think there is no need for FOMO. You run into problems if you completely ignore already established and proven tools and practices for years to come but you don't have to jump onto every "this changes everything, trust me bro" hype.
- alecco 8mo ago> if vibe coding is the process of producing software without much understanding of what is going on (which has a place, and democratizes software production, so it is totally ok with me) Strongly disagree. This is a huge waste of currently scarce compute/energy both in generating that broken slop and in running it. It's the main driver for the shortages. And it's getting worse. I would hate a future without personal computing.
- rtafs155 8mo ago"When the process is actual software production where you know what is going on, remember: it is the software you are producing. Moreover remember that the pre-training data, while not the only part where the LLM learns (RL has its big weight) was produced by humans, so we are not appropriating something else." What does that even mean? You are a failed novelist who does not have ideas and is now selling out his fellow programmers because he wants to get richer.
- norir 8mo ago> I'm a programmer, and I use automatic programming. The code I generate in this way is mine. My code, my output, my production. I, and you, can be proud. I disagree. The code you wrote is a collaboration with the model you used. To frame it this way, you are taking credit for the work the model did on your behalf. There is a difference between I wrote this code entirely by myself and I wrote the code with a partner. For me, it is analogous to the author of the score of an opera taking credit for the libretto because they gave the libretto author the rough narrative arc. If you didn't do it yourself, it isn't yours. I generally prefer integrated works or at least ones that clearly acknowledge the collaboration and give proper credit.
- kledru 8mo agoI was about to argue, and then I suddenly remembered some past situations where a project manager clearly considered the code I wrote to be his achievement and proudly accepted the company's thanks.
- iamsaitam 8mo agoOr for another analogy, just substitute the LLM for an outsourced firm. Instead of hiring a firm to do the work, you're hiring a LLM.
- Craighead 8mo agoHow many JavaScript libraries does the average fortune 1000 developer invoke when programming?
- wernsey 8mo agoThat average fortune 1000 developer is still expected to abide by the licensing terms of those libraries. And in practice, tools like NPM makes sure to output all of the libraries' licenses.
- catdog 8mo agoAlso it's not only the work of "the model" it's the work of human beings the model is trained on, often illegally.
- conartist6 8mo agoDescribes appropriation and then says "so it's not appropriation". Wat.
- heavyset_go 8mo agoA reminder that that your LLM output isn't your intellectual property no matter how much effort you feel went into its prompting. Copyright protects human creations and the US Copyright Office has made it clear that AI output cannot be copyrighted without significant creative alterations from humans of the output after it is generated.
- CraftingLinks 8mo agoThere are other ways to protect code assets than through Copyright.
- mentalgear 8mo agoI prefer "LLM-assisted programming" as it captures the value/responsibilty boundary pretty exactly. I think it was coined by simonw here, but unfortuantely "vibe coding" become all encompassing instead of proper software engineers using "LLM-assistant" to properly distinguish themselves from vibe bros with very shallow knowledge.
- jll29 8mo agoIn the 1950s/1960s, the term "automatic programming" referred to compiler construction: instead of writing assembler code by hand, a FORula TRANslator (FORTRAN) could "magically" turn a mathematical formula into code "by itself". "4GL" was a phase in the 1980s when very high level languages very provided by software companies, often integrating DB access and especially suited for particular domains. The idea was that one could focus more on the actual problem rather than having to write boilerplate needed to solving it. LLMs permit to go from natural language specification to draft implementation. If one is lucky, it runs and produes the desired results right away; more often, one needs to revise the code base iteratively, again navigated by NL commands, to fix errors, to change the design based on reviewing the first shot at it, to add features etc.
- layer8 8mo agoI don’t think that is a good term. We generally designate processes as “automatic” or “automation” that work without any human guidance or involvement at all. If you have to control and steer something, it’s not automatic.
- motoboi 8mo agoWe maybe witnessing the last generation of master software artisans like antirez. This is beautiful to see, their mastery harnessing the power of the intelligent machine tools to design, understand and build. This is like seeing a master of image & light like michelangelo receiving a camera, photoshop and a printer. It's an exponential elevation of the art. But to become a master like michelangelo one had to dedicate herself to the craft of manually mixing and applying materials to bend and modulate light, slowly building and consolidating those neural pathways by reflection and, most of all, practice, until those skills became as natural as getting up or bringing a hand to the mouth. When that happened, art flowed from her mind to the physical world and the body became the vessel of intuition. A master like antirez had to wrap his head around concepts alien to the human mind. Bits, bytes, arrays, memory layout, processors, compilers, interfaces, abstractions, constraints, types, concurrency do not exist in the savannas that forged brains. Had to comprehend and learn to use his own cognitive capabilities and restrictions to know at what level to break the code units and the abstraction boundaries. At the very top, master this in a level so high that software became like Redis: beautiful, powerful and so elevated in the art that it became simpler, not more complex. It's Picasso drawing a dog. The intelligent software building machines can do things no human manually can (given the same time, humans die, get old or get bored), but they are not brush and canvas. They function in another way, the mind needs other paths to master them. The path to master them is not the same path to master artisanal software building. So, this new generation, wanting to build things not possible to the artisan, will become masters of another craft, one we right now cannot even comprehend or imagine, in the same way michelangelo could never imagine the level of control over light the modern photography masters have. Me, not a master, but having dedicated my whole life to artisanal software building, am excited to receive and use the new tools, to experiment the new craft. Also frightened by the uncertainty of this new world. What a time to be alive.
- roncesvalles 8mo agoNot really. >A master like antirez had to wrap his head around concepts alien to the human mind. Bits, bytes, arrays, memory layout, processors, compilers, interfaces, abstractions, constraints, types, concurrency do not exist in the savannas that forged brains. You still need to know these things if you're doing anything more complicated than making some CRUD dashboard. LLMs assist with some code generation, and assist with some knowledge lookup. That's pretty much it. What seems to be the case is that you need to know everything you needed to know before, and* become good at leveraging AI tooling to make you go faster. *Even this is optional. There is absolutely nothing stopping anyone from just ignoring everything about AI and keep developing software like pre-2022. The efficiency difference isn't even significance in the grand scheme of things. It's not like people had reams of perfect software specs just lying around waiting to be implemented. That's just not how people develop software; usually the spec emerges while you're writing the program.
- rellfy 8mo agoI arrived at a very similar conclusion since trying Claude Code with Opus 4.5 (a huge paradigm shift in terms of tech and tools). I've been calling it "zen coding", where you treat the codebase like a zen garden. You maintain a mental map of the codebase, spec everything before prompting for the implementation, and review every diff line by line. The AI is a tool to implement the system design, not the system designer itself (at least not for now...). The distinction drawn between both concepts matters. The expertise is in knowing what to spec and catching when the output deviates from your design. Though, the tech is so good now that a carefully reviewed spec will be reliably implemented by a state-of-the-art LLM. The same LLM that produces mediocre code for a vague request will produce solid code when guided by someone who understands the system deeply enough to constrain it. This is the difference between vibe coding and zen coding. Zen coders are masters of their craft; vibe coders are amateurs having fun. And to be clear, nothing wrong with being an amateur and having fun. I "vibe code" several areas with AI that are not really coding, but other fields where I don't have professional knowledge in. And it's great, because LLMs try to bring you closer to the top of human knowledge on any field, so as an amateur it is incredible to experience it.
- wasmainiac 8mo ago> Zen coders Please don’t, it’s just my day job.
- kevmo314 8mo ago> review every diff line by line If you're this meticulous is it really any faster than writing code manually? I have found that in cases where I do care about the line-by-line it's actually slower to run it through Claude. It's only where I want to shovel it out that it's faster.
- rellfy 8mo agoYes, I definitely think it's much faster than writing it manually. For a few weeks now, >95% of the code I've authored wasn't written manually. Sometimes you only care about the high level aspect of it. The requirements and the high-level specification. But writing the implementation code can take hours if you're unfamiliar with a specific library, API or framework. "review every diff line by line" is maybe not the best way to have described it, I essentially I meant that I review the AI's code as if it were a PR written by a team member, so I'd still care about alignment with the rest of the codebase, overall quality, reasonable performance, etc.
- Havoc 8mo ago>Vibe coding is the process of generating software using AI without being part of the process at all. Even the most one shot prompt vibecoding is still getting high level intent from the person and then testing it in person. There is no "without being part of the process at all". And from there its a gradient as to how much input & guidance is given. This entire distinction he's trying to make here just doesn't make sense frankly. Trying to impose two categories on something that is clearly a continuous spectrum.
- keyle 8mo agoIt's getting silly. Every 3 days someone is trying to coin a new term for programming. At the end of the day, you produce code for a compiler to produce other code, and then eventually run it. It's called programming. When carpenters got powertools, they didn't rename themselves automatic carpenters. When architects started working with CAD instead of paper, they didn't become vibe architects, even though they literally copy-paste 3/5 of the content they produce. Programming is evolving, there is a lot of senseless flailing because heads is spinning.
- kris_builds 8mo agoThere's a hidden assumption in the waterfall vs agile debate that AI might actually dissolve: the cost of iteration. Waterfall made sense when changing code was expensive. Agile made sense when you couldn't know requirements upfront. But what if generating code becomes nearly free? I've been experimenting with treating specs as the actual product - write the spec, let AI generate multiple implementations, throw them away daily. The spec becomes the persistent artifact that evolves, while code is ephemeral. The surprising part: when iteration is cheap, you naturally converge on better specs. You're not afraid to be wrong because being wrong costs 20 minutes, not 2 sprints. Anyone else finding that AI is making them more willing to plan deeply precisely because execution is so cheap that plans can be validated quickly?
- deleted 8mo ago[deleted]
- sibellavia 8mo ago> That said, if vibe coding is the process of producing software without much understanding of what is going on [...], automatic programming is the process of producing software that attempts to be high quality and strictly following the producer's vision of the software [...], with the help of AI assistance. He is absolutely right here, and I think in this article he has "shaped" the direction of future software engineering (which is already happening actually): we are moving closer and closer to a new way of writing code. But this time, for real. I mean that it will increasingly become the standard. Just as in the past an architect used to draw every detail by hand, while today much of the operational work is delegated to parametric software, CAD, BIM, and so on. The architect does not "draw less" because they know less, but because the value of their work has shifted. This is a concept we've repeated often in recent months, with the advent of Opus 4.5 and 5.2-Codex. But I think that here antirez has given it the right shape and also did well to distinguish it from mere vibecoding, which, as far as I'm concerned, are two radically different approaches.
- kklisura 8mo agoI think Antirez is gonna change his tune about this as soon as OpenAI et.al. start requesting royalties from software you built using their AI.
- pgwhalen 8mo agoI think he would too, but they’re obviously not going to do that.
- kklisura 8mo ago"OpenAI is exploring licensing models tied to customer outcomes, including pharma partnerships." [1] "OpenAI CFO Sarah Friar sketched a future in which the company's business models evolve beyond subscriptions and could include royalty streams tied to customer results." [1] "Speaking on a recent podcast, Friar floated the possibility of "licensing models" in which OpenAI would get paid when a customer's AI-enabled work produces measurable outcomes." [1] $30 a month or whatever amount of $$ per token does not justify the valuation of these companies. But you know what does? 5% of revenue from your software that their AI helped you to create. I can see world in which you must state you've used their AI to write code and you must use specific licenses to that code, which allows them part of your revenue. [1] https://www.businessinsider.com/openai-cfo-sarah-friar-future-revenue-sources-2026-1 https://www.businessinsider.com/openai-cfo-sarah-friar-futur...
- pgwhalen 8mo agoThis won’t happen with general software though, that ship has sailed, the space is too competitive.
- CraftingLinks 8mo agoI hope they try.
- znnajdla 8mo agoNo problem, we'll switch to EU/Chinese models in a blink. Just started using Kimi 2.5 a couple days ago and it's almost on par with Opus 4.5.
- amelius 8mo agoThis raises some questions: * Does the spec become part of the repository? * Does "true open source" require that? * Is the spec what you edit?
- 4corners4sides 8mo agoThis one touches on the metaphysical union of all prior minds and the implicit “natural” element to “artificial” intelligence. Yes, indeed sometimes reading LLM written text you cannot help but wince and cringe at the “contrastive framing” writing style (it’s not X, it’s Y) but these models did not arise from some kind man-hating void in space. They arose by learning from everything that can possibly be learned from that humans have made available digitally. Antirez says that “Pre-training is, actually, our collective gift that allows many individuals to do things they could otherwise never do, like if we are now linked in a collective mind, in a certain way”. This is borderline cultish but I can’t help but agree with it.
- freestingo 8mo agoI do not agree at all with his contrasting definitions of “vibe coding” vs “automatic programming”. If a knowledgeable software engineer can say that Claude’s code is actually theirs, so can everyone else. Otherwise, we could argue that Hell has written a book about itself using Dante Alighieri as its tool, given how much we still do not know about our brains, language, creative process, etc.