Technical debt can be daunting, especially when it involves updating old code or migrating to a new environment.
Many IBM i shops face significant challenges in addressing technical debt that stifles innovation and modernization. However, the path to resolving these issues may be more straightforward than it seems.
We covered some of the top technical debt concerns in our article “IBM i Shops: Why It’s Time to Resolve Technical Debt to Increase Revenue,” offering some ideas on how to tackle common technical debt for IBM i shops. These include converting old code and upgrading your environment as well as education and professional development for obtaining and retaining talent.
A Solution for a New Developer
These solutions are currently being tested and implemented by IBM i shops like that of Jason Poersch, a former student of imPower Technologies and user of Target/400. Poersch works for F&A Food Sales, a Kansas-based food distribution company with over 50 years in food delivery. He joined the team three years ago after a career change brought him into the information technology field. F&A Food Sales was in need of a new developer to replace its retiring IBM i programmer, and, with some classes in full stack development, Poersch was willing to learn IBM i and RPG to grow with his new company.
When Poersch was hired, his new boss enrolled him in imPower Technologies IBM i Concepts and Operations (maximum 8 weeks in length) and Programming in ILE RPG (maximum 10 weeks in length) courses, taught by Jim Buck, a top IBM i educator with online course offerings. Once he completed the two courses, Poersch soon found that his company’s system had a mishmash of programs in different languages, RPG 36 (about 60–70% of the code), RPGLE fixed (aka fixed-form RPG), and RPG Free (aka free-form RPG).
If It Ain’t Broke, Don’t Fix It, Right? Wrong…
Like many IBM i shops with decades of legacy systems, Poersch’s company operated under the philosophy of "if it ain’t broke, don’t fix it," relying heavily on a seasoned developer to manage everything. When this key developer approached retirement, the company faced the daunting challenge of replacing someone with such specialized, outdated language skills. This situation highlighted a significant chunk of technical debt that urgently needed addressing. As a result, modernizing their old codebase quickly became a major focus of Poersch’s responsibilities, underscoring the critical need for updating and future-proofing their systems.
“RPG 36 is hard to understand, especially when you only know RPG Free,” explains Poersch, “It’s almost like a foreign language.”
He needed to figure out a way to convert the old 36 code to new code in an efficient way—not only because he didn’t know how to read the code, but also because if something broke in the near future, he wouldn't know how to fix it. It was imperative to update the code and enable his company to modernize its system.
After talking with his company’s owner, they hashed out a plan to convert all the code to RPG Free over the course of a few years. “The biggest thing that we need to complete right now is getting all code converted to RPG Free and then document the system,” shared Poersch.
He spends a couple days a week working on the conversions and code review, while his predecessor comes in one day a week to review and provide insight into the older programs.
Converting Old Code to Resolve Tech Debt
So how does he convert the old code?
The first part of his puzzle was converting RPGLE fixed to RPG Free, and Poersch uses ARCAD Transformer software. Though this is less of the code that needs to be converted, it will still take time to review converted code to ensure everything works as it should. He planned to allow a couple years to do this conversion, especially with so many programs running that the business relies on to operate.
The second part of the puzzle is converting RPG 36, up to 70% of his company’s code, to RPGLE. For this conversion, he’s using TARGET/400, a program developed in the 1980s by John Caine and a partner that enables IBM i shops to convert their RPG 2 to RPGLE. His goal is to convert all the code to at least an RPGLE version, with hopes of converting to RPG Free within a few years.
“John at TARGET/400 has been really easy to work with,” states Poersch, “The software is fairly intuitive, and John has been available for support along the way. I’ve gotten all the code converted and now need to test all the programs internally before we can go live.”
This process, though long because of the various code languages and programs, has been relatively easy for Poersch as he also gets a chance to learn the ins and outs of his company’s business operations and programs on the IBM i. Upon finishing this task, he will have completely updated code, he’ll have knowledge of all the programs and documentation to match, and he will have grown a necessary skill set for his career.
His company has other challenges associated with the old code programs, such as internally described files where what should be small changes take multiple manual steps to update and require knowledge of each program on which the update should be made—a challenge without complete documentation. Updating code with TARGET/400 and ARCAD gives Poersch, and any other developer to come after him, the ability to allow externally described files, a flexibility that can save time and reduce errors.
A Future of Tackling Technical Debt to Propel Modernization
Technical debt may seem like an insurmountable obstacle, but with the right approach and tools, it can be effectively managed and reduced. By leveraging solutions such as code conversion tools, such as ARCAD software and TARGET/400, and investing in ongoing education and training, IBM i shops can modernize their systems, improve operational efficiency, and position themselves for future success.
The journey of Jason Poersch at F&A Food Sales illustrates how addressing technical debt can lead to significant improvements and skill development, ultimately ensuring the sustainability and growth of IBM i environments.
LATEST COMMENTS
MC Press Online