80 points doppp 1 hour ago 96 comments

tphyahoo2 51 minutes ago | parent

"To come back to the point of why agents can’t (really) deal with the slop themselves, we need to look at the evaluation of SlopCodeBench. In contrast to other coding benchmarks, which give the agent a complete list of instructions at the start and then have a set of hidden tests the program needs to pass, they do the opposite. They create multiple rounds of instruction and test iterations, where in between checkpoints the context of the models is erased. Thereby mimicking much more closely an iterative process, like how coding agents are actually used by humans. The result of that is that bad coding decisions accumulate over time and for the strict solve rate, where all tests have to be passed at all checkpoints, even state of the art models achieve 0% pass rate"

I like how this captures with a metric (lines of code and cyclomatic complexity, some other basically tractable measures) in an automated way, something we all by now intuitively know.

fosterfriends 48 minutes ago | parent

I love this train of thought. Code quality is critical, but I don’t think we’re correctly evaling it at the moment. If we could get solid benchmarks measuring the quality of generated code, we might see the models climb those benches fast.

I believe that the era of “ai writes tons of slop code” will be a stepping stone in the longer story, and is simply a current gap in the reward functions.

Per the author - if we can get strong measurements of what good code is, we can train against it and close the gap fast. Excited to see more thinking in this area

loveparade 46 minutes ago | parent

If you could easily benchmark the quality of code then models would be trained on these benchmarks/metrics.

yehoshuapw 44 minutes ago | parent

that is true, but if the metric is what we want optimized, then that's fine.

However it is more likely to be something which can be detached..

peder 45 minutes ago | parent

Sooooo much of what is considered "code quality" today is irrelevant when robots are writing the code. We've been largely optimizing for things like composability/unit testability in the past 15 or so years, and that's primarily a human concern that's unrelated to the final output.

Totally agreed that we're not looking at the correct metric right now. Increasingly, code quality will be determined by outcomes.

alecbz 36 minutes ago | parent

> that's primarily a human concern that's unrelated to the final output.

It's an LLM concern too. LLMs seem to do better with well-organized codebases, just like the humans they were trained on.

stiiv 36 minutes ago | parent

I think Martin F's team tied outcomes to factoring https://martinfowler.com/articles/exploring-gen-ai/refactori... which is crucial to code quality. Even grug brain developer agree.

On the other hand, there are claims that the best languages for robots tend to be terse (allegedly); I tend to regard a rich domain model (static types, not terse) as a major facet of high-quality code.

FuckButtons 32 minutes ago | parent

I don’t agree with this. The things people care about with code quality if you really think about it actually match up surprisingly well with the metric which models are trained to emulate in pre training, namely compression and modularity. Those two ideas actually seem to be universal to intelligent systems. Writing verbose highly coupled code is I think provably stupid, though I don’t know that I could formalize it.

siscia 47 minutes ago | parent

It is not clear to me how the verbosity metrics works. Can someone shades more light on it?

yorwba 17 minutes ago | parent

It's a bunch of rules flagging specific patterns that could be expressed more succinctly: https://github.com/gabeorlanski/scb-check/tree/a8618228939de...

mococa 45 minutes ago | parent

Well... Coding was never the most part of work I spent time.

marginalia_nu 44 minutes ago | parent

Congrats on your promotion to full time jira management!

hankbond 39 minutes ago | parent

very glib comment.

thinking about how to accurately describe the problem at hand and figuring out the simplest way to approach it takes a lot of effort well before you get to the implementation step of coding.

mococa 10 minutes ago | parent

Exactaly. Some tasks took me hours or days to change a line.

softwaredoug 44 minutes ago | parent

Coding might be "solved" but coding still is the best way to build your own mental model of the solution space.

Which is more important to you: Velocity to a solution? Or velocity to understanding?

nucleative 9 minutes ago | parent

Interesting way to lay it out. For us understanding is obviously crucial for prod and repeatable business functions.

Velocity to solution is default for almost everyone else, especially one-off or low impact / low consequence of failure projects.

vanschelven 43 minutes ago | parent

> I was disappointed at how “vibes based” the industry seems at the moment.

Alan Kay called programming "Pop Culture" some 20 years ago[0]

[0] https://queue.acm.org/doi/10.1145/1039511.1039523

scronkfinkle 43 minutes ago | parent

There is some sense of rose-tinted glasses of pre-LLM coding. A lot of human written code, particularly at the enterprise level, was of low quality well before AI automated it.

victorbjorklund 41 minutes ago | parent

Indeed. And not fair comparisons ”look at the quality of this small one-shot Claude hobby project. The quality is less than this major open source project written by some of the best developers in the world”

marginalia_nu 38 minutes ago | parent

To be fair the pitch has frequently been that Devin/Claude/Astra/whatever is some sort of superhuman bottled John Carmack that will single-handedly replace entire teams of developers.

esafak 28 minutes ago | parent

And it can -- if an able person wields it.

shimman 39 minutes ago | parent

This was always due to pressures by management and the company environment, not the workers themselves. It's hard to blame the people writing code when they have to deal with nontechnical leadership that wants to have a feature factory or never given appropriate resources to solve problems.

Blaming workers is always an excuse by poor management.

Retric 27 minutes ago | parent

Many people were and still are simply terrible developers.

Hand those people an LLM and they don’t suddenly become competent, but they do start slinging more code.

shimman 15 minutes ago | parent

Nah, you're still blaming workers and not leadership. If leadership is okay with not training workers (something American corporations would do in the distant past) then it's not fair to continue to blame workers when leadership is clearly aware of the problem and would rather pocket the money than help workers.

These companies pay management more than workers for a reason, if you can't even admit that they are to blame then what are you trying to do here? Just attack workers for what reason exactly? Being anti-worker is a great tell to never trust a person.

softwaredoug 37 minutes ago | parent

I don't doubt that. But humans still need to be responsible for understanding what they're shipping. And IMO you get your best understanding by actually writing some code. Even if you don't actually ship what you wrote.

baridbelmedar 30 minutes ago | parent

Let’s not romanticize it too much... A lot of enterprise systems are built by developers copying an old AbstractBeanFactoryFactory from a 2011 stack overflow thread without really understanding it :)

FloorEgg 29 minutes ago | parent

> But humans still need to be responsible for understanding what they're shipping

I don't necessarily disagree. That said...

Why?

I've been grappling with this myself. There is an easy/obvious answer, but I wonder how stable/permanent it is. If you feel strongly about this, are you willing to unpack your judgement?

softwaredoug 25 minutes ago | parent

Certainly the population of people that need to know how something works is much smaller.

But even still, cognitive debt is a real, documented phenomenon where we lose our ability to change projects.[1]

We also know coding agents tend to accumulate slop in projects over time without some human intervention[2]

There's also the concern of whether its a good idea to be dependent on an addictive slot machine run by a trillion dollar company to do your work.

1 - https://simonwillison.net/2026/Feb/15/cognitive-debt/

2 - https://www.scbench.ai/

JodieBenitez 25 minutes ago | parent

Yeah... like we all get to start green field projects and write all the code we should understand. Many of us cut our teeth on bad legacy stuff with no proper documentation made by "engineers" long gone. At least a LLM can easily make sense of this mess.

Tanjreeve 31 minutes ago | parent

1. People didn’t wear that as a badge of honour though.

2. A lot of it wasn’t. Low quality code/speed serves a purpose for point solutions and scripts etc. That’s not the same thing as writing a core system and if the user doesn’t put any credentials in for an S3 bucket then it falls back to giving information about your own S3 bucket (as I’ve seen just this week).

3. Plenty of companies you can discern the difference between mission critical systems versus “business” systems where if it falls over it’s annoying but not the end of the world.

ramijames 29 minutes ago | parent

Not "a lot of". "The majority of".

I've been doing development, in one way or another, since the 90s. I've worked with dozens of teams from enterprises to startups. Hundreds of developers. The quality of work has been all over the place, but the majority was not great.

I'm arguing that what people today call "AI slop" is already higher quality than what most developers created historically, and the fact that tests and documentation pretty much come for free now means that the floor has been raised.

The quality of AI generated code is not great. Yes, it will get better. It's already better than 65%+ of what regular devs can do AND it is faster to produce, iterate, and release.

avgDev 29 minutes ago | parent

Writing code at enterprise level is insanely difficult. You are constrained by budget, staff, legacy databases/environments, business rules hiding all over the place, and people.

You can't just rewrite everything. So over many years people are touching small parts of the pie.

If it works it isn't low quality.

Dlemlo 18 minutes ago | parent

The code I have seen and see still, started shitty.

harshalizee 15 minutes ago | parent

Yeah, enterprise code has that trope of being enterprise-y, verbose and bad. In my experience, that has always been the opposite. At the big corps/FAANGs I worked at, a single line of change can adversely impact millions of paying customers, so a lot of the verbosity and harnesses exists to dampen the failure modes. Most of the terribly written stuff has always been at startups, where devs fling nearly anything across the finish line, if it barely works the happy path.

thi2 26 minutes ago | parent

That is very true and with llms someone who wrote low quality code can now output a whole lot more code. Maybe in better quality, maybe not.

bunderbunder 14 minutes ago | parent

I'm not so sure that's a fair comparison.

So much "bad" enterprise code evolved into that state over years or even decades of small changes. Meanwhile, last year I got to watch an LLM-authored codebase speedrun itself into a similar state in only a couple months. And I would say that the enterprise code was actually better. It at least did its job fairly reliably. The LLM codebase was riddled with defects, so much so that it ate up all our time and our feature delivery rate ground to a halt.

There are two observations that really eat at me:

1. Studies seem to indicate that agentic coding uses 2-10x as many lines of code to accomplish the same task.

2. One of the only really well-established empirical results in software engineering is the strong association between LOC and defect rate.

devin 10 minutes ago | parent

This is happening all over the place right now. There is a ton of greenfield happening, which further adds to the illusion of speed. Eventually you produce a big old pile of shit that even with the help of the LLM is weird to reason about, and it slows way down. Many such cases.

Varelion 43 minutes ago | parent

Coding is solved, but AI companies are still hiring software engineers?

elcritch 39 minutes ago | parent

Best explanation I’ve heard is that “coding is solved but software engineering hasn’t”.

devld 33 minutes ago | parent

* slop engineering

Dlemlo 14 minutes ago | parent

So they still might do but in parallel the software engineering market in china and india is collapsing.

Varelion 11 minutes ago | parent

Source?

linsomniac 42 minutes ago | parent

I wonder how much of this is due to the AI tooling being taught on sloppy code that humans have written. Over the last 4 decades I've looked at a lot of code on the Internet and there's a lot of slop out there.

_pdp_ 40 minutes ago | parent

It will be solved when there is no more code left to write.

Code is an abstract concept that is not bound to the physical world and I imagine that future will have some much more of it that it is difficult to comprehend. Everything will be code and more code will be written than ever before.

Code will never going to be solved. The question is how much humans will be involved and I think the evidence is that perhaps just a bit. However, because we are talking about vast libraries of code even if we are involved in under 1% of all code and decision making that is needed around the code, there are still not enough developers out there to take on the task.

I might be wrong :)

wang_li 28 minutes ago | parent

Code and software and applications are an intermediate stage. The final stage is an AI/LLM that just does the thing that is needed without any code being written, there are no applications or programs, just an AI that does everything.

danbruc 39 minutes ago | parent

Coding is not solved, correctness is not a feature, it is the bare minimum. If your code does not do what it is supposed to do, you could as well have no code at all. Efficiency, security, maintainability, reliability, readability, understandability, extensibility, maintainability, observability, portability, ... this is what high quality coding is about, not that it works, that is a given. And in my experience current models are pretty bad at this.

zsoltkacsandi 36 minutes ago | parent

That is very well put and summarizes what distinguishes real software development from vibe coding.

Dlemlo 28 minutes ago | parent

I have seen so much production code with garbage code and massive bugs, the industry doesn't care for 'real'.

ahalay-mahalay 23 minutes ago | parent

I’m pretty sure that same discourse was seen every mass production epoch, from textiles to electronics. Yet here we are, hand-crafted high quality things are rare and expensive.

echelon 33 minutes ago | parent

And all of these things will be solved one by one.

It's astounding to me that people can see coding get solved and not think every single one of these tasks won't be solved too.

Why in the hell do you not think these things aren't going to be completely automated?

Fable and Astra can one-shot video games with compelling novel game loops. They can do systems programming, distributed systems, robotics. I haven't found a weak point.

Seedance 2.5 can make video better than the manual labor of VFX artists, 3D artists, and animators.

Nano Banana and GPT Image can do a better job than graphics designers.

LLMs just solved a Millennium Prize Problem, and there are probably more that will fall in the coming weeks.

Just wait. All of these things will be solved.

There is no "stopping point".

Edit:

Don't anticipate that 2036 will look anything like 2026.

Will Smith spaghetti doesn't stay that way forever. Trillions of dollars will be spent on solving these problems. They will be solved.

dwroberts 28 minutes ago | parent

I think the usage of solved is silly. Things get automated, they basically never get ‘solved’.

Will all these things get automation? Yeah sure. But the idea that they will be perfect automated solutions applicable in all cases is just marketing, it’s not reality.

BowBun 27 minutes ago | parent

> compelling novel game loops

Tell that to the mountain of failed AI slop games on Steam! As a game dev, building compelling, fun games is not even something humans are good at doing consistently. The AI can build the tech, but it can't make something 'fun' yet (unless your bar for fun is simply that a tool created a thing).

danbruc 27 minutes ago | parent

I have no doubt that AI will eventually be able to write essentially perfect code, I am just saying that we are still quite far away from that point.

sigbottle 27 minutes ago | parent

May the iterative loop of adding new axes to evaluate on be a natural, healthy progression, instead of needing to frame it as an us-them problem?

If you value humans intrinsically, this is necessarily the loop that will converge. I don't think humans have deep intensional a priori knowledge of the structure of reality. If we did, then we wouldn't need tools like AI because we'd be a superset of that. We can only observe and judge.

If we don't value humans, then sure, I think AI is at the point where it can kill all humans (conditional on sentience and resources etc). Two ways to solve a problem - solve the problem, or eliminate the problem statement. Plenty of easier vectors to eliminate the "problem statement", than say, try to solve problems such as making human life better. If you do value the latter though, there will necessarily be human judgers. That's how it works.

testaccount121 26 minutes ago | parent

yep it blows my mind that competent people don't get this. fable can code better than 80% of people in the software profession. There's no ifs and buts about it. There are a lot of great developers here so to most it's probably not obvious that LLMs have blown a giant hole in the future headcount of this profession.

i understand the cope because it legit seems like such a cynical thing to say but we have to face the reality at hand.

echelon 19 minutes ago | parent

People are ego-centric and pull a blindfold over their eyes.

_s_a_m_ 26 minutes ago | parent

God, why are you so stupid.

mbernstein 25 minutes ago | parent

I think you need to define what solved means and what better means.

Have you tried one-shotting real distributed systems problems? What was the result and how did you verify correctness?

Dlemlo 19 minutes ago | parent

Like the 0.1% we do is your counter example?

But lets be fair, if an expert would use AI today to build something with this, I would feel a lot more confident than not doing this.

I would start with the base architecture and add all the guardrails for a distributed system, i might even go so far to leverage the math skills of a frontier model like fable or astra. I would for sure have the proper budget for using Fable/Astra.

_s_a_m_ 29 minutes ago | parent

Amen. I sometimes wonder if all programmers are now marketing people who know shit about software development and engineering.

perchard 29 minutes ago | parent

second sentence of the article: "Just because the code is formally correct doesn’t mean that it is not introducing unnecessary abstractions, creating duplicates, or just making bad decisions overall. This is not a groundbreaking observation, most people who have vibe-coded a project, have realized that each additional feature can sometimes lead to an explosion of lines of code (LOC)."

gedy 27 minutes ago | parent

"Coding" is just a poor term for this, as there's so much room to weasel different meanings out of it. At every company I've worked in past 20+ years the "coders" were engineering a product from wrong or unclear requirements and specs from non-technical people. The act of coding was secondary (but an important throttling function to make us stop and think about what is even possible or makes sense.) Never did FAANGs, so YMMV.

Really doubt we are near that being solved with non-technical folks + LLMs. I'm seeing people gleefully rebuilding products with the exact same blind spots in their understanding/logic using LLMs. Claude, etc are not seemingly able to "AGI" around goofy asks. The CSS looks a little nicer than their legacy products though, lol.

chucksmash 26 minutes ago | parent

Correctness is not a binary thing though.

I doubt many people here are brave enough to claim their code does what is supposed to do in every conceivable case. Maybe you have high confidence in the correctness of parts of the code. Correctness of an application is murky though. Things we build are never fully correct, merely correct enough. Like maybe you're responsible for the UI in a web app and you're using your expertise to ensure it gracefully handles display across browsers and a gamut of screen sizes/form factors. But are you also verifying how it works when localized with an RtL script? Are you checking every change you make against CJK?

danbruc 18 minutes ago | parent

Sure, every sufficiently large codebase will have bugs somewhere, but it will work correctly at least something like 99.999 % of the time after ironing out the bugs on the common code paths. But that does not change the fact that being [mostly] correct is the lowest bar you have to cross.

binary0010 25 minutes ago | parent

I just setup a large refactor with Astra and was feeling super lazy and let it mostly do it without my usual extreme micro managing.

The refactor ended up adding 22,000 loc.

I went in there and quickly read through it, laughed my ass off. Reverted the work tree. Micromanaged a new refactor. Net lines of code for something really elegant and easy to reason about was -3k loc in the project.

In case you are wondering why vibe coders are doing 30k loc a day, this is why.

Supermancho 22 minutes ago | parent

> Efficiency, security, maintainability, reliability, readability, understandability, extensibility, maintainability, observability, portability

My experience is a little different. For higher abstraction languages the output is largely acceptable in my work. I always consider that LLMs don't know what I don't tell them and they have limited context to work from. Coding issues I often identify:

* Efficiency. Marginal by default. Coding efficiency problems often appear because LLMs dont usually consider the entire codebase or future plans (although they do guess at some futures). Sometimes they write/name things in ways that are lazy/wasted cycles. Most of the time, they don't.

* Security. Marginal by default. I say they do pretty good. Considering all the failure modes, not so much.

* Maintainability. Marginal by default. Mostly due to the careful consideration of modularity, upgrade paths, etc. while often taking wildly different approaches to solutions without having specific broad instructions. Even then, there can be big gaps in quality.

* Observability. Not acceptable by default. There's usually some consideration and can often one-shot.

* Portability. Not acceptable by default. Good, if you specify what those targets are. Regardless, testing validates this above the coding and models are very good at hitting functional test targets. This is less of an issue in something like Java ofc.

danielvaughn 20 minutes ago | parent

Yes. I use these models day in and day out, on all sorts of tasks. I cannot believe I hear people say that coding is solved.

dnikolovv 13 minutes ago | parent

Right. It feels like we're living in a parallel world or something. Can agents code? Sure. Can you let them code on their own for a serious production project? Not a chance.

heaney-555 5 minutes ago | parent

Plenty of serious production projects are doing exactly that. Are you using GPT-6 Astra, or something older?

mr_roboto 16 minutes ago | parent

You come across as someone who has never worked on a real software project. Humans create tons of bugs on a regular basis. AI is already better than most programmers.

OtomotO 14 minutes ago | parent

AI is the average of all programmers.

It's just that many (I guess that includes me? :D) assumed that they are better than the actually were.

whatever1 13 minutes ago | parent

Better at writing one piece of code, maybe.

Better at writing code within a huge system, definitely not. Maybe in the future, but as of Astra, Fable 5.1, the answer is still no.

danbruc 7 minutes ago | parent

I have worked my entire life as a professional software developer and I agree, even among senior developers I would guess [way] less then 10 % consistently produce high quality code. But if I have to decided whether I want to use an AI to help me write code, I does not matter if it can write better code then an unexperienced junior, it has to write better code than I would on my own.

skrebbel 36 minutes ago | parent

Big “if” you got there

Kinrany 34 minutes ago | parent

Number of iterations solved correctly, on a very large set of iterations, seems like a very good metric. Better than anything else because it measures what we actually care about, not some proxy.

The only caveat is that it's the same model doing an iteration and then using that iteration as a starting point for the next step. So the model is allowed to write absolutely insane solutions, as long as it can read them back, even if no one else can.

One thing that could be done is to use a separately developed baseline coding model B to evaluate the outcome of each iteration. For model under test X to pass an iteration, not only should it be able to solve starting from the previous solution, but so should B, starting from X's previous solution.

cjalmeida 32 minutes ago | parent

>In my research and tests simply taking the change in the number of LOCs has been a surprisingly effective metric for sloppiness, with the ironic caveat that if we started optimizing for it, it would cease to be a meaningful measure.

This matches my experience. Before working on an issue, I ask the LLM to estimate net LOCs at the final PR based on the scope. It works well, and review steps do flag inconsistencies. But as the OP mentioned, if you turn this into a hard metric vs "design smell", you can see LLMs code-golfing for oneliners.

Xenoamorphous 31 minutes ago | parent

Sad as it might sound, I think we might have to stop worrying about the code.

guayusa 30 minutes ago | parent

Solving consciousness ;)

cheney_2004 30 minutes ago | parent

Ya, now that I have some solid AI coding experience under my belt, there does seem to be some gaps between practice and reality. I have a fairly complex codebase which I pretty much hand code everything. When I add a new feature, I spend a lot of time designing and refactoring that feature into the codebase. Either the feature dovetails into the existing design or the feature creates new designs which will then facilitate even better future features. When AI approaches the feature, it just plows the feature in, and with bugs since it has trouble fully understanding the total design. So over time, you have a spaghetti design where you just have a whole bunch of features tied together with no unified design. I guess thats ok if AI is supporting it, but you now have a large cost and bug surface area and an insane human learning curve. So nothing has really changed here, we have been dealing with low quality codebases way before AI came along. I think AI has mastered the one shot single feature, tool, or simple app, but it struggles with the design complexity of a rich multi feature application or system.

avgDev 25 minutes ago | parent

I encountered bugs created by AI. No matter how many times it tried it could not fix the bug, it was introducing so much slop to work around the issue.

I finally gave up and read documentation for 15 minutes and solved the problem.

I will never push AI generated code to production without understanding it, and this is why I only generate small code snippets and copy/paste most of the time.

tloopff 29 minutes ago | parent

Claim: AI writes almost perfect code.

Reality: earandil.com uses 170% CPU in Firefox.

What has this author written before LLMs? Why should we listen to him and his adjudication of "perfect code"?

Cyclomatic complexity is the oldest paper generating grift for college students. There are hundreds of thousands of useless papers about cyclomatic complexity.

antoni4040 29 minutes ago | parent

Coding has been solved for 20 years at least.

90% of problems are easy once you know what you actually want well enough for you to be able to ask it from an LLM.

90% of code before LLMs was badly copied from StackOverflow anyway.

That 10% that's remaining, I've see 0, ZERO, nil progress. Windows is still awful. Spotify still doesn't work correctly offline. Youtube search is trash. Jira takes 20 seconds sometimes to load a task. LLMs haven't created a new database or a new game engine or a new renderer or anything like that.

The maths breakthroughs are really more of a testament to the efforts of the last 150 years for maths to be an organised verifiable principle. If LLMs had to practice math they way Euler did, they wouldn't be able to find shit.

(sorry if I sound incoherent, just some thoughts while I'm commuting)

j45 29 minutes ago | parent

It will be fun to try and deterministically define sloppiness relative to a tool that is not deterministic.

Of course, sloppiness to date can be measured by different shared and interpreted preferences and definitions.

justinmarsan 26 minutes ago | parent

Having reached the same conclusions as the author led me to create my first agent to do architecture review, and that's how I learned about the metrics behind good practices that I'd been following for years. LCOM, cyclomatic complexity, that kind of stuff...

It's so easy to ship a lot of code, more effort should be put into ensuring the code is correct, with self-improving feedback loops that involve developers, and dedicated tooling...

But again, a while ago, everything was about prompt engineering, and now you can express you idea vaguely and get a somewhat working result, so this likely will evolve fast as well...

bobkb 21 minutes ago | parent

Coding just a stage in the software development. Design and specifications which can help in coding is not solved at all and may never - the end result is software reliability is not a solved problem.

conqrr 13 minutes ago | parent

Coding is not just the program running in memory, its also the process of distributing the mental model of understanding among the team.

If humans increasingly are kept out of coding, then who holds the mental model?

If AI holds the mental model, by definition human prompts will be over lossy channel. This is true without AI too. Software quality is directly dependent on good devs that translate from business/PM speak to technical decisions.

So is coding solved now? it was already solved decades ago.

FiberBundle 13 minutes ago | parent

Does anybody actually know whether there's a limit to the complexity LLMs are capable of dealing with in a codebase? It's very obvious that they don't write code that is suitable for people to understand it (and it's gonna get worse and worse the more RL is used to train these models), but if there isn't a point at which LLMs also struggle due to the complexity they introduce, then I'm not sure it really matters anymore for a large part of non safety-critical software. I really hope there is, because steering them is, I feel, one of the last competencies through which I can still add value, but is there actually evidence that these models struggle more with poorly maintained code?

CuriouslyC 12 minutes ago | parent

I started Valknut (https://github.com/sibyllinesoft/valknut) when I saw the writing on the wall regarding Agent code structure/abstractions/etc being a limiting factor in the ability to autonomously build projects. My experience was that good linters helped, but it wasn't enough, you needed to be able to enforce information-theoretic related organizing principles in addition to file/function LOC and local complexity metrics to guide agents on how to structure code.

Originally I tried to walk the line between improved agent performance and human readability, but current models are so good I don't think human readability matters much, though at a high level, being able to grok the overall folder structure still matters. I've got my hands full polishing a demo for my game, but I intend to revisit Valknut by crafting an eval set that lets me calculate the difference in agent token consumption and task failure rate between ~isomorphic codebase structures. This will let me loop agents to discover organizing policies that improve them.

Truthfully though, with today's models I don't think this sort of codebase optimization is likely to have much impact below 250k-300k LoC projects, and it probably won't be a decisive win till you're near 1M. Also, the shelf life of a product like this isn't infinite as each generation of models pushes those numbers up while also having new policy preferences that require re-evaluating existing policies.

RickJWagner 9 minutes ago | parent

If coding is ever solved, and if software does it, sloppiness probably won’t matter much.

Code will become throwaway stuff, like the results of AI prompts. Cook it up, test it for adequacy, and run it. When something comes along that adds new requirements, just update the requirements/prompt and make a new one.

Test suites will be important.