One for the ancient immortal computing demons still among us: COBOL, one of the first programming languages to fall into favor, but long succeeded by more efficient and easier to understand languages like Python, it may finally be on its way out.
What’s that? You don’t see white COBOL code anymore? Well, actually, you do: 800 billion lines of it, in fact. Bizarrely, that figure has actually increased from 2017, where it stood at 220 billion.
At the same time, the number of COBOL experts is decreasing, because COBOL is old, as are most corporations these days, so it’s a guarantee that many moons have passed since the one sysadmin who could untangle all that code, which is definitely older than me, and probably older than you, has left the building, or even this mortal coil.
As TechCrunch have found, companies looking to move on from COBOL therefore have two major problems.
Firstly, COBOL experts have a rare and in-demand skillset, so their services come at a cost (often $100 USD an hour). Secondly, and the sheer volume of COBOL code still in existence means that translating that code will be a time-consuming process. The Commonwealth Bank of Australia found this out when it spent five years, and $700 million, on this very process.
In short, the insurmountable problem corporations across the world face today is all thanks to a lack of foresight on the part of their predecessors.
So, what’s the solution?
Enter computing behemoth IBM and its Code Assistant for IBM Z, set to enter preview in early September 2023 to coincide with the company’s TechXchange conference in Las Vegas. The idea is simple: if humans solving the problem just isn’t practical, let’s get current buzzword generative AI on the case instead.
There are a few tantalising promises in the new AI tool – it claims to be able to convert COBOL to Java without sacrificing performance and security (which, until we see what it can do, is just PR bluster), and there’s even room for expansion, as the generative model in use, CodeNet, supposedly understands around 80 other programming languages.
IBM isn’t the first company to recognise the need to turn COBOL into legible modern code, or to recognise that automation is a novel, and perhaps the necessary route to get there. But it’s approach, says IBM Research chief scientist Ruchir Puri, is not about neutering the more powerful aspects of COBOL
“If the ‘understand’ and ‘refactor’ capabilities of the system recommend that a given sub-service of the application needs to stay in COBOL, it’ll be kept that way, and the other sub-services will be transformed into Java,” said Puri while giving an interview to TechCrunch.
However, all of this comes with the usual caveat: generative AI is nascent technology, and not perfect, and shouldn’t be deployed without due human oversight. Puri, to his credit, at least recognises this.
“Like any AI system, there might be unique usage patterns of an enterprise’s COBOL application that Code Assistant for IBM Z may not have mastered yet,” he said. “It’s essential that the code is scanned with state-of-the-art vulnerability scanners to ensure code security.”