| ▲ | wild_egg 3 hours ago |
| After a certain experience level though, I think most of us get to the point of knowing what that difference in quality actually matters. Some seniors love to bikeshed PRs all day because they can do it better but generally that activity has zero actual value. Sometimes it matters, often it doesn't. Stop with the "I could do this better by hand" and ask "is it worth the extra 4 hours to do this by hand, or is this actually good enough to meet the goals?" |
|
| ▲ | throwawayffffas 3 hours ago | parent | next [-] |
| LLM generated code is technical debt. If you are still working on the codebase the next day it will bite you. It might be as simple as an inconvenient interface, a bunch of duplicated functions that could just be imported, but eventually you are going to have to pay it. |
| |
| ▲ | visarga 2 hours ago | parent | next [-] | | Untested undocumented LLM code is technical debt, but if you do specs and tests it's actually the opposite, you can go beyond technical debt and regenerate your code as you like. You just need testing to be so good it guarantees the behavior you care about, and that is easier in our age of AI coding agents. | | |
| ▲ | mkroman 2 hours ago | parent [-] | | > but if you do specs and tests it's actually the opposite, you can go beyond technical debt and regenerate your code as you like. Having to write all the specs and tests just right so you can regenerate the code until you get the desired output just sounds like an expensive version of the infinite monkey theorem, but with LLMs instead of monkeys. | | |
| ▲ | fourthark 2 hours ago | parent [-] | | You can have it write the specs and tests, too, and review and refine them much faster than you could write them. |
|
| |
| ▲ | ymyms 3 hours ago | parent | prev | next [-] | | All code is technical debt though. We can't spend infinite hours finding the absolute minima of technical debt introduced for a change, so it is just finding the right balance. That balance is highly dependent on a huge amount of factors: how core is the system, what is the system used for, what stage of development is the system, etc. | |
| ▲ | 2muchcoffeeman 2 hours ago | parent | prev | next [-] | | Are people not reviewing and refactoring LLM code? | |
| ▲ | bdangubic 3 hours ago | parent | prev [-] | | In your comment replace “LLM” with “Human SWE” and statement will still be correct in vast majority of the situations :) | | |
| ▲ | throwawayffffas 3 hours ago | parent [-] | | That's legit true. All code is technical debt. Human SWEs have one saving grace. Sometimes they refactor and reduce some of the debt. | | |
| ▲ | ymyms 2 hours ago | parent [-] | | A human SWE can use an LLM to refactor and reduce some of the debt just as easily too. I think fundamentally, the possible rate of new code and new technical debt introduced by LLMs is much higher than a human SWE. Left unchecked, a human still needs sleep and more humans can't be added with more compute. There's an interesting aspect to the LLM debt being taken on though in that I'm sure some are taking it on now in the bet/hopes that further advancements in LLMs will make it more easily addressable in the future before it is a real problem. |
|
|
|
|
| ▲ | Arch-TK 3 hours ago | parent | prev | next [-] |
| "actually good enough to meet the goals?" There's "okay for now" and then there's "this is so crap that if we set our bar this low we'll be knee deep in tech debt in a month". A lot of LLM output in the specific areas _I_ work in is firmly in that latter category and many times just doesn't work. |
| |
| ▲ | gbnwl 3 hours ago | parent | next [-] | | So I can tell you don’t use these tools, or at least much, because at the speed of development with them you’ll be knee deep in tech debt in a day, not a month, but as a corollary can have the same agentic coding tools undergo the equivalent of weeks of addressing tech debt the next day. Well, I think this applies to greenfield AI-first oriented projects that work this way from the get go and with few humans in the loop (human to human communication definitely becomes the rate limiting step). But I imagine that’s not the nature of your work. | | |
| ▲ | daveguy 4 minutes ago | parent [-] | | I think you missed the your parent post's phrase "in the specific areas _I_ work in" ... LLMs are a lot better at crud and boilerplate than novel hardware interfaces and a bunch of other domains. |
| |
| ▲ | ambicapter 2 hours ago | parent | prev [-] | | I mean, there's also, "this looks fine but if I actually had written this code I would've naturally spent more time on it which would have led me to anticipate the future of this code just a little bit more and I will only feel that awkwardness when I come back to this code in two weeks, and then we'll do it all over again". It's a spectrum. |
|
|
| ▲ | 3 hours ago | parent | prev | next [-] |
| [deleted] |
|
| ▲ | hu3 3 hours ago | parent | prev | next [-] |
| Perhaps writing code by hand will be considered micro optimisation in the future. Just like writing assembly is today. |
|
| ▲ | rtpg 2 hours ago | parent | prev [-] |
| now sometimes that's 4 hours, but I've had plenty of times where I'm "racing" people using LLMs and I basically get the coding done before them. Once I debugged an issue before the robot was done `ls`-ing the codebase! The shape of the problem is super important in considering the results here |