Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
Programming

AI Tackles Aging COBOL Systems as Legacy Code Expertise Dwindles 66

US government agencies and Fortune 500 companies are turning to AI to modernize mission-critical systems built on COBOL, a programming language dating back to the late 1950s. The US Social Security Administration plans a three-year, $1 billion AI-assisted upgrade of its legacy COBOL codebase [alternative source], according to Bloomberg.

Treasury Secretary Scott Bessent has repeatedly stressed the need to overhaul government systems running on COBOL. As experienced programmers retire, organizations face growing challenges maintaining these systems that power everything from banking applications to pension disbursements. Engineers now use tools like ChatGPT and IBM's watsonX to interpret COBOL code, create documentation, and translate it to modern languages.

AI Tackles Aging COBOL Systems as Legacy Code Expertise Dwindles

Comments Filter:
  • Oh what a chance! (Score:4, Insightful)

    by Dripdry ( 1062282 ) on Thursday April 24, 2025 @01:36PM (#65328189) Journal

    getting in as a contractor to try and understand and fix this disaster mess they are going to create is going to be so lucrative⦠Oracle, Accenture creaming themselves over this news.

    • Oracle doesn't fix anything. They rip and replace. They they try to fix broken things they installed...

      SAP (Satan's preferred means of interaction with our world) prefected this already. Run from both.

      They are planning on doing this wrong. 3 years? Wrong. $1Billion? Wrong.

      Start up the AI and let it rewrite Cobol into C++ and Rust. Iterate. Run in parallel. Cut over when the new system has less terrible than the old one.

      And you can't let the people who never bother to think ahead and solve this lead this. Th

    • Well not necessarily... we handle code conversions (ex. like Cobol to Python+SQL+VueJS) much like we build modern applications. Generative AI translates the Cobol code into readable specifications and software developers take it from there (with or without the infamous Vibe coding). Historical data (inputs + outputs) are used to test the system, making the migration somewhat less risky than typical software development...
      • Generative AI translates the Cobol code into readable specifications and software developers take it from there (with or without the infamous Vibe coding).

        If you don't understand what's wrong with your proposal then you shouldn't go near one of these systems. If you were making a sarcastic joke then you deserve an upvote (sorry I have no modpoints).

  • by RightwingNutjob ( 1302813 ) on Thursday April 24, 2025 @01:37PM (#65328191)

    Now the question is, does it cost more to train a human coder to understand cobol so he can rewrite the software or does it cost more to train a human coder so he can tell whether the AI rewrote the software correctly?

    A more serious question I have is whether the AI tools can tell when they're out of their depth with domain-specific knowledge, whether they will simply translate cobol spaghetti into java or .net spaghetti, or whether they will produce garbage when faced with some "clever and subtle" logic in the source.

    • by Roger W Moore ( 538166 ) on Thursday April 24, 2025 @01:52PM (#65328235) Journal

      Now the question is....

      No, that's the second question. The first question is: "Do you know that AIs hallucinate and that you cannot just trust the AI to recode everything by itself correctly?".

      • by rickb928 ( 945187 ) on Thursday April 24, 2025 @02:15PM (#65328305) Homepage Journal

        As if you can trust your junior programmer to get it right the first, second, or third time. As if you can commit their code to production without testing first.

        I hope you're not in charge of anything. I'm not, so I can pontificate based on what I've seen,

        • What do software testers even do with this crap? Raise a bug and what? I don't even know where to start!
        • Yes, but I would hope that someone in charge of a major project like this would already know how to manage human programmers and that you need testing and cross checking. I'm not hopeful that same person would know how to deal with AI output since some people seem to think of AI as a magic oracle that just does any task it is given perfectly and not an idiot savant that has access to a huge fraction of human knowledge combined with what often seems to be the thought processes of a stubborn 2-year old.
          • Your first question seemed to question that. Indeed, if I were leading a programming project, I could care less the source of method of generating the code. It all has to be evaluated, tested, and then tested again. Time pressure does not obviate the need.

    • by gweihir ( 88907 ) on Thursday April 24, 2025 @03:06PM (#65328531)

      That is the wrong question. A rewrite in a different language is a really dumb thing to do unless there is no way to keep the old code working, as a rewrite will rarely fix problems but always will introduce new ones and will be expensive, slow and may completely faul. Now, I do not know how compatible COBOL is, but, for example, GNU COBOL is under active development and maintained and had its last major release ion 2023. That does not strike me as something that need to be abandoned.

      The smart thing is to just get people that can maintain the old code and, if needed, learn COBOL in a reasonable amount of time. Yes, that means an attractive salary and working conditions. But these people exist. You just need to stop cheapening out when hiring real, experienced engineers.

      As to AI, all it can do is make things worse and even harder to maintain. That approch is a completely dumb idea by people lacking insight and experience.

      • by jlowery ( 47102 )

        Older languages have a lower innovation velocity than newer, more popular languages.. They are reliant on a handful (often, one) of companies to keep up with new technology and new approaches.

        I'm not just some punk techbro saying this: I have a lower user # than you.

      • by sjames ( 1099 )

        More importantly, offer long term job stability and a golden parachute. It's necessary, because otherwise a long stent of COBOL on a resume is an express ticket to the round file. If they're going to get developers to learn COBOL, they'll need to offer them the last job they'll even need.

      • My first reaction to "hey let's just feed this 800 million line codebase into an AI and cross our fingers" was "yeah, that's totally easier than just having some people learn COBOL. I mean, it's not like there are any books or study materials from the last 70 years of it existing..."

        I remember having a COBOL college textbook in the late 90s. I doubt they are out of print.

    • The problem with these old codebases is usually not the language as such, it's the byzantine specs - and usually partial lack thereof. And all the special cases hiding therein. Writing something you don't understand into a different language is a time consuming challenge, and for these systems breaking stuff often has severe consequences.
    • by DesScorp ( 410532 ) on Thursday April 24, 2025 @03:54PM (#65328651) Journal

      Now the question is, does it cost more to train a human coder to understand cobol so he can rewrite the software or does it cost more to train a human coder so he can tell whether the AI rewrote the software correctly?

      A more serious question I have is whether the AI tools can tell when they're out of their depth with domain-specific knowledge, whether they will simply translate cobol spaghetti into java or .net spaghetti, or whether they will produce garbage when faced with some "clever and subtle" logic in the source.

      Now the question is, does it cost more to train a human coder to understand cobol so he can rewrite the software or does it cost more to train a human coder so he can tell whether the AI rewrote the software correctly?

      We wouldn't have to do any of that if CIS and MIS programs would quit telling their students that COBOL is dead. COBOL has been "dying" all my adult life, according to the experts, and yet is so deeply embedded in certain sectors that it's never going away in our lifetimes. It's pretty much guaranteed work. Offer more COBOL classes and tell students that in major corporations and the federal government (especially the IRS) COBOL will be here until doomsday. Tell them that as long as mainframes exist, COBOL will be used. A paycheck is a powerful inducement to learn.

  • When AI is done fucking up everything, there will be a lot of money to be made fixing the disaster by hand.

  • by dfghjk ( 711126 ) on Thursday April 24, 2025 @01:47PM (#65328221)

    Good thing they are choosing mission critical code to apply new tools built on poorly understood technology that "hallucinates" as part of normal operation.

    • So will government surveillance programs collapse?

      • No, the surveillance hides between the lines of source code. The language does not matter (though one-liners can help).

      • The people running the government surveillance programs wouldn't let these chuds within a city block of their code.

        This is just the Heritage Foundation shitgibbons running the show really intent on fucking up Social Security so they can make an argument about how broken it is, and it would aaaaaalllll be better if it was privatized.

        I mean, look at the stock market, and how awesome that's been for everyone's private retirement accounts lately, yeah?

  • by emes ( 240193 ) on Thursday April 24, 2025 @02:00PM (#65328257)

    This is nothing more than the usual ITAA-style fear mongering designed to excuse the desire to not pay seasoned professionals what they are actually worth.

    • by jsepeta ( 412566 )

      People are lazy and cheap. They would rather 1) not do the hard work and 2) spend the least money needed to replace systems. So where the Cobol code might get tricky to handle edge cases, the replacement code won't cover the edge cases and the people in charge might just say, "Welp?"

    • by gweihir ( 88907 )

      Indeed. Finding people that can maintain an old COBOL system is entirely possible. But you have to pay well and make it attractive.

  • by Growlley ( 6732614 ) on Thursday April 24, 2025 @02:17PM (#65328309)
    it's the domain specific mods made over 60 years whose knowledge has been lost . Like why out of 3 sites is a 1000 lines of code skipped for only one site and will the AI be smart enough to know if it is removed the End of tax year reports will fall over.
  • ... AI to modernize mission-critical systems built on COBOL, a programming language dating back to the late 1950s. ... As experienced programmers retire, organizations face growing challenges maintaining these systems ...

    My understanding is that there's nothing inherently wrong with COBOL for these types of use cases, so what's wrong with simply enticing more people to either (a) stay longer and/or (b) learn it and these systems. I mean, good pay and benefits, and not hassling people, usually goes a long way in job satisfaction. Also, they're going to need experienced and knowledgeable people to seriously check the AI conversion work, and probably more than a handful ...

    • by HiThere ( 15173 )

      What's wrong with enticing people to stay longer is that one's coding skill decline as one gets past 60. (Short term memory declines.)

      What's wrong with teaching more people is that the jobs are limited AND declining. So new COBOL programmers can look forward to a short career, with only limited job prospects.

      Technically, COBOL is a good language. But it's foul enough to work in that I chose PL/1. (Of course, I usually used Fortran, so I'm biased.)

    • by gweihir ( 88907 )

      Indeed. This is just new->better stupidity. The problem is that management does not want to pay for real engineers (that can learn any language given a reasonable amount of time) and make the jobs otherwise attractive.

  • Any idiot (Score:4, Insightful)

    by jmccue ( 834797 ) on Thursday April 24, 2025 @02:32PM (#65328389) Homepage

    US government agencies and Fortune 500 companies are turning to AI to modernize mission-critical systems built on COBOL

    Any idiot can do a good job of taking 1 COBOL program and convert it to something else. But putting these multiple converted programs together will always be a big fail. This goes for AI and any language to language conversion

    What is needed is people who knows the full business processes to do this, that is what is always missing in these COBOL conversions. No one knows the "why" in these old processes.

    For a good modern example, look at all the compaines that failed to implement SAP, if implemented, how it takes years to get it "right".

    Using AI will not work anytime soon.

  • by OrangeTide ( 124937 ) on Thursday April 24, 2025 @02:36PM (#65328399) Homepage Journal

    Depending on the project, it might be as cheap as $10m per project. But perhaps closer to $150m for more complex systems.
    It would take months or years just to collect requirements before a single line of coding can begin.

    This is just a ballpark estimated dollar amount on the technical debt an old COBOL system has. Turns out if you tweak something for 40 years, a lot of value accumulates there.

    For some businesses, replacing your software stack would be like McDonalds deciding to start over on all their recipes for their menu. Without down time, and without losing any customers. It's theoretically possible, but let's be realistic, it's going to be ugly.

    • by gweihir ( 88907 )

      Depending on the project, it may well be impossible. In any case it comes with a huge risk of dailure. At some complexity, reimplementation is not anymore within what the human race can do. And you cannot just simulate those 40 years in another 40 years either, because that is also outside of what is possible at the current tech-levels.

      Far better to actually continue to use that COBOL code and pay some people with the skills and aptitide to learn COBOL and maintain it. Yes, you may end up paying $250'000 or

      • It's always possible. Just not necessarily a net savings. Cutting corners like not creating a parallel system for a zero downtime migration strategy, for example using the old system for existing customer and provisioning new customers only on the new system, then migrate old customers over in batches.

        At some complexity, reimplementation is not anymore within what the human race can do.

        I don't accept that argument.

        Far better to actually continue to use that COBOL code and pay some people with the skills and aptitide to learn COBOL and maintain it.

        I'm happy to take the job. But my rate, just for a single person, is much higher than what hiring a NodeJS backend developer and DBA combined would be.

        If the system you have meets

  • Today's software engineering graduates can't read what is arguably the most "readable" computer language ever invented? The challenge is not understanding what individual lines of code do (any junior can understand "add", "compute", and "perform), the problem is in understanding what the program(s) do, and how they interact. These are not a language-specific concerns. Automating the translation of "opaque" code with ChatGPT doesn't address the problem, because you're left with the same questions: What should this program do, and is it doing it correctly?

  • Incidentally, COBOL expertise is not dwindling. Any really good coder or CS type can learn it in a reasonable time-frame. Same as any other lamguage, whether old or new. The PHBs just do not want to pay for people on that skill-level, hence "shortage".

    • by Bahbus ( 1180627 )

      Sure, but I'd rather figure out what the program does (or is supposed to do) and recreate it in almost any other language, because whatever COBOL I learn isn't going to be the reality of these real-world COBOL programs. There are too much random shit and too many variants that any sense of a "standard" is thrown out the window.

      The fact of the matter is, if you run an organization that uses custom made internal software, you should update that software's codebase every so often. Especially, if the one you ar

  • by Anonymous Coward

    Why move away from a computer language that made america great in the first place?

    Shouldn't they be making it great again by increasing COBOL use?

  • Wait! (Score:4, Insightful)

    by Ronin Developer ( 67677 ) on Thursday April 24, 2025 @03:32PM (#65328595)

    3 years? I thought Musk said 6 weeks to rewrite the system in Java?!?!

  • Most COBOL developers are older and know what they are worth to the market. They are also more likely to not be able to be replaced with a H1B or offshore company, as COBOL predates most of that workforce.

    This is just trying to save a buck. And it will probably mess up a lot of stuff in the process.

  • If AI wrote the translated code, maybe it can be used to maintain it. My experience with code translated by tools from one programming language to another is that much is lost and the result is very difficult to understand. In particular the "gestalt" of the actual written code, the semantics of the language used by the code, and the associated comments gets lost in machine translation.

    But maybe this would work, because AI can either establish/maintain, or sufficiently reproduce, sufficient understanding.

    • But maybe this would work, because AI can either establish/maintain, or sufficiently reproduce, sufficient understanding. But of course, HOW WILL WE KNOW? Or do we just have to trust that the AI got it right?

      Any reasonable effort would be run in parallel to the existing production system with the same inputs, in order to verify each and every one of the outputs to be the same. And then you would go back and run the last 20 years of data and make sure it's 100% accurate.

      That at least would give a chance at believing it was done properly.

  • COBOL compiler option (ADATA) dumps all data structures and logic elements heuristics in a machine-readable format so the output of ADATA (to output stream SYSADATA, can be easily captured in a file. What good is that? We loaded SYSADATA so âoeeverything the compiler knewâ was stored in RDBMS tables, graph DB would have been better perhaps. I used SAS but a fellow who worked for me wrote parser in COBOL. It allowed unambiguous searches, and cross-references, ensuring corresponding data structur
  • Considering that there's nothing much to train AI on wrt COBOL except for COBOL. Well... That and good luck understanding the business and other logic or rules of it all.
    • I almost wonder if they could feed it every rule and regulation on the books for the Social Security Administration and all relevant statutory law and regulations in the Federal Register in addition to any internal documentation or specs they have (even if from archives) while also training it on COBOL, and then see what you get?

      At the very least it could gin up a nice test suite off of all of that for the CI pipeline...

      • Wouldn't work. LLMs have no true concept of meaning -- they don't know what the text of regulation Foo *intends*, or how to express a given intent as a block of code. At best they can extrapolate from, say, having seen training data where similar blocks of text were associated with blocks of code that have some patterns in common, and regurgitate based on that -- but that training data might well have been an example of why the given block of code *doesn't* properly implement the regulatory language, or i

"If you lived today as if it were your last, you'd buy up a box of rockets and fire them all off, wouldn't you?" -- Garrison Keillor

Working...