Remix.run Logo
jacquesm 11 hours ago

Well, you will somehow have to turn that 'janky garbage' into quality code, who will do that then?

tokioyoyo 10 hours ago | parent | next [-]

You don't really have to.

fooker 11 hours ago | parent | prev | next [-]

For most code, this never happens in the real world.

The vast majority of code is garbage, and has been for several decades.

pharrington 8 hours ago | parent | next [-]

So we should all work to become better programmers! What I'm seeing now is too many people giving up and saying "most code is bad, so I may was well pump out even worse code MUCH faster." People are chasing convenience and getting a far worse quality of life in exchange.

ben_w 2 hours ago | parent | next [-]

I've seen all four quadrants of [good code, bad code] x [business success, business failure].

The real money we used to get paid was for business success, not directly for code quality; the quality metrics we told ourselves were closer to CV-driven development than anything the people with the money understood let alone cared about, which in turn was why the term "technical debt" was coined as a way to try to get the leadership to care about what we care about.

There's some domains where all that stuff we tell ourselves about quality, absolutely does matter… but then there's the 278th small restaurant that wants a website with a menu, opening hours, and table booking service without having e.g. 1500 American corporations showing up in the cookie consent message to provide analytics they don't need but are still automatically pre-packaged with the off-the-shelf solution.

fooker 8 hours ago | parent | prev [-]

I disagree, most code is not worth improving.

I would rather make N bad prototypes to understand the feasibility of solving N problems than trying to write beautiful code for one misguided problem which may turn out to be a dead end.

There are a few orders of magnitude more problems worth solving than you can write good code for. Your time is your most important resource, writing needlessly robust code, checking for situations that your prototype will never encounter, just wastes time when it gets thrown away.

A good analogy for this is how we built bridges in the Roman empire, versus how we do it now.

pharrington 8 hours ago | parent [-]

Have you ever been frustrated with software before? Has a computer program ever wasted your time by being buggy, obviously too slow or otherwise too resource intensive, having a poorly thought out interface, etc?

fooker 7 hours ago | parent [-]

Yes. I am, however, not willing to spend money to get it fixed.

From the other side, the vast majority of customers will happily take the cheap/free/ad-supported buggy software. This is why we have all these random Google apps, for example.

Take a look at the bug tracker of any large open source codebase, there will be a few tens of thousands of reported bugs. It is worse for closed corporate codebases. The economics to write good code or to get bugs fixed does not make sense until you have a paying customer complain loudly.

bdangubic 10 hours ago | parent | prev [-]

This type of comments get downvoted the most on HN but it is absolute truth, most human-written code is “subpar” (trying to be nice and not say garbage). I have been working as a contractor for many years and code I’ve seen is just… hard to put it into words.

so much discussion here on HN which critiques “vibe codes” etc implies that human would have written it better which is vast vast majority is simply not the case

fooker 9 hours ago | parent [-]

I have worked on some of the most supposedly reliable codebases on earth (compilers) for several decades, and most of the code in compilers is pretty bad.

And most of the code the compiler is expected to compile, seen from the perspective of fixing bugs and issues with compilers, is absolutely terrible. And the day that can be rewritten or improved reliably with AI can't come fast enough.

jacquesm 7 hours ago | parent [-]

I honestly do not see how training AI on 'mountains of garbage' would have any other outcome than more garbage.

I've seen lots of different codebases from the inside, some good some bad. As a rule smaller + small team = better and bigger + more participants = worse.

fooker 7 hours ago | parent | next [-]

The way it seems to work now is to task agents to write a good test suite. AI is much better at this than it is at writing code from scratch.

Then you just let it iterate until tests pass. If you are not happy with the design, suggest a newer design and let it rip.

All this is expensive and wasteful now, but stuff becoming 100-1000x cheaper has happened for every technology we have invented.

jacquesm 3 hours ago | parent [-]

Interesting, so this is effectively 'guided closed loop' software development with the testset as the control.

It gives me a bit of a 'turtles all the way down' feeling because if the test set can be 'good' why couldn't the code be good as well?

I'm quite wary of all of this, as you've probably gathered by now: the idea that you can toss a bunch of 'pass' tests into a box and then generate code until all of the tests pass is effectively a form of fuzzing, you've got some thing that passes your test set, but it may do a lot more than just that and your test set is not going to be able to exhaustively enumerate the negative cases.

This could easily result in 'surprise functionality' that you did not anticipate during the specification phase. The only way to deal with that then is to audit the generated code, which I presume would then be farmed out to yet another LLM.

This all places a very high degree of trust into a chain of untrusted components and that doesn't sit quite right with me. It probably means my understanding of this stuff is still off.

fooker 3 hours ago | parent [-]

You are right.

What you are missing is that the thing driving this untrusted pile of hacks keep getting better at a rapid pace.

So much that the quality of the output is passable now, mimicking man-years of software engineering in a matter of hours.

If you don’t believe me, pick a project that you have always wanted to build from scratch and let cursor/claude code have a go at it. You get to make the key decisions, but the quality of work is pretty good now, so much that you don’t really have to double check much.

jacquesm 2 hours ago | parent [-]

Thank you, I will try that and see where it leads. This all suggests a massive downward adjustment for any capitalized software is on the menu.

simonw 7 hours ago | parent | prev [-]

That's why the major AI labs are really careful about the code they include in the training runs.

The days of indiscriminately scraping every scrap of code on the internet and pumping it all in are long gone, from what I can tell.

jacquesm 6 hours ago | parent | next [-]

Well, if as the OP points out it is 'all garbage' they don't have a whole lot of choice to discriminate.

fooker 7 hours ago | parent | prev [-]

Do you have pointers to this?

Would be a great resource to understand what works and what doesn't.

simonw an hour ago | parent [-]

Not really, sadly. It's more an intuition knocked up from following the space - the AI labs are still pretty secretive about their training mix.

behnamoh 11 hours ago | parent | prev [-]

> who will do that then?

the next version of LLMs. write with GPT 5.2 now, improve the quality using 5.3 in a couple months; best of both worlds.