Wow, I feel this deeply. I work with bad software. It is bad because people built it using tools that were designed to "make coding easier". I feel a cold chill imagining the level of institutional cruft that could be allowed to build up with unrestrained ai coding.
With that said - the process of fixing those old mistakes is greatly aided by llms... but you still need to understand what you are fixing, and understanding why giant blocks of code are copy-pasted everywhere, or why convoluted hacks evolved over time as reactions to bizarre underlying untreated bugs is, imo, ultimately a human/organizational/processes problem.
There's a minimum threshold of knowing what you don't know that's needed I think.
Below that the AI will need to get good enough to compensate for people's lack of knowledge. But that will cost money so not sure how it's going to be balanced.
I have friends codebases where I had them just run a stupid simple prompt like "spawn subagents to find the top 5 worst issues in this codebase".
Wide open APIs allowing anyone to modify the database and charge customers among other things. The mere awareness of needing to secure things is lacking from most vibe coders.
> Good software will be good-er. Bad software will be nightmare fuel.
We are talking about a moving target here ... they get better every few months, so I expect the super-LLMs from 2035 will write amazing code even with sloppy prompting.
Software engineering has been a thing for decades and you'd still be hard pressed to find two engineers agreeing on what constitutes "good code". It's not a serious discipline, we're closer to bootleggers brewing liquor in a bathtub than we are from anything remotely close to engineers.
I think bad software has the possibility of redemption with rewrites and re-engineering efforts. For those of us who are license locked that's probably never going to benefit us :(
Bad software, as in stateless programs, doesn't actually matter and never did. They can be replaced trivially.
The problem is the real world isn't made of stateless programs, but lots of important data in bespoke formats/schemas, and if you change the shitty software that interacts with the important data, in the wrong way, you can lose everything.