Top
Best
New

Posted by gumby 6 hours ago

AI coding agents generate more code, but not more software(arstechnica.com)
290 points | 248 commentspage 4
skolos 5 hours ago|
My experience is that agents are decent in coding a feature, solving a bug - doing specific well defined task. They are very bad at judging UI/UX and user flows through app. Like really, really bad. They can quickly put together vibe coded app but make it usable takes a lot of extra manual work.

Did anyone solve this problem? Any good approaches?

2cynykyl 5 hours ago|
I confirm this diagnosis. The UIs are always clunky, disorganized, and kinda ugly. But they work well enough. I guess UIs are opinionated enough that we probably all customize them anyway. Maybe the agents know this so don't bother putting too much effort in? (Deep thought of the day: acquired)
siliconc0w 3 hours ago||
The PR->merge->deploy SDLC is probably not what we want anymore.

Something like continuously delivery and validation through the whole stack so you can develop an incremental change, validate it as much as you can locally, then validate it as much as you can in the cloud using integration tests with synthetic, then with replayed production, and then finally allow it become production. If stuff starts breaking, you have your AI swam go in, identify the culprit, bounce it, and the train never stops.

joking 3 hours ago||
one thing i noticed, there are a lot of new things, but the software has not changed at all, we are building the same things again and again, but no new things.
leoc 3 hours ago||
My conclusion from all this is that Douglas Adams joined the writing team some time ago and has been responsible for the whole LLM arc.
pllbnk 3 hours ago||
I have a pet theory. LLMs are trained on many successful open source projects. Due to their success, the projects are used very widely and they cover extreme edge cases which have accumulated over many years and which are usually not covered, and don't need to be covered, in majority of regular software. So, when LLMs write code, they try to mimic the code they have been trained on and incorporate these edge cases into each fragment they write. It results in more code which is also harder to read and comprehend.
jpurnell 5 hours ago||
I've spent most of my time working on tools to keep my agents on track, and keep code legible. Where I'm probably most strict in the tooling is on documentation, which makes the code review much more manageable.
giancarlostoro 6 hours ago||
Maybe for some orgs, I know theres orgs out there where there is no such review only QA and unit testing.
a34729t 5 hours ago|
We got rid of end to end QA as head of engineering decided to "shift left" on automation.
xnx 5 hours ago||
The paper is from January, so the data is probably from 2025. Very unlikely anything in the paper is relevant now (if it ever was).
hajile 5 hours ago|
The paper was updated in August this year.
CharlieDigital 6 hours ago||
Along these lines: agents will write mountains of super repetitive test code, seemingly uninterested in refactoring it (without explicit instruction) to reduce redundancies.

In any non-trivial integration test scenario, it's easy to end up several times the LoC in tests compared to actual shipped code.

Second problem: different models, agents, and harnesses seem to have different tendencies and they tend to avoid touching code that is not their own unless explicitly instructed. What I mean by this: it will happily duplicate some helper method from another test file rather than pulling it out and reusing it, seemingly avoiding coupling (good kind in this case since model level changes should be propagated atomically).

Tests are where I see agents just spew absolute mountains of code.

japhyr 6 hours ago||
When people have gotten excited about having so many tests, I've asked them what their plan is when 500 of their 1000 test suddenly stop passing. I've always favored 50 tests I know are meaningful, where any failure is something to respond to, over 500 tests with a bunch of overlap and edge cases I'm not sure matter. But now people aren't even thinking about that, they're just letting the agents make all those decisions.

I think this approach will continue to work for some people and orgs, but others are going to hit walls where their agents can't manage the mountains anymore. It's going to be interesting to see how people and orgs respond when that happens.

CharlieDigital 6 hours ago|||

    > I've asked them what their plan is when 500 of their 1000 test suddenly stop passing
That's not a terrible thing; would indicate that some shared behavior is broken and -- assuming well structured code -- hopefully easy to isolate the behavior.

Bigger problems to me are more practical: 1) large tests waste context both in and out, 2) large volume of tests waste CI cycles which are becoming the bottleneck.

mejutoco 4 hours ago||
IMO the solution to too many tests is to encode more things in the type system. If you can encode constraints like the length of an array in the type system you know it is correct if it compiles, and that is one less run-time test to run.
CharlieDigital 3 hours ago||
Agree, but this is not a pattern that is emergent from any coding agent I've used; it is only the result of explicit guidance to structure code in specific ways + relying on platform level analyzers.

But more specifically, I usually see the explosion of test code in integration tests where there is heavy setup of entity graphs.

StilesCrisis 5 hours ago|||
Back up to the point where all the tests were passing, of course? Then debug.
mejutoco 4 hours ago||
or git bisect until you get the exact commit that introduced it
crnkofe 5 hours ago||
Every senior I've ever worked with at some point embraced the idea of minimalism. Produce minimal changes with a minimal surface. Worked well at startups and especially well on large spaghetti legacy projects. Seeing all of a sudden now how suddenly number of kLocs, PRs, token maxxing, number of tasks in progress is again a metric with which non-engineers brag about on engineering conferences feels like the industry has reverted to some braindead pre-infant state. I guess all mistakes need to be relearned at every hype cycle.
CharlieDigital 5 hours ago||
This doesn't solve the issue with "too many tests", but one of my teams addressed this to some extent by writing "blueprints" for test scaffolding that specifically aims to surface the scenario under test.

https://github.com/zeeq-ai/zeeq-biome

Was initially hand written as part of our codebase before AI, just extracted it as MIT, OSS since there's no secret sauce here. But really cuts down on test verbosity and makes it much, much easier to read, review, and evaluate tests.

shon 4 hours ago|
The title should include “IF you’re still tied to a traditional human-reviewed dev process” at the end.

The reality is that new apps and new companies are being built without the bottleneck, constantly now.

Look at the shipping speed of the frontier labs themselves. It’s all the evidence you need to know that this isn’t true.

bigstrat2003 3 hours ago|
> Look at the shipping speed of the frontier labs themselves. It’s all the evidence you need to know that this isn’t true.

I certainly look at how their software sucks, and wonder why their fans think the rest of us should adopt such a bad approach to making software.

shon 1 hour ago||
Sure pal. I’m suuuure you walk the walk and don’t use ANY of their software. lol…
More comments...