9 ms·
My article on why AI is great (or terrible) or how to use it
- deergomoo 9mo agoI will never as long as I live understand the argument that AI development is more fun. If you want to argue that you’re more capable or whatever, fine. I disagree but I don’t have any data to disprove you. But saying that AI development is more fun because you don’t have to “wrestle the computer” is, to me, the same as saying you’re really into painting but you’re not really into the brush aspect so you pay someone to paint what you describe. That’s not doing, it’s commissioning.
- lawlessone 9mo agoThinking the same thing, nobodies calling the Pope a painter because he paid Michelangelo to paint a chapel. In b4 someone mentions some famous artists had apprentices under them. I might start watching golf, and everytime someone else get's the ball in the hole i'll take credit for it. "Did you see what did there? "
- quotemstr 9mo ago> not really into the brush aspect so you pay someone to paint what you describe. That’s not doing, it’s commissioning. What if I have a block of marble and a vision for the statue struggling from inside it and I use an industrial CNC lathe to do my marble carving for me. Have I sculpted something? Am I an artist? What if I'm an architect? Brunelleschi didn't personally lay all the bricks for his famous dome in Florence --- is it not architecture? Is it not art?
- deergomoo 9mo agoI would call the designing of the building art, yes. But I wouldn’t call it construction. I would also call designing a system to be fed into an LLM designing. But I wouldn’t call it programming. If people are more into the design and system architecture side of development, I of course have no problem with that. What I do find baffling, as per my original comment, is all the people saying basically “programming is way more fun now I don’t have to do it”. Did you even actually like programming to begin with then?
- somebehemoth 9mo agoI do think a huge number of people are infatuated with the idea of programming but hate the act itself. I have tried to teach a lot of people to code and it is rare to find the person who is both enthusiastic and able to maintain motivation once they realize every single character matters and yes, that bracket does have to be closed. Of course not everyone who programs AI style hate programming, but I do think your take explains a large chunk of zealotry: It has become Us v. Them for both sides and each is staking out their territory. Telling the vibe coder they are not programming hurts their feelings much like telling a senior developer all their accumulated experience and knowledge is useless if not today, for sure some day soon!
- quotemstr 9mo ago> I do think a huge number of people are infatuated with the idea of programming but hate the act itself. I have tried to teach a lot of people to code and it is rare to find the person who is both enthusiastic and able to maintain motivation once they realize every single character matters and yes, that bracket does have to be closed. I think it's legitimate that someone might enjoy the act of creation, broadly construed, but not the brick-by-brick mechanics of programming.
- diamond559 9mo agoDid the CNC lathe decide where to make the cuts based on patterns from real artists it was trained on to regurgitate a bland copy of real artists work?
- CharlesW 9mo ago> I will never as long as I live understand the argument that AI development is more fun. Some people find software architecture and systems thinking more fun than coding. Some people find conducting more fun than playing an instrument. It's not too mysterious.
- fridder 9mo agoThat is accurate for me. I have never enjoyed coding puzzles or advent of code. My version of that is diving into systems and software when it breaks. That is fun...as long as my job or income is not on the line
- thewebguyd 9mo agoI am one of those, but that's why I went into the ops side of things and not dev, although the two sides have been merging for a while now and even though I deal with infrastructure, I do so by writing code. I don't mind ops code though. I dislike building software as in products, or user-facing apps but I don't mind glue code and scripting/automation. Don't ask me to do leetcode though, I'll fail and hate the experience the entire time.
- ajcp 9mo ago->...it's commissioning. I like this. I'm going to see if my boss will go for me changing my title from Solutions Architect to Solutions Commissioner. I'll insist people refer to me as "Commissioner ajcp"
- tsukikage 9mo ago> is more fun because you don’t have to “wrestle the computer” Indeed, of all the possible things to say! AI "development" /is/ wrestling the computer. It is the opposite of the old-fashioned kind of development where the computer does exactly what you told it to. To get an AI to actually do what I want and nothing else is an incredibly painful, repetitive, confrontational process.
- emseetech 9mo agoUnderstanding memory and using a debugger is hard but I'll take that over telling an AI my grandma will die if it does something wrong.
- 9dev 9mo agoI think you're looking at it from the wrong angle. Wrestling the computer is stuff like figuring out how to recite the right incantation so Gradle will do a multi-platform fat bundle, and then migrate to the next major Gradle version. Unless you have a very specific set of kinks, tasks like these will make you want to quit your career in computers and pick up trash on the highway instead. You very likely have some of these toil problems in your own corner of software engineering, and it can absolutely be liberating to stop having to think about the ape and the jungle when all you care about is the banana.
- tsukikage 9mo agoThe hard part of software engineering, and indeed many other pursuits, is working out what it is you actually need to happen and articulating that clearly enough for another entity to follow your instructions. Using English, with all its inherent ambiguity, to attempt to communicate with an alien (charitably) mind very much does /not/ make this task any easier if the thing you need to accomplish is of any complexity at all.
- vanviegen 9mo agoYou've clearly never had to work with Gradle. :-)
- sodapopcan 9mo agoSeems some people I know who really like AI aren't particularly good with their editors. Lots of AI zealots use the "learn your tools" when they are very slow with their editors. I'm sure that's not true across the board, but the sentiment that it's not worth it to get really advanced with your editor has been pretty prevalent for a very long time. I don't care if you use AI but leave me alone. I'm plenty fast without it and enjoy the process this author callously calls "wrestling with computers." Of course this isn't going to help with the whole "making me fast at things I don't know" but that's another can of worms.
- rileymichael 9mo agoyep.. learning vim or all of the keybinds/tools at ones disposal in $jetbrains_editor would _actually_ make some peers 2x faster but alas..
- sodapopcan 9mo agoAgreed but it's not even that. I worked with someone who was insanely fast with RubyMine. All the shortcuts were second-nature and shit just flew onto the screen. So generally, the argument would be to be really good with whatever editor you have. It also goes outside of that, like snippets are still very viable for lots of boilerplate. At the same time, one of the best developers I worked with was a two-finger typist who had to look at the keyboard. But again, I don't care if you're going to use AI (well, that's not entirely true but not going to get into it) but the tone of this article that "You should learn it, " I take issue with.
- dist-epoch 9mo agoYou can write 10000 lines of code without AI in a day? Impressive
- sincerely 9mo agoIsn't that because the "best in class" LLM-enabled IDE or dev environment keeps changing every few months, or even more frequently if you're price conscious and want to use the most powerful coding models?
- harles 9mo ago~20 years working in tech for me, mostly big companies, and I’ve never been more miserable. I also can’t stop myself from using Claude Code and the like. I think it’s a bit like a gambling addiction. I’m riding high the few times it pays off, but most of the time it feels like it’s just on the edge of paying off (working) and surely the next prompt will push it over the edge.
- gamerdonkey 9mo agoThe gambling analogy has been brought up before. https://pivot-to-ai.com/2025/06/05/generative-ai-runs-on-gambling-addiction-just-one-more-prompt-bro/ https://pivot-to-ai.com/2025/06/05/generative-ai-runs-on-gam...
- awfulneutral 9mo agoIt feels like this to me too, whenever I give it a try. It's like a button you can push to spend 20 minutes and have a 50/50 chance of either solving the problem with effortless magic, or painfully wasting your time and learning nothing. But it feels like we all need to try and use it anyway just in case we're going to be obsolete without it somehow.
- harles 9mo ago> But it feels like we all need to try and use it anyway just in case we're going to be obsolete without it somehow. I feel this exactly. I’ve been one of the biggest champions of the tech in my org in spite of the frequent pain I feel from it.
- somekyle2 9mo agoIf it doesn't work, it's an annoyance and you have to argue with it. If it does work, it's one more case where maybe with the right MCP plumbing and/or a slightly better model you might not be needed as part of this process. Feels a bit lose-lose.
- rileymichael 9mo ago> I also can’t stop myself from using Claude Code and the like. just.. uninstall it? i've removed all ai tooling from both personal+work devices and highly recommend it. there's no temptation to 'quickly pull up $app just to see' if it doesn't exist
- kleinsch 9mo agoAI lets you pick the parts you want to focus on and streamline the parts you don't. I get zero joy out of wrestling build tools or figuring out deploy scripts to get what I've built out onto a server. In the past side projects would stall out because the few hours per week I had would get consumed by all of the side stuff. Now I take care of that using AI and focus on the parts I want to write.
- Yoric 9mo agoYeah, that is one of my main uses for AI: getting the build stuff and scripts out of the way so that I can focus on the application code. That and brainstorming. In both cases, it works because I can mostly detect when the output is bullshit. I'm just a little bit scared, though, that it will stop working if I rely too much on it, because I might lose the brain muscles I need to detect said bullshit.
- dionian 9mo agoIm super interested to know how juniors get a long. i have dealt with build systems for decades and half the time its just use google or stackoverflow to get past something quickly, or manually troubleshoot deps. now i automate that entirely. and for code, i know what good or not, i check its output and hve it redo anything t5hat doesnt pass my known stndards. It makes using it so much easier. the article is so on point
- ToucanLoucan 9mo agoAlso just.. boring code. Like I'm probably more anti-AI than most, but even I'll acknowledge it's nice to just be like... "hey this array of objects I have, I need sorted by this property" and just have it work. Or how to load strings from exotic character encodings. Or dozens of other bitchy little issues that drag software dev speed down, don't help me "grow" as a developer, and/or are not interesting to solve, full stop. I love this job but I can absolutely get people saying that AI helps them not "fight" the computer.
- vlod 9mo ago
- briansteffens 9mo agoThere are some things that I think become more fun, like dealing with anything you don't actually find interesting. I recently made a quick little web app and I hand-coded the core logic since I find that part fun. But I vibe-coded the front-end, especially the CSS, because I just don't find that stuff very interesting and I'm less picky about the visuals. Letting the AI just do the boring parts for me made the overall project more fun I think.
- libraryofbabel 9mo agoBut it’s not really an argument, it’s a statement about feelings. Some people really do prefer coding with AI. Is that so strange? Often we’ve spent 1 or 2 decades writing code and in our day jobs we don’t see a lot of novel problems come our way at the level of the code anymore (architecture, sure, still often novel). We’ve seen N number of variations on the same thing; we are good at doing them but get little joy in doing them for the N + 1th time. We find typing out api serializers and for loops and function definitions and yaml boilerplate just a little boring, if we already have a picture in our head of what we want to do. And we like being able to build faster and ship to our users without spending hours and extra brain cycles dealing with low-level complexity that could be avoided. I am happy to accept that some people still prefer to write out their code by hand… that’s ok? Keep doing it if you want! But I would gently suggest you ask yourself why you are so offended by people that would prefer to automate much of that, because you seem to be offended. Or am I misreading? And hey, I still enjoy solving interesting problems with code. I did advent of code this year with no LLM assistance and it was great fun. But most professional software development doesn’t have that novelty value where you get to think about algorithms and combinatorical puzzles and graphs and so on. Before anyone says it, sure, there is a discussion to be had about AI code quality and the negative effects of all this. A bad engineer can use it to ship slop to production. Nobody is denying that. But I think that’s a separate set of questions. Finally, I’m not sure painting is the best analogy. Most of us are not creating works of high art here. It’s a job, to make things for people to use, more akin to building houses than painting the Sistine Chapel. Please don’t sneer at use if we enjoy finding ways to put up our drywall quicker.
- dolebirchwood 9mo agoI don't care about technology for what it is. I care about it for what it can do. If I can achieve what I want by just using plain English, I'm going to achieve what I want faster and more thoroughly enjoy the process. Just my two cents.
- lynx97 9mo agoWell, washing cloths has definitely become "more fun" since the invention of washing machines... Cleaning your flat has become "more fun" since vacuum cleaners. Writing has become "more fun" since editors overtook typewriters. Bedroom studios power most of the clubs I know. Navigating a city as a blind pedestrian has definitely become more fun since the introduction of the oh-so-evil-screentime-bad smartphone. I could go on forever. Moving has become more fun since the invention of the wheel... See?
- aspenmartin 9mo agoI understand this sentiment but, it is a lot of fun for me. Because I want to make a real thing to do something, and I didn't get into programming for the love of it, I got into it as a means to an end. It's like the articles point: we don't do assembly anymore and no one considers gcc to be controversial and no one today says "if you think gcc is fun I will never understand you, real programming is assembly, that's the fun part" You are doing different things and exercising different skillsets when you use agents. People enjoy different aspects of programming, of building. My job is easier, I'm not sad about that I am very grateful. Do you resent folks like us that do find it fun? Do you consider us "lesser" because we use coding agents? ("the same as saying you’re really into painting but you’re not really into the brush aspect so you pay someone to paint what you describe. That’s not doing, it’s commissioning.") <- I don't really care if you consider this "true" painting or not, I wanted a painting and now I have a painting. Call me whatever you want!
- lunar_mycroft 9mo ago> It's like the articles point: we don't do assembly anymore and no one considers gcc to be controversial and no one today says "if you think gcc is fun I will never understand you, real programming is assembly, that's the fun part" The compiler reliably and deterministically produces code that does exactly what you specified in the source code. In most cases, the code it produces is also as fast/faster than hand written assembly. The same can't be said for LLMs, for the simple reason that English (and other natural languages) is not a programming language. You can't compile English (and shouldn't want to, as Dijkstra correctly pointed out) because it's ambiguous. All you can do is "commission" another > Do you resent folks like us that do find it fun? For enjoying it on your own time? No. But for hyping up the technology well beyond it's actual merits, antagonizing people who point out it's shortcomings, and subjecting the rest of us to worse code? Yeah, I hold that against the LLM fans.
- aspenmartin 9mo agoThat a coding agent or LLM is a different technology than a compiler and that the delta in industry standard workflow looks different isn’t quite my point though: things change. Norms change. That’s the real crux of my argument. > But for hyping up the technology well beyond it's actual merits, antagonizing people who point out it's shortcomings, and subjecting the rest of us to worse code? Yeah, I hold that against the LLM fans. Is that what I’m doing? I understand your frustration. But I hope you understand that this is a straw man: I can straw man the antagonists and AI-hostile folks but the point is the factions and tribes are complex and unreasonable opinions abound. My stance is that people can dismiss coding agents at their peril, but it’s not really a problem: taking the gcc analogy, in the early compiler days there was a period where compilers were weak enough that assembly by hand was reasonable. Now it would be just highly inefficient and underperformant to do that. But all the folks that lamented compilers didn’t crumble away, they eventually adapted. I see that analogy as being applicable here, it may be hard to see the insanity of coding agents because we’re not time travelers from 2020 or even 2022 or 3. But this used to be an absurd idea and is now very serious and highly adopted. But still quite weak!! Still we’re missing key reliability and functionality and capabilities. But if we got this far this fast, and if you realize that coding agent training is not limited in the same way that e.g. vanilla LLM training is by being a verifiable domain, we seem to be careening forward. But by nature of their current weakness, absolutely it is reasonable not to use them and absolutely it is reasonable to point out all of their flaws. Lots of unreasonable people out there, my argument is simply: be reasonable.
- Jonovono 9mo agoIt’s more like saying you love painting, but you’re glad you no longer have to hike into the wilderness, crush minerals, boil oils, and invent pigments from scratch before you can put brush to canvas.
- AndrewKemendo 9mo agoI have zero desire to go hunt down and create a wrapper to avoid some kernel bug because what I want to do can’t be implemented because of an edge case of some CPU-package incompatibility. I have found in my software writing experience that the majority of what I want to write is boiler plate with small modifications but most of the problems are insanely hard to diagnose edge cases and I have absolutely no desire nor is it a good use of time in my opinion to deal with structural issues in things that I do not control. The vast majority of code you do not control because you aren’t the owner of the framework or library your language or whatever and so the Bass majority of software engineering is coming up with solutions to foundational problems of the tools you’re using The idea that this is the only true type of software engineering is absurd True software engineering is systems, control and integration engineering. What I find absolutely annoying is that there’s this rejection of the highest level Hofstetter level of software architecture and engineering This is basically sneered at over the idea of “I’m gonna go and try to figure out some memory management module because AMD didn’t invest in additional SOC for the problems that I have because they’re optimized for some Business goals.” It’s frankly junior level thinking
- lacy_tinpot 9mo agoWho's actually coding? You're never really wrestling the computer. You're typically wrestling with the design choices and technological debt of decisions that were in hindsight bad ones. And it's always in hindsight, at the time those decision always seem smart. Like with the rise of frameworks, and abstractions who is actually doing anything with actual computation? Most of the time it's wasting time learning some bs framework or implementing some other poorly designed system that some engineer that no longer works at the company created. In fact the entire industry is basically just one poorly designed system with technological debt that grows increasingly burdensome year by year. It's very rarely about actual programming or actual computation or even "engineering". But usually just one giant kludge pile.
- pixl97 9mo agoComputers are one big kludge pile because they can do anything.
- raw_anon_1111 9mo agoI have been developing for 30 years professionally and 10 years before that as a hobbyist or in school Development is solely to exchange labor for money. I haven’t written a single line of code “for fun” since 1992. I did it for my degree between 1992-1996 while having fun in college and after that depending on my stage in life, dating, hanging out with friends, teaching fitness classes and doing monthly charity races with friends, spending time with my wife and (step)kids, and now enjoying traveling with my wife and friends, and still exercising
- forgetfulness 9mo agoPlenty of people will tell you that they enjoy solving business problems. Well, I'll have to take their word for it that they're passionate about maximizing shareholder value by improving key performance indicators, I know I personally didn't sign up for being in meetings all day to leverage cross functional synergies with the goal of increasing user retention in sales funnels, or something along those lines. I'm not passionate about either that or mandatory HR training videos.
- matkoniecz 9mo agoWell, so far I tried using LLMs in hobby/open source/personal projects where I get benefits of code working.
- xnx 9mo agoWhat part of making a movie is fun? Acting, costumes, sets, camerawork, story, dialogue, script, sound effects, lighting, editing, directing, producing, marketing? Creating software has a similar number of steps. AI tools now make some of them much (much) easier/optional.
- falloutx 9mo agoAll parts of making a movie are fun. If you hire people who are passionate at each task, you will get 1000x better result. It may be 10 days late but better to be late than slop.
- BeetleB 9mo agoPeople have given most of the answers, but here's another one: At work, when I write code, I spend a lot of time designing it, making good interfaces, good tests, etc. It gave me joy to carefully craft it. At home, I never had the time/will to be as thorough. Too many other things to do in life. Pre-LLMs, most of my personal scripts are just - messy. One of the nice things with LLM assisted coding is that it almost always: 1. Gives my program a nice interface/UI 2. Puts good print/log statements 3. Writes tests (although this is a hit or miss). Most of the time it does it without being asked. And it turns out, these are motivation multipliers. When developing something, if it gives me good logs, and has a good UI, I'm more likely to spend time developing it further. Hence, coding is now more joyful. And it turns out, these tend to
- dang 9mo agoFun is a feeling, so one can't really have an argument that something is fun or not - that would be a category error no? You've got a good analogy there though, because many great and/or famous painters have used teams of apprentices to produce the work that bears their (the famous artist's) name. I'm reminded also of chefs and sous-chefs, and of Harlan Mill's famous "chief surgeon plus assistants" model of software development (https://en.wikipedia.org/wiki/Chief_programmer_team https://en.wikipedia.org/wiki/Chief_programmer_team). The difference in our present moment, of course, is that the "assistants" are mechanical ones. (as for how fun this is or isn't - personally I can't tell yet. I don't enjoy the writing part as much - I'd rather write code than write prompts - but then also, I don't enjoy writing grunt code / boilerplate etc., and there's less of that now, - and I don't enjoy having to learn tedious details of some tech I'm not actually interested in in order to get an auxiliary feature that I want, and there's orders of magnitude less of that now, - and then there are the projects and programs that simply would never exist at all if not for this new mechanical help in the earliest stages, and that's fun - it's a lot of variables to add up and it's all in flux. Like the French Revolution, it's too soon to tell! - https://quoteinvestigator.com/2025/04/02/early-tell/ https://quoteinvestigator.com/2025/04/02/early-tell/)
- vercaemert 9mo agoyeah, well said i like what software can do, i don't like writing it i can try to give the benefit of the doubt to people saying they don't see improvements (and assume there's just a communication breakdown) i've personally built three poc tools that proved my ideas didn't work and then tossed the poc tools. ive had those ideas since i knew how to program, i just didn't have the time and energy to see them through.
- williamcotton 9mo agoMost master painters of the past had teams organized as workshops where the majority of the painting was NOT done by the master. The “lone genius” image is largely a modern romantic invention.
- grugagag 9mo agoThats not quite true. The “lone genius” type went against the grain and created something new while still showing some skill (well, that’s debatable in modern art).
- rukuu001 9mo agoIt shaves yaks for me. I appreciate that.
- mattwilsonn888 9mo agoIf you have to work in a language or framework with a lot of arbitrary-seeming features, ugly or opaque translation layers, or a lot of boiler-plate, then I absolutely understand the sentiment. Programming a system at a low-level from scratch is fun. Getting CSS to look right under a bunch of edge cases - I won't judge that programmer too harshly for consulting the text machine. This is especially true considering it's these shallow but trivia-dominated tasks which are the least fun and also which LLMs are the most effective at accomplishing.
- mrocklin 9mo agoOne can have fun with all manner of things. Take wood-working for example. One can have fun with a handsaw. One can also have fun with a table saw. They're both fun, just different kinds
- zephen 9mo agoWhat about a table saw with no guard, a wobbly blade, and directions from management to follow a faint line you'd have a hard time doing with a scroll saw?
- nl 9mo agoI love building things with computers. I'm not particularly interested in the coding. I've coded professionally for 30 years (ergh!). I'm ok at it. But I love building things with AI. I haven't had this much fun since the early 2000s.
- sph 9mo ago> I will never as long as I live understand the argument that AI development is more fun AI is more fun for programmers that should've gone into management instead, and prefer having to explain things in painstaking detail in text, rather than use code. In other words, AI is for people that don't like programming that much. Why would you even automate the most fun part of this job? As a freelance consultant, I'd rather have a machine to automate the whole boring business side so I could just sit in front of my computer and write stuff with my own hands.
- simonw 9mo ago[dead]
- bandrami 9mo agoAnd the thing I don't get about how excited people are is that if what LLMs really do is change software development from coding to code review, which is the part of software development that is universally hated.
- CharlesW 9mo agoI get vibe-coders not having a good experience once the honeymoon is over. But I'm fascinated that a professional software developer could have such a different experience than I do. • LLMs generate junk • LLMs generate a lot of junk
- alfalfasprout 9mo agoYeah... don't get me wrong I find a lot of value in these tools. They do help with a lot of the tedium, can be helpful as debugging assistants, and in the right hands (with the right oversight) can indeed generate solid code. But we are, even as of Opus 4.5, so wildly far away from what the author is suggesting. FWIW my experience is working in the AI/ML space at a major tech company and as a maintainer + contributor of several OSS projects. People are blindly trusting LLMs and generating mountains of slop. And the slop compounds.
- emseetech 9mo agoI use AI as a rubber duck to research my options, sanity-check my code before a PR, and give me a heads up on potential pain points going forward. But I still write my own code. If I'm going to be responsible for it, I'm going to be the one who writes it. It's my belief that velocity up front always comes at a cost down the line. That's been true for abstractions, for frameworks, for all kinds of time-saving tools. Sometimes that cost is felt quickly, as we've seen with vibe coding. So I'm more interested in using AI in the research phase and to increase the breadth of what I can work on than to save time. Over the course of a project, all approaches, even total hand-coding with no LLMs whatever, likely regress to the mean when it comes to hours worked. So I'd rather go with an approach that keeps me fully in control.
- llmslave3 9mo agoYeah my guess is that it takes roughly the same amount of time regardless if it's AI agents or hand coding, the time just gets spent in different ways (writing vs reading for example).
- 9mo ago
- alfalfasprout 9mo agoFor a senior engineer, some very odd takes here: "Our ability to zoom in and implement code is now obsolete Even with SOTA LLMs like Opus 4.5 this is downright untrue. Many, many logical, strategic, architectural, and low level code mistakes are still happening. And given context window limitations of LLMs (even with hacks like subagents to work around this) big picture long-term thinking about code design, structure, extensibility, etc. is very tricky to do right." If you can't see this, I have to seriously question your competence as an engineer in the first place tbh. "We already do this today with human-written code. I review some code very closely, and other code less-so. Sometimes I rely on a combination of tests, familiarity of a well-known author, and a quick glance at the code to before saying "sure, seems fine" and pressing the green button. I might also ask 'Have you thought of X' and see what they say. Trusting code without reading all of it isn't new, we're just now in a state where we need to review 10x more code, and so we need to get much better at establishing confidence that something works without paying human attention all the time. We can augment our ability to write code with AI. We can augment our ability to review code with AI too." Later he goes onto suggest that confidence is built via TDD. Problem is... if the AI is generating both code and tests, I've seen time and time again both in internal projects and OSS projects how major assumptions are incorrect, mistakes compound, etc.
- vorticalbox 9mo agoLLMs also try and find short cuts to get the task done, for example I wrote some code (typescript) for work that had a lot of lint errors (I created a pretty strict rule set) And I asked codex to fix them for me, first attempt was to add comments to disable the rules for the whole file and just mark everything as any. Second attempt was to disable the rules in the eslint config. It does the same with tests it will happily create a work around to avoid the issue rather than fix the issue.
- switchbak 9mo ago> Our ability to zoom in and implement code is now obsolete Even with SOTA LLMs like Opus 4.5 this is downright untrue. Many, many logical, strategic, architectural, and low level code mistakes are still happening. And given context window limitations of LLMs (even with hacks like subagents to work around this) big picture long-term thinking about code design, structure, extensibility, etc. is very tricky to do right. > If you can't see this, I have to seriously question your competence as an engineer in the first place tbh. I can't agree more strongly. I work with a number of folks who say concerning things along the lines of what you describe above (or just slightly less strong). The trust in a system that is not fully trustworthy is really shocking, but it only seems to come from a particular kind of person. It's hard to describe, but I'd describe it as: people that are less concerned with the contents of the code versus the behaviour of the program. It's a strange dichotomy, and surprising every time. I mean, if you don't get the economics of a reasonably factored codebase vs one that's full of hacks and architecturally terrible compromises - you're in for a VERY bad time. Perhaps even a company-ending bad time. I've seen that happen in the old days, and I expect we're in the midst of seeing a giant wave of failures due to unsustainably maintained codebases. But we probably won't be able to tell, startups have been mostly failing the entire time.
- somekyle2 9mo agoI suspect that lots of developers who are sour on relying on AI significantly _would_ agree with most of this, but see the result of that logic leading to (as the article notes) "the skill of writing and reading code is obsolete, and it's our job to make software engineering increasingly entirely automated" and really don't like that outcome so they try to find a way to reject it. "The skillset you've spend decades developing and expected to continue having a career selling? The parts of it that aren't high level product management and systems architecture are quickly becoming irrelevant, and it's your job to speed that process along" isn't an easy pill to swallow.
- nancyminusone 9mo agoRemains to be seen if that pill needs swallowing at all. At least for reading code.
- eikenberry 9mo agoIf one is not writing code your ability to read code will degrade quickly and be reduced to a basic sanity check as to whether you need to add more constraints (prompts, tests, etc.). Anyone who thinks they can read code without writing code at a level needed to understand what is going on (for anything non-trivial) is fooling themselves.
- llmslave2 9mo agoYep. I'd say it's an order of magnitude more effort to read code you haven't written too, compared to reading code you wrote. So there is approximately zero chance the people using AI to generate code are reading it at a level where they actually understand it, or else they would lose all of their supposed productivity gains.
- falloutx 9mo agoYeah if people were good at reading code we wouldn't have the whole LGTM meme where the reviewer gives up as soon the PRs is bigger than 500 lines.
- NoraCodes 9mo agoI don't care that AI development is more fun for the author. I wouldn't care if all the evidence pointed toward AI development being easier, faster, and less perilous. The externalities, at present, are unacceptable. We are restructuring our society in a way that makes individuals even less free and a few large companies even more powerful and wealthy, just to save time writing code, and I don't understand why people think that's okay.
- llmslave2 9mo agoGood news: the evidence points to it being slower than non-ai workflows. So we're destroying our economy, society, and planet to make worse software, more slowly! :)
- falloutx 9mo agowe are also making all software much worse at the same time. I dont think every app needs AI but apparently they do. Notion used to be a Zen writing app back in the day, canva used to an app where you can do simple graphics without a complicated tools panel.
- llmslave2 9mo ago[flagged]
- dang 9mo ago> Disgusting work Please don't do this here. Thoughtful criticism is fine on this site but snark and name-calling are not. https://news.ycombinator.com/newsguidelines.html https://news.ycombinator.com/newsguidelines.html Edit: on closer look, you've been breaking the HN guidelines so badly and so consistently that I've banned the account. Single-purpose accounts aren't allowed here in any case.
- dang 9mo agoI think Pete's article last year made a good case for regarding this as the "horseless carriage" stage, i.e. growing pains around how to use a new technology effectively. AI Horseless Carriages - https://news.ycombinator.com/item?id=43773813 https://news.ycombinator.com/item?id=43773813 - April 2025 (478 comments) Or maybe it's analogous to the skeuomorphic phase of desktop software. Clumsy application of previous paradigm to new one; new wine in old bottles; etc.
- joshribakoff 9mo agoI clicked out of the article since it starts out with a contradiction. Experienced engineers can successfully vibe code? By definition it means not reading the output. If you’re not reading your output, then why does skill level even matter?
- blargey 9mo agoDon't you think "having a concrete idea of what sort of code change / end behavior you're looking for" affects the prompts and LLM output?
- wiseowise 9mo agoDo apply the same logic to conductors too?
- NitpickLawyer 9mo ago> If you’re not reading your output, then why does skill level even matter? Few thoughts here. Experience helps you "check" faster that what you asked for is actually what was delivered. You "know" what to check for. You know what a happy path is, and where it might fail. You're more likely to test outside the happy path. You've seen dozens of failure modes already, you know where to look for. Experience also allows you to better define stuff. If you see that the output is mangled, you can make an educated guess that it's from css. And you can tell the model to check the css integration. Experience gives you faster/better error parsing. You've seen thousands of them already. You probably know what the error means. You can c/p the error but you can also "guide" the model with something like "check that x is done before y". And so on. Last, but not least, the "experience" in actually using the tools gives you a better understanding of their capabilities and failure modes. You learn where you can let it vibe away, or where you need to specify more stuff. You get a feeling for what it did from a quick glance. You learn when to prompt more and where to go with generic stuff like "fix this".
- rjh29 9mo agoThe definition of 'vibe code' is somewhat nebulous at the moment. For many it means "only look at the end product (website) and use prompts to fix it" but for others it means "mostly don't hand-code anything, but check the diffs".
- falloutx 9mo agoAI development for me is not fun. It may be faster and more productive, jury still out on that. But typing code and understanding each line has its advantages. AI also takes out a lot of creativity out of programming and climbing the abstractions isnt for everyone. Do we want everyone to operate at PM level? The space for that is limited. Its easy to say you enjoy vibe coding when you are high up the chain but for most devs we are not as experienced or lucky to be able to feel stable when workflows change every day. But I dont feel I have enough data to believe whether vibe coding or hand coding is better, I am personally doing tedious task with AI, and still writing code by hand all the time. Also the author presents rewriting Numpy in rust as some achievement but the AIs most probably trained on Numpy and RustyNum, AI are best at copying the code so its not really a big thing.
- llmslave2 9mo agoI thought the article was going to be about AI zealotry but it was just AI zealotry.
- mrocklin 9mo agoYup.
- mccoyb 9mo agoWho knew that these massive high-dimensional probability distributions would drive us insane
- ctoth 9mo agoRe audio, I have been working on a nice little tool called Claudio[0] which adds sounds to Claude Code in a nice configurable sort of way. It's still pretty new but it's a lot better than directly hooking to avplay :) [0]: https://claudio.click https://claudio.click
- dmezzetti 9mo agoAI Development is good for those who want to do it. But not a terminal career decision for those who don't.
- rajangdavis 9mo agoThe more I use AI, the more I think about the book Fooled By Randomness. AI can take you down a rabbit hole that makes you feel like you are being productive but the generated code can be a dead end because of how you framed the problem to the AI. Engineers need enough discipline to understand the problems they are trying to solve before delegating a solution to a stochastic text generator. I don’t always like using AI but have found it helpful in specific use cases such as speeding up CI test pipelines and writing spec; however, someone smarter than me/more familiar with the problem space may have better strategies that I cannot of think of, and I have been fooled by randomness.
- falloutx 9mo agoAI can also make you invest useful time in things that are not useful or not needed. It also deincentivizes collaboration. If everyone builds thier own version of say Beebook with 5 features, thats worthless compared to BeeBook opensource or even corporate Beebook with thousands of features and complex workflows. And everyone who worked on thier own version of BeeBook wasted thier time. With AI you have to be careful to know what is important, you dont want to waste your time doing random stuff that may not even get a single user. If its for fun, thats fine but if you want to build a business or improve your output, I would advise people to choose well.
- linkregister 9mo agoRather than spending iterations crafting precise permissions, why not just run with --dangerously-skip-permissions If run in a devcontainer[1][2], the worst thing that can happen is it deletes everything in the filesystem below the mounted repo. Recovery would entail checking out the repo again. 1. (conventional usage) https://code.visualstudio.com/docs/devcontainers/containers https://code.visualstudio.com/docs/devcontainers/containers 2. (actual spec) https://containers.dev/ https://containers.dev/
- falloutx 9mo agoStill leaves you open for data exfil. Your AI goes to a site to check documentation, but oh no that site wants it to make an API call with a very specific token.
- bob1029 9mo agoOn windows I create a new locked down user with NTFS permissions denied everywhere except the target project path. I then run the agent app as that user with otherwise unrestricted powershell access.
- jaggederest 9mo agoBe careful running claude in a devcontainer with no other restrictions - it at least nominally knows how to jailbreak out of containers, even though it appears heavily moralized not to. If you (for example) feed it arbitrary web data that contains a prompt sufficiently persuasive to get to try, it's pretty capable of doing it.
- spankibalt 9mo ago> "I will never as long as I live understand the argument that AI development is more fun." What I always find amusing are the false equivalences, where one or several (creative) processes involving the hard work that is a fundamental part of the craft get substituted by push-to-"I did this!1!!" slop. How's the saying go? "I hate doing thing x. The only thing I hate more is not doing thing x". One either owns that, or one doesn't. So that is indeed not mysterious. Especially not in a system where "Fake it till you make it" has been and is advertised as a virtue.
- noddingham 9mo agoNone of these articles address how we'll go from novice to expert, as either self-taught or through the educational system, and all the bloggers got their proverbial "10k hours" before LLMs were a thing. IMO This isn't abstractions, the risk is wholesale outsourcing of learning. And no, I don't accept the argument that correct and LLMs errors is the same as correcting a junior devs errors because the junior dev would (presumably) learn and grow to become a senior. The technology doesn't exist for an LLM to do the same today and there's no viable path in that direction. Can someone tell me what the current thinking is on how we'll get over that gap?
- beej71 9mo agoI can tell you the current thinking of most of the instructors I know: teach the same fundamentals as always, and carefully add a bit of LLM use. To use LLMs effectively, you have to be an excellent problem-solver with complex technical problems. And developing those skills has always been the goal of CS education. Or, more bluntly, are you going to hire the junior with excellent LLM skills, or are you going to hire the junior with excellent LLM skills and excellent technical problem-solving skills? But they do have to be able to use these tools in the modern workplace so we do cover some of that kind of usage. Believe me, though, they are pretty damned good at it without our help. The catch is when students use it in a cheating way and don't develop those problem-solving skills and then are screwed when it comes time to get hired. So our current thinking is there's no real shortcut other than busting your ass like always. The best thing LLMs offer here is the ability to act as a tutor, which does really increase the speed of learning.
- noddingham 9mo agoThanks for the response, I appreciate it. I absolutely agree with you about CS education. I went to school to learn how to learn. So, the best-case outcome is everyone has A Young Lady's Illustrated Primer available to them. At that point I suppose to really does live with the individual as to whether they want to see how much potential they really have.
- raincole 9mo ago
- aidos 9mo agoThe linked Claude generated script for giving more control over permissions in tool use is… typically Claude. The code interleaves rules and control flow, drops side effects like “exit” in functions and hinges on a stack of regex for parsing bash. This isn’t something I’ve attempted before but it looks like a library like bashlex would give you a much cleaner and safer starting point. For a “throwaway” script like this maybe it’s fine, but this is typical of the sort of thing I’m seeing spurted out and I’m fascinated to see what people’s codebases look like these days. Don’t get me wrong, I use CC every day, but man, you do need to fight it to get something clean and terse. https://gist.github.com/mrocklin/30099bcc5d02a6e7df373b4c259d95e9 https://gist.github.com/mrocklin/30099bcc5d02a6e7df373b4c259...
- bossyTeacher 9mo ago"AI development is more fun. I do more of what I like (think, experiment, write) and less of what I don't like (wrestle with computers). I feel both that I can move faster and operate in areas that were previously inaccessible to me (like frontend). Experienced developers should all be doing this. We're good enough to avoid AI Slop, and there's so much we can accomplish today." If frontend was "inacessible" and AI makes it "accessible", I would argue that you don't really know frontend and should probably not be doing it professionally with AI. Use AI, yes but learn frontend without AI first. And his "Experienced developers should all be doing this" is ridiculous. He should be honest and confess that he doesn't like programming. He probably enjoys systems design or some sort of role involving product design that does not involve programming. But none of these people are "developers".
- jaredcwhite 9mo agoI'm so completely over these types of articles. Just as the AI techbros want to convince people that "the genie is out of the bottle" and that these services & practices are inevitable, it is also the case the the cohort of people who explicitly eschew using genAI is significant and growing. Nobody is being convinced reading this…like "wow, I vowed never to use genAI as a software developer, and then suddenly I read this article and now I've seen the light!"
- beej71 9mo ago>>I get it, you’re too good to vibe code. You’re a senior developer who has been doing this for 20 years and knows the system like the back of your hand. >> [...] >>No, you’re not too good to vibe code. In fact, you’re the only person who should be vibe coding. All we have to do is produce more devs with 20 years of experience and we'll be set. :)
- mrocklin 9mo agoOriginal author of the post here. Just to give credit where it's due, that was a quote from this other excellent article written by someone else: https://www.stochasticlifestyle.com/a-guide-to-gen-ai-llm-vibecoding-for-expert-programmers/ https://www.stochasticlifestyle.com/a-guide-to-gen-ai-llm-vi...
- beej71 9mo agoI did double quote it, but you're right—I should have made it clear.
- johnwheeler 9mo agoAIs don't generate junk. Engineers with little experience _think_ they generate junk. Or engineers on that bandwagon, which in my opinion is driven by denial or naivety If you know what the fuck you're doing, they're incredible. Scary so.
- gessha 9mo agoOne man’s trash is another man’s treasure.
- AdieuToLogic 9mo agoThe author presents a false dichotomy when discussing "Why Not AI". ... there are some serious costs and reasonable reservations to AI development. Let's start by listing those concerns These are super-valid concerns. They're also concerns that I suspect came around when we developed compilers and people stopped writing assembly by hand, instead trusting programs like gcc ... Compilers are deterministic, making their generated assembly code verifiable (for those compilers which produce assembly code). "AI", such as "Claude Code (or Cursor)" referenced in the article, is nondeterministic in their output and therefore incomparable to a program compiler. One might as well equate the predictability of a Fibonacci sequence[0] to that of a PRNG[1] since both involve numbers. 0 - https://en.wikipedia.org/wiki/Fibonacci_sequence https://en.wikipedia.org/wiki/Fibonacci_sequence 1 - https://en.wikipedia.org/wiki/Pseudorandom_number_generator https://en.wikipedia.org/wiki/Pseudorandom_number_generator
- llmslave3 9mo agoI suspect the argument is that both AI and a compiler enables building software at a higher level of abstraction.
- Retric 9mo agoAbstraction is only useful when it involves a consistent mapping between A and B, LLM’s don’t provide that. In most contexts you can abstract the earth as a sphere and it works fine ex:aligning solar panels etc. Until you enter the realm of precision where treating the earth as a sphere utterly fails. There’s no realistic set of tests you can right where an unsupervised LLM’s output can be trusted to generate a complex system which works if it’s constantly being recreated. Actual compilers don’t have that issue.
- nl 9mo ago> Compilers are deterministic, making their generated assembly code verifiable People keep saying this like it is an absolute fact, whereas in reality it is a scale. Compilers are more deterministic than LLMs in general, but no they are not completely deterministic. That's why making reproducible builds is hard! https://stackoverflow.com/questions/52974259/what-are-some-examples-of-non-determinism-in-the-c-compiler https://stackoverflow.com/questions/52974259/what-are-some-e... and https://github.com/mgrang/non-determinism https://github.com/mgrang/non-determinism give some good examples of this. This leads to the point: in general do we care about this non-determinism? Most of the time, no we don't. Once you accept that the next stage is accepting that most of the time the non-deterministic output of an LLM is good enough! This leads to how do I verify it is good enough which leads to testing and then suddenly you have a working agentic loop....
- arach 9mo ago> My personal favorite hooks though are these: "Stop": [ { "hooks": [ { "type": "command", "command": "afplay -v 0.40 /System/Library/Sounds/Morse.aiff" }]}], "Notification": [ { "hooks": [ { "type": "command", "command": "afplay -v 0.35 /System/Library/Sounds/Ping.aiff" }]}] These are nice but it's even nicer when Claude is talking when it needs your attention Easy to implement -> can talk to ElevenLabs or OpenAI and it's a pretty delightful experience
- alkh 9mo agoOmg, this is so great, that you so much! Gonna set up a bunch of A320 warning sounds to scare me in case I am idle for too long :)
- davely 9mo agoHah! I’ve done something similar. I created a bunch of pre-defined voice messages with Eleven Labs and then have a script that randomly calls them via the same hooks. https://github.com/daveschumaker/homebrew-claude-sounds https://github.com/daveschumaker/homebrew-claude-sounds
- arach 9mo agonice, next step is to write a custom function that derives a useful but repeatable message from the hooks and put a little cache in front the Eleven Labs message gen. For example: "In {Project}, Claude needs your permission to run {command}" That way you can stay comfortably in the free plan with awesome voice messages I have a different voice for my laptop compared to my main computer and can also pick per project
- hmartin 9mo agoIf you're on a Mac, it can speak the notification instead for more detail! ``` "hooks": { "Notification": [ { "hooks": [ { "type": "command", "command": "jq '.message' | say" } ] } ] } ```
- opponent4 9mo ago> That being said, there are some serious costs and reasonable reservations to AI development. Neither this nor the discussion here so far mentions ethics. It should. According to latest reports AI now consumes more water than the global bottled water industry. These datacenters strain our grids and where needs can't be met they employ some of the least efficient ways to generate electricity generating tons of pollution. The pollution and the water problems are hitting poorer communities as the more affluent ones can afford much better legal pushback. Next, alas, we can't avoid politics. The shadow that Peter Thiel and a16z (who named one of the two authors of the Fascist Manifesto their patron saints) casts over these tools is very long. These LLMs are used as a grand excuse to fire a lot of people and also to manufacture fascist propaganda on a scale you have never seen before. Whether these were goals when Thiel & gang financed them or not, it is undeniable they are now indispensable in helping the rise of fascism in the United States. Even if you were to say "but I am using code only LLMs" you are still stuffing the pockets of these oligarchs. The harm these systems cause is vast and varied. We have seen them furthering suicidal ideation in children and instructing them on executing these thoughts. We have seen them generating non-consensual deepfakes at scale including those of children.
- pdude444 9mo agoI think this take doesn’t take into account the slope of improvement we have seen from AI. Take Claude opus 4.5, I’ve seen dramatic improvements in the models ability to handle large context windows
- journal 9mo agothe time spent reading threads like this is better spent on buying lottery.
- mcintyre1994 9mo agoI disagree with them on the large PR section. I agree that we sometimes don’t review these in detail, but the thing that enables that for me is a trusted contributor explaining deterministically what they did. I renamed whatever variable, or I changed whatever script in all these places, I updated whatever lint rule and fixed all the errors, I moved whatever to a separate package. All of these can create a diff across lots of files, but can be easily explained to a reviewer. The problem is that I can’t trust an LLM to act deterministically the way I trust some people to. So I can’t just take that higher level view of “yep cool that sounds like a good idea” and skim the changes.
- saxenaabhi 9mo agoAh, Human beings! Famous for their determinism, reliability, and for not making logical errors!
- mcintyre1994 9mo agoThere are some that I trust more than I trust any LLM!
- mannanj 9mo agoWeird question. If a system you are using is intended to extract from you, and unwillfully and nonconsensually stealing your intellectual property because the unaccountable big companies do shady stuff (the "AI" companies) is it justified to use it for the productivity gains because it will 'eventually' get there anyway? Does the potential gain as an early adopter make it morally ok. Because thats what these tiered uses of these AI and how it's been getting better works imo. It got lots of training data from juniors and seniors using it the last 2 years, it got better. It gets more appealing and leverages human psychology and marketing to get higher level engineers to train it as it and the companies extract more data. It needs and gets more data from the people willfully complying and using it. Wondering if theres a game theory design for this conundrum - what typically happens in nature in these scenarios?
- deleted 9mo ago[deleted]
- bdauvergne 9mo agoSeems people read the blog but not the code, I looked at the stated rewrite of Numpy in Rust: > As an introductory project, I rewrote Numpy in Rust. It was great fun. That's not a rewrite at all it's just a wrapping of an existing linear algebra Rust library (faer, blas, etc..) with a more Numpy like API. It seems to me that every AI project I look at is just a mashup/wrapper over existing things. Where are the real bootstrapped new things with AI ? Is there any big OSS project (Linux kernel, postgresql, Django, whatever) with serious bugfixes or new features implemented by AI that we could look at ? Are so much people in programming implementing middleware / wrapping existing API all day that it gives them a feeling of liberation to be able to delegate those tasks ?
- nl 9mo agoNo true Scotsman would ever do the kind of programming that 95% of the programming in the world is right? Anyway https://www.reddit.com/r/osdev/comments/1opsicd/just_how_far_can_you_get_vibecoding_an_os_from/ https://www.reddit.com/r/osdev/comments/1opsicd/just_how_far...
- morkalork 9mo agoThere's a good thread in there highlighting the fact that a novice wouldn't be nearly as successful as the OP who has the experience to guide the LLM.
- throwup238 9mo ago> Anecdotally, we use Opus 4.5 constantly on Zed's code base, which is almost a million lines of Rust code and has over 150K active users, and we use it for basically every task you can think of - new features, bug fixes, refactors, prototypes, you name it. The code base is a complex native GUI with no Web tech anywhere in it. https://news.ycombinator.com/item?id=46522437 https://news.ycombinator.com/item?id=46522437 Zed is open source so you can look at their PRs and commit history. They even rolled their own Rust GUI framework for the project so it’s a decent case study of working on code that is barely in the training data (if at all).
- 9mo ago