If AI coding is lowering your code quality, you're not managing quality right
Thread
Unofficial Hacker News client; not affiliated with Y Combinator.
If AI coding is lowering your code quality, you're not managing quality right
Unofficial Hacker News client; not affiliated with Y Combinator.
zug_zug · · focus · HN ↗
However, I just don't think that's realistic. It's asking an author to suddenly become an editor. It's asking somebody who writes code to now read and debug others code.
It can actually be harder to find the the bug in a tricky piece of code than it can be to write your own correct code from scratch. I see AI introduce all sorts of bugs all the time in my personal projects that I would never introduce, and would never think to test for, especially around anything graphical.
christophilus · · focus · HN ↗
This has been a big part of the job for anyone on a team for at least 20 years. I do agree that it’s the hardest and worst part of the job, and has now become the majority of the job for anyone who isn’t vibe coding. So, that sucks.
phrotoma · · focus · HN ↗
Anybody who has reviewed pull requests can tell you that sooner or later you approve a PR after many rounds of changes because it's finally "good enough".
Fighting with a robot to just do the damned thing is less fraught because they don't get offended by critiques but it takes more round trips to get them pointed in the direction you want.
thw_9a83c · · focus · HN ↗
zahlman · · focus · HN ↗
thw_9a83c · · focus · HN ↗
OptionOfT · · focus · HN ↗
The largest problem these days is the volume of code developers are expected to review. The volume went up significantly.
Daishiman · · focus · HN ↗
By far the biggest problem 90% of developers have with AI is that they should be turning off comments, as it's clear that the training data they have is no good for developing a theory of mind for an engineer who has to read them.
I've turned them off and add them myself at review time and am quite happy.
zahlman · · focus · HN ↗
theshrike79 · · focus · HN ↗
This is the best and worst thing about LLM coding agents. They trust comments way too implicitly. And then the errors just keep compounding.
Or a temporary hack that becomes "load-bearing" because the agent doesn't figure out that it's supposed to be a temporary testing shim - instead it keeps building on it until it basically duplicates what it's mocking.
geertj · · focus · HN ↗
I think that’s right, and what is needed. It still gives a significant speed up for coding, while still keeping the output human maintainable.
There is the idea that the agent will just produce binary code directly at some point. I don’t know if it ever comes to that but for now I’m in the ‘I’ve become an editor’ camp.
bigstrat2003 · · focus · HN ↗
sfn42 · · focus · HN ↗
This way I don't need to scrutinize every detail, I just look over the big picture. I also care a lot more about the big picture - architecture and data flow etc. Basically if you view your codebase as a tree I care much more about the trunk and the big branches than I do about the smaller branches and particularly the leaves. So the details of some little leaf function somewhere are fairly insignificant, it's trivial to change at any time. As long as it works and isn't unreasonably slow it's fine.
Working this way I can get things done in minutes or hours that would previously take days or even weeks.
abalashov · · focus · HN ↗
I'll bet you know it because you wrote and/or worked on it manually, likely over a period of years. The odds of you knowing a slop codebase that well, or even particularly at all, are much lower.
arcanemachiner · · focus · HN ↗
yosefk · · focus · HN ↗
dist-epoch · · focus · HN ↗
And prompted it can extract the black boxes if you tell it what the boxes are or what to look for.
Same for cleaning up tech debt after organic development, it's suggestions on how to simplify and modularize are good, but you need to prompt.
Given that the prompts are quite generic, "look for technical debt, suggest simpler architectures, what could be extracted in a separate module", it won't be long till it will do it on it's own.
zahlman · · focus · HN ↗
sameerds · · focus · HN ↗
That's exactly right. Open source projects are currently drowning under LLM generated PRs, where those who used to write code are simply punting that work to AI, but still expecting others to review it. It's not okay to expect such a free lunch. If you moved the labour of writing code one step away, then you are yourself the first line of defence now, so you better start reviewing code that you claim to be yours.
sfn42 · · focus · HN ↗
I expect the same from colleagues, I'm not interested in treating them as a middle man between me and Claude.
skybrian · · focus · HN ↗
CoolestBeans · · focus · HN ↗
Daishiman · · focus · HN ↗
This is referred to in the need for E2E testing and E2E testing not being a substitute.
Code review is definitely the biggest challenge of AI-driven development IMO. I still have not found good processes that work in my org, but for my personal work I independently reached the author's conclusions a while ago and am very satisfied with the results.
zahlman · · focus · HN ↗
Writing code has always involved reading and debugging your own code, at an absolute minimum, even if you did everything solo. In any remotely serious collaborative effort, it also involved code review and collaborative debugging; people use issue trackers and assign themselves and each other "tickets", which often involve fixing issues that are ultimately caused by someone else's code.
> It can actually be harder to find the the bug in a tricky piece of code than it can be to write your own correct code from scratch.
Part of the point is to reject tricky code exactly because it is tricky (as this is rarely actually necessary).
DANmode · · focus · HN ↗
It’s asking an author to suddenly become an editor if they decide to use the robot for a task.
Certain workplaces are demanding this - but not all.
Many still just want working commits without tech debt.
In fact, private and public teams alike are backed up at the PR review stage, so, lots of sane places wouldn’t mind individual contributors using the robot less - especially if its use increases the complexity of reviewing the task.
Speed isn’t the only variable to optimize for!