

Yeah I’m sure DOGE doesn’t appreciate that structured programming hasn’t always been a thing. There was such a cultural backlash against it that GOTO is still a dirty word to this day, even in code where it makes sense, and people will contort their code’s structure to avoid calling it.
The modernization plan I linked above talks about the difficulty of refactoring in high level terms:
It is our experience that the cycle of workarounds adds to our total technical debt – the amount of extra work that we must do to cope with increased complexity. The complexity of our systems impacts our ability to deliver new capabilities. To break the cycle of technical debt, a fundamental, system-wide replacement of code, data, and infrastructure is required
While I’ve never dealt with COBOL I have dealt with a fair amount of legacy code. I’ve seen a ground up rewrites go horribly horribly due to poor planning (basically there were too many office politics involved and not enough common sense). I think either incremental or ground up can make sense, but you just have to figure out what makes sense for the given system (and even ground up rewrites should be incremental in some respects).
There is so much bad going on that even just counting the tech-adjacent stuff I have to consciously avoid spamming this forum with it constantly.