By Adrian Tully | Fev 23th 2023
OK, so I’m joking about the punched cards, but they do have a fascinating history based in weaving if I remember rightly.
Report Program Generator or RPG has its origins in a time that predates even me, even though, as I’m reliably informed by my children, I am old. It’s based on a time where they used physical punched cards to deliver code to the megalithic machines of the past, a time where your compiles relied on not dropping the stack of cards on the way to the feeder, and if there was a bug in your code, you’d have all next day to fix it, and then to recreate those punched cards and to get it back into the compile overnight so you can see your results in the morning.
I’ve been using RPG as a programming language since the late 80s, 1980s not 1880s. It’s a language I’ve enjoyed using, and a language I’ve enjoyed watching develop with new functionality being introduced every year.
The changes to RPG are nothing short of radical
RPG may have started before the Beatles formed, but IBM haven’t “Let it Be”. They have developed RPG beyond its humble beginnings; it is now as modern a language as you can find. If we combine this modern language and its incredible functionality with the reliability of the IBM i platform, then we can show that RPG is an absolute force in the creation and development of business applications. The new RPG has allowed us to easily integrate our legacy applications and data with our customer facing solutions that the business is demanding.
The legacy applications that have had hundreds of thousands of hours invested in their development and testing, that deliver bespoke refined business logic, that are supporting the core operation of the company, can now be reused in services that are delivering advanced processing and lightning-fast data collection to your mobile apps and webservices, delivering rich functionality to customers in ways that they find easy to comprehend and use.
The investment your company has made in developing and testing these legacy applications is another reason to stand by RPG Free Format and the IBM i and another topic which I note for this blog.
If it’s not broken, don’t touch it?
I understand that it’s working and if it’s not broken then there is a heavy weight against changing it, but on how many other platforms can you say you’re still using programs that were written in 1988. Is anyone still using word for windows 1.1, or wordperfect 5.2? I’d guess these still work if you can find an old enough PC, yet we’ve moved on from them and have access to graphical environments and contextual searches, prompted scripts, and a host of other functionality in the document editing apps. So why are we so adverse to using the advanced features of a new modern RPG? Maybe it’s time for a “Revolution”, I will stop with the Beatles references, but my parents were fans and we’d always listen to them in the car. The car, another example of how we’ve stopped relying on old processes or functions. We now use seatbelts, the security a seatbelt offers over not having one, or airbags which nobody had in the 60s. Our padded heated seats on a cold winter’s morning, a little more comfortable that just popping a blanket on the seat, which was already better than the cold plastic seats against your legs.
So why aren’t we using the modern functions of RPG, why are we still using hand signals rather than assisted lane change, why are we still weaving by hand when we have machines available to do it. Can the business really allow us to continue using a punched card based language to develop their applications using the old tired methods or do they need us to start giving them the business functions they need today without making them wait for 6 months while we plan to put it into the next release and while we do that (take a breath) we also need to train someone new to create our strict column-based applications because Programmer X is retiring soon.
Modern language, modern tools… RDi? VS Code?
Converting from RPG to Free Form does produce a real return on your investment making it far easier to understand this new code. Iit’s still RPG but we’ve moved on, so yes, it is worth spending a little time to understand the tools you’re using as a developer. When you understand your modern Free Format RPG you’ll start to see the history of SEU as well. There are some things that SEU just doesn’t do, and it never will. SEU hasn’t been developed for over a decade and even just trying to save Free Format in it can bring you additional steps that a modern IDE would save you from. Moving away from SEU into one of the graphical development environments, RDi, VS Code, or even Merlin will bring you much more flexibility to your coding than you’ll ever see with SEU.
You’ll get correct tokenisation of your modern code, context appropriate prompts, on the fly problem identification and popup windows to help resolve, along with a host of other tools which can help the developer create more code, of a better quality. You’ll get features that allow you to turn your legacy functions into a modular service driven state. Using Free Form RPG to create easily readable application code that new and experienced developers can code in gives your business applications another edge, some flexibility to cherry pick functionality and value to be delivered to the end customer, and a faster development process with more resources available to create that next gen application they are looking for.
All you need is… RPG Free Form
We’ve got the language and the platform to deliver world class applications for our businesses who are looking for a modern application with the strength and stability they’ve had previously. There is no reason that RPG should still be referred to as an old language on an old system. So “don’t let me down” lets “come together” because “here there and everywhere” there are modern programmers waiting to join us.
Senior Solution Architect, ARCAD Software
Starting as an RPG programmer in 1988 on the System 36 on a dumb terminal, Adrian Tully has more recently managed a team of engineers for HSBC global bank delivering DevOps tools across an international customer base. With 15 years’ experience in application life cycle management, he joined ARCAD Software in 2020 as Senior Solution Architect to bring his expertise about DevOps, Six Sigma, lean methodology and process improvement to the solutions we provide.
Request a demo
Let’s talk about your project!
Speak with an expert