5 ms·
I used AI. It worked. I hated it
https://web.archive.org/web/20260403164006/https://taggart-tech.com/reckoning/ https://web.archive.org/web/20260403164006/https://taggart-t...
- Manchitsanan 6mo ago[dead]
- simonw 6mo ago> I hated writing software this way. Forget the output for a moment; the process was excruciating. Most of my time was spent reading proposed code changes and pressing the 1 key to accept the changes, which I almost always did. [...] That's why they hated it. Approving every change is the most frustrating way of using these tools. I genuinely think that one of the biggest differences between people who enjoy coding agents and people who hate them is whether or not they run in YOLO mode (aka dangerously-skip-permissions). YOLO mode feels like a whole different product. I get the desire not to do that because you want to verify everything they do, but you can still do that by reviewing the code later on without the pain of step-by-step approvals.
- samlinnfer 6mo ago>reviewing the code later on without step-by-step approvals I found that Claude likes to leave some real gems in there if you get lazy and don't check. Gently sprinkled in between 100 lines of otherwise fine looking code that sows doubt into all of the other lines it's written. Sometimes it makes a horrific architectural decision and if it doesn't get caught right there it's catastrophic for the rest of the session.
- txtsd 6mo agoAre you not giving it enough information to work with? All of these issues you and the parent comment mentioned can be worked around by telling it HOW to do things.
- qsera 6mo agoThe whole shtick of LLMs is that it can do stuff without telling it explicitly. Not sure why people are blamed because they are using it based on that expectation....
- cornel_io 6mo agoYes, it can. So can I. But neither of us will write the code exactly the way nitpicky PR reviewer #2 demands it be written unless he makes his preferences clear somewhere. Even at a nitpick-hellhole like Google that's mostly codified into a massive number of readability rules, which can be found and followed in theory. Elsewhere, most reviewer preferences are just individual quirks that you have to pick up on over time, and that's the kind of stuff that neither new employees nor Claude will ever possibly be able to get right in a one-shot manner.
- qsera 6mo agoSure, but that is not what the OP talks about.
- samlinnfer 6mo agoThere is an unconstrained number of ways it can write code and still not be how I want it. Sometimes it's easier to write the correction against the code that is already generated since now you at least have a reference to something there than describing code that doesn't yet exist. I don't think it's solvable in general until they have the neuralink skill that senses my approval as it materializes each token and autocorrects to the golden path based on whether I'm making a happy or frowny face.
- bitwize 6mo agoStop thinking like a programmer and start thinking like a business person. Invest time and energy in thinking about WHAT you want; let the LLM worry about the HOW.
- 6mo ago
- neonstatic 6mo agoor it casually forgets to implement some requirements, which one finds out about when the program runs, hits that pathway, and either crashes or does nothing.
- evnp 6mo agoI'm legitimately curious - could you elaborate on the difference? Speaking as someone who has always preferred the commit-by-commit focus of a rebase instead of all-at-once merge conflict resolution, auditing all the changes together later doesn't sound more appealing than doing things incrementally.
- sdenton4 6mo agoIt's far more sane to review a complete PR than to verify every small change. They are like dicey new interns - do you want to look over their shoulder all day, or review their code after they've had time to do some meaningful quantum of work?
- NitpickLawyer 6mo ago> It's far more sane to review a complete PR than to verify every small change. Especially when the harness loop works if you let it work. First pass might have syntax issues. The loop will catch it, edit the file, and the next thing pops up. Linter issues. Runtime issues. And so on. Approving every small edit and reading it might lead to frustrations that aren't there if you just look at the final product (that's what you care about, anyway).
- vova_hn2 6mo agoThe main difference in the current (theatrical) permission model is that the agent is blocked on waiting for your approval. So you can't just launch it and go do something else, because when you return you will see that nothing is done and it has just been waiting for your input all this time. You have to stare at the screen and do nothing, which is a really boring and unproductive way to spend time. If you launch it in YOLO mode in a separate branch in a separate worktree (or, preferably, in total isolation), you can instead spend time reviewing changes from previous tasks or refining requirements for new tasks.
- dcre 6mo agoThe choice isn't really between all at once and line by line. I always use accept all changes, but I make commits that I can review and consider in bigger pieces, but usually smaller than the full PR.
- vova_hn2 6mo agoI think that those permissions are largely security theater anyway. It would be better if an LLM coding harness just helped you set up a proper sandbox for itself (containers, VMs etc.) and then run inside the isolated environment unconstrained. In setup mode, the only tool accessible to the agent should be running shell scripts, and each script should be reviewed before running. Inside an isolated environment, there should be no permission system at all.
- MattGaiser 6mo agoEven if you don't want to do yolo mode, there are things like Copilot Autopilot or you can make the permissions for Claude so wide that they can work for an hour and let you come back to the artifact after lunch.
- dcre 6mo agoI think it's too far to say you need YOLO mode — the author was correctly pointing to the "auto-accept all changes" setting. They should have just turned that on and then reviewed the changes in larger chunks. You don't have to let it go for half an hour and review the mess it cooked up — you can keep an eye on things and even manually make commits to break the work into logical pieces. With auto-accept edits plus a decent allowlist for common commands you know are safe, the permission prompts you still get are much more tolerable. This does prevent you from using too many parallel agents at a time, since you do have to keep an eye on them, but I am skeptical of people using more than 3-5 anyway. Or at least, I'm sure there is work amenable to many agents but I don't think most software engineering is like that. All that said, I am reaching the point where I'm ready to try running CC in a VM so I can go full YOLO.
- Sophira 6mo ago> I get the desire not to do that because you want to verify everything they do, but you can still do that by reviewing the code later on without the pain of step-by-step approvals. It's a well-known truth in software development that programmers hate having to maintain code written by someone else. We see all the ways in which they wrote terrible code, that we obviously would never write. (In turn, the programmers after us will do the same thing to our code.) Having to get into the mindset of the person writing the code is difficult and tiring, but it's necessary in order to realise why they wrote things the way they did - which in turn helps you understand the problems they were solving, and why the code they wrote actually isn't as terrible in context as it looked at first glance. I think it makes sense that this would also apply to the use of generative AI when programming - reviewing the entire codebase after it's already been written is probably more error-prone and difficult than following along with each individual step that went into it, especially when you consider that there's no singular "mindset" you can really identify from AI-generated output. That code could have come from anywhere...
- seba_dos1 6mo ago...and then you get "the agent just git resetted --hard 12 hours of my work!", because AI bros can't be bothered to make their tooling actually good and version the changes at filesystem level, because it needs more than putting another variation of "pretty please don't break things" in the prompt.
- OptionOfT 6mo agoYesterday I had it get the length of a word in characters by doing `word.len()`. In Rust. In 2026. Using Opus. This again showed me that I can't go in YOLO mode. Things like this are disastrous if left to fester in a codebase.
- ninkendo 6mo agoEh… I get what you’re saying but the word “character” is super overloaded. C uses “char” to mean “byte”. Rust uses it to mean “Unicode scalar” (which still isn’t a user-perceived character.) The meaning that corresponds to “where should the caret move when I press the arrow keys in a text editor” turns out to only be meaningful in a tiny set of circumstances. The vast, vast, vast majority of the time, it doesn’t make sense to think about “characters” at all, and it’s just bytes you need to account for. I’m generally with you on AI needing serious review from knowledgeable humans or it can be a disaster, but “it misunderstood what I meant by characters” smells a lot more like you were unclear in your prompt.
- OptionOfT 6mo agoThat's the thing. I didn't ask it about how to get to the width of the string. It came up with a plan and I tried it.
- riffraff 6mo agoI have come to the conclusion that many people are going to live this AI period pretty much like the five stages of grief: denial that it can work, anger at the new robber barons, bargaining that yeah it kinda works but not really well enough, catastrophic world view and depression, and finally acceptance of the new normality. I'm still at the bargaining phase, personally.
- vova_hn2 6mo ago> yeah it kinda works but not really well enough I mean, at some point it was true. I remember that around 2023, when I first encountered colleagues trying to use ChatGPT for coding, I thought "by the time you are done with your back-and-forth to correct all the errors, I would have already written this code manually". That was true then, but not anymore.
- bigstrat2003 6mo agoNo, it's still very much true. Every now and then I use an LLM to write code and the vast majority of the time it turns out to take just as much time (if not more) than it would've taken to write the code myself.
- hellojimbo 6mo agoYou are either using it wrong or you are writing extremely niche code that has bad llm coverage
- neonstatic 6mo agoor you are in denial about what he is saying
- Zimzom 6mo agoI suspect I fall into the former camp, but I'm not sure where to start when it comes to learning how to use llms "the right way". I'm not a proper software engineer, but I do a lot of scripting and most of my attempts to let a model speed up a menial task (e.g. a small bash or python script for some data parsing or chaining together other tools), end up with me doing extensive rewrites because the model is completely inconsistent in naming convention, pattern reusage, etc.
- spiderfarmer 6mo agoI recently spoke to a very junior developer (he's still in school) about his hobby projects. He doesn't have our bagage. He doesn't feel the anxiety the purists feel. He just pipes all errors right back in his task flow. He does period refactoring. He tests everything and also refactors the tests. He does automated penetration testing. There are great tools for everything he does and they are improving at breakneck speeds. He creates stuff that is levels above what I ever made and I spent years building it. I accepted months ago: adapt or die.
- manquer 6mo agoYou can still survive without using generative tools. Just not writing crud apps . There is plenty of code that require proof of correctnesss and solid guarantees like in aviation or space and so on. Torvalds in a recent interview mentioned how little code he gets is generated despite kernel code being available to train easily .
- hackable_sand 6mo agoPsychopaths running the circus
- lpcvoid 6mo agoThe way I see it, the kid has a dangerous dependency on at least one expensive service, cannot solve problems by himself and highly likely doesn't understand core concepts of programming and computers in general. Yeah I dread the software landscape in 10 years, when people will have generated terabytes of unmaintainable slop code that I need to fix.
- sciencejerk 6mo agoMaybe adapt and still die anyway?
- sph 6mo agoThe most pathetic of deaths as well. “He automated his job so well the company doesn’t need him anymore.”
- bitwize 6mo agoDon't care. It's no longer up for debate: this is the future. Shape up or ship out.
- dodomodo 6mo agoWhy even responding then? And are we not allowed to talk about how doing our jobs makes us feel?
- bitwize 6mo agoIf programmers like being able to pay their rent/mortgage, they'll quickly learn not to feel sad about literally the best thing to happen to software development in decades. Because otherwise they'll be replaced by someone who's delighted with it (they're not hard to find).
- phist_mcgee 6mo agoBang on.
- qsera 6mo ago>who's delighted with it A programmer who is not delighted by programming cannot be very good at it. So the same people who are "delighted" by using an LLM is the exact same people who should not be using it. It would be like putting a person who don't know how to drive in the driving seat of a semi-autonomous driving vehicle.
- hackable_sand 6mo agoCan you explain how an LLM is going to grill up and package food for my customers? I'm able to pay rent just fine without one...
- lpcvoid 6mo agoNah, my theory is that people hyping slop programming are the sort of people who sucked at programming beforehand, and LLMs hide that pretty well.
- 6mo ago
- lo0pback 6mo ago[dead]
- periodjet 6mo agoThese takes are growing increasingly tiresome, I have to admit. They are pretty much all just tacit admissions of some kind of skill issue with this new class of tool, but presented with a sheen of moral outrage. I don’t think anyone’s buying it anymore. Figure it out.
- phist_mcgee 6mo agoThe worst are the anecdotal poster claiming that they are faster and more correct than an LLM nearly all the time. If that's not delusional thinking I don't know what is.
- qsera 6mo agoEven worse is the "true believers" who without any sort of justification will just declare that "everyone is cooked!"..
- sciencejerk 6mo agoDid you not read the linked blog post? Author admits that Claude did a good job
- Toutouxc 6mo agoWhat kind of skill does it require to let LLMs write 100% of your code? I'm genuinely asking, what's the hard part that a pre-LLM developer is fundamentally incapable of doing? Is it running the agents in a loop? Or along a state machine? Running them in parallel? Because honestly none of that sounds like anything an experienced software dev shouldn't be able to pick up in two weekends.
- MattGaiser 6mo ago> I have no reason to expect this technology can succeed at the same level in law, medicine, or any other highly human, highly subjective occupation. I mean, if anything, I would expect it to help bring structure to medicine, which is an often sloppy profession killing somewhere between tens of thousands and hundreds of thousands of people a year through mistakes and out of date practices. As medicine is currently very subjective. As a scientific field in the realm of physical sciences, it shouldn't be.
- mattlondon 6mo agoI was just talking to some friends in medicine the other day. They are getting more and more AI stuff and they love it. Just basic stuff like smart dictation that listens to the conversation the practitioner is having and auto creates the medical notes, letters, prescriptions etc saving them time and effort to type that all up themselves etc. They were saying that obviously they have to check everything but it was (and I quote) "scarily perfectly accurate". Freeing up a bunch of their time to actually be with the patient and not have to spend time typing etc.
- noisem4ker 6mo agoIt's way beyond dictation. Medics I know (fresh postgraduates who used LLMs to help write their R code for statistical analysis for their research) are starting to treat it as one of their peers for domain reasoning, e.g. for discussing whether the conditions for a heart transplant are met. They're indeed in the "wow, this thing is human-like" stage, just not in the "let's delegate to the super brain, and then rubber-stamp the result at the end if it looks good" one we seem to be in... perhaps yet.
- jochem9 6mo agoThis is the crazy part with LLMs. It knows much more than you as a single user will ever realize, as it only shows the part that matches with what you put in. I was building a tool to do exploratory data analysis. The data is manufacturing stuff (data from 10s of factories, having low level sensor data, human enrichments, all the way up to pre-agregated OEE performance KPIs). I didn't even have to give it any documentation on how the factories work - it just knew from the data what it was dealing with and it is very accurate to the extent I can evaluate. People who actually know the domain are raving about it.
- weiyong1024 6mo ago[flagged]
- jeremie_strand 6mo ago[dead]
- samrus 6mo agoThey really shouldnt have read all the changes individually. What you gotta do is set up your VC properly so these changes are seperated from good code, and then review the whole set of changes in an IDE that highlights them, like a proto PR. Thats far far less taxing since you get the whole picture
- orangecoffee 6mo agoThe author has arrived at resentful acceptance of the models power(eg: "negative externalities", "condemn those who choose"). But the next step for many is championing acceptance. Eg "that the same kind of success is available outside the world of highly structured language" .. it actually is visible when you engage with people. I'm myself going through this transition.
- 0gs 6mo agogiving partial credit to Rust, the language, for shipping production code because you "hate" the experience of agent-driven development so much is an amazing move. i didn't think we could push things forward so fast. i guess Rust is just that powerful
- beej71 6mo agoThe door is really opening for programmers who like getting stuff made, and really closing for those who like making stuff at a low level. No need to get out the chisel to carve those intricate designs in your chair back. We can just get that made by pressing "1". Sorry, those of you who took pride in chiseling. I'm definitely in the latter group. I can and do use AI to build things, but it's pretty dull for me. I've spent hours and hours putting together a TUI window system by hand recently (on my own time) that Claude could have made in minutes. I rewrote it a number of times, learning new things each time. There's a dual goal there: learn things and make a thing. Times change, certainly. Glad to be in semi-retirement where I still get to hand carve software.