Modern Lessons From A Fresh IBM i Developer
October 8, 2018 Alex Woodie
Application modernization is a big nut to crack on IBM i. That is to say, there are many ways to tackle the problem, from the code and business logic to the databases and user interfaces. But when it comes to the type of developers you should look for and how they should spend their time, Kody Robinson has a few pointers that may be worth keeping in mind.
Robinson was a member of the first batch of “Fresh Faces” that IBM put forward in 2017 to showcase the fact that young people are building careers on the platform, and that it’s not composed wholly of folks in their 50s. That same year, Robinson was named an IBM Champion, rounding out an impressive year for Robinson.
At just 25 years of age, Robinson doesn’t have the in-depth knowledge of the platform that a career IBM i professional can bring to his job. But that relative newness also works the other way and gives Robinson a freshness of perspective on what really matters to companies that rely on the IBM i server and the people who make it run. And it’s fun to watch a new generation re-discover the time-tested advantages the IBM i platform brings.
For starters, it’s refreshing to hear that today’s youth can appreciate good platform architecture. “I love it. It’s secure. It’s as modern as you want it to be,” Robinson said during an interview with IT Jungle at the POWERUp conference in Texas this past May. “Anybody who says it’s old or outdated is lazy and uninformed. I guess that’s the nice way to put it.”
Robinson was hired right out of college three years ago by Arkansas Electric Cooperative Corp, a wholesale provider of electricity to 17 members that cover more than 60 percent of the state. The co-op immediately set him out to learn RPG, which the University of Arkansas at Monticello didn’t teach him.
Now, not everybody is cut out to be an IBM i developer, let alone work in RPG, which continues to drop in popularity, according to the TIOBE Index. Together with COBOL – another mainframe business language that many youth spell B-O-R-I-N-G – RPG is one of the last languages that a youthful developer would choose to learn, if given their druthers.
But Robinson had a head start on the business process, thanks in part to his computer science program at college. Instead of giving him high-level theory for four years, like many computer science majors do, the UofA required him to take accounting, business, and statistics classes. In other words, Robinson was exposed to the practical know-how that characterizes many RPG analyst/programmers in the real world, so he was already ahead of the game.
Robinson has a unique role at AECC, which has been using the IBM midrange server for nearly four decades and is in the process of modernizing its homegrown RPG applications. Specifically, he was brought in to serve as bridge between the older code and coders and the new crop of code and coders that will define the IBM i platform’s next 40 years at AECE.
“I was hired in to learn RPG, to learn the old green-screen stuff, to help these more experienced developers that are going to retire in the next five to 10 years, and modernize as I go, kind of shift the current thinking to more modern and RPG free, Web, etc.” Robinson says.
AECE has thousands of RPG applications, written in a mixture of RPG III and RPG IV. As Robinson comes across an older app during the daily course of business, he’ll open it up in his Rational Developer for IBM i (RDi) code editor, run it through an ARCAD Software code converter to transition it to free form RPG IV, and possibly generate a PHP-based interface for it using Fresche Solutions‘ WebSmart. Robinson has converted upwards of 400 programs in the last few years using this approach.
The goal is to start AECC on the path to modernization, if not complete it. “The goal isn’t to only help me bridge this learning curve, but to help anybody we hire coming in after me, not to have them take years to learn this old RPG code that they’re not going to use,” Robinson says. “They’re going to learn the free-form RPG. It’s a mixture of modernization, and helping any new person who comes in behind me kick-start their learning process and be as valuable to the company as possible, within the shortest amount of time.”
Robinson learned quickly that not every program needs to sport a modern-looking GUI. “Our accounting and warehousing people, they love the green screen,” he says. “They have that 10-key memorized, one-four-six, out the door, on the truck, and get it quick.”
But at the same time, some AECC workers have taken to modern PHP apps much more willingly than Robinson would have thought. “Most people don’t like change, so when we give them this nice new pretty Web front-end, I figured they’d say no, I want the green screen, it’s what I’m used to,” he says. “But I haven’t had any of that so far. So they’ve been pretty adept to change and like the way it looks.”
The modernization process isn’t complete at AECC. Having thousands of applications will do that to you. But the co-op has still found success in its approach, in Robinson methodical approach to iterative improvement. In fact, AECC won an IBM Innovation Award at the COMMON conference in New Orleans two years ago for the work it’s done with its applications.
Along the way, Robinson has learned a few lessons. One is that learning fixed-format RPG is a waste of time, especially when good code converters can be had for just a couple thousand dollars. While the syntaxes are identical between free-format and fixed-format RPG, the presentation makes all the difference in the world.
But knowing free-format RPG – now, that can be a good for job security, even for younger folks. “RPG pays pretty good, because it’s a trade that not a lot of people know,” he says. “If you know Java, you’re going to compete, especially in a bigger city, with 200 or 300 people for that job. You’ll probably be competing with five to ten people for an RPG position, and probably seven times out of ten those older people are more experienced, up in their 40s and 50s.”
Younger developers who know RPG should consider their relative youth to be an advantage, he says. “My personal opinion is they want to hire somebody younger so they can mold them to program the way they want to, and get 30 to 40 year out of them,” he says, “versus hiring somebody who’s more experienced and may has a little bit more knowledge of RPG but is going to leave the company in five to 10 years and retire.”
Robinson says the readability of free-form RPG and the power of the IBM i present a potent combination for productivity.
“It’s pretty straightforward and you feel accomplished rolling out an application that you know your customers will love, and it’s pretty easy to change the code if they say, ‘Hey I want to add on these new features,'” he says. “On any other kind of platform, Windows or Linux or any other business – logic code, there’s a lot more nitpicky stuff that’s more time-consuming. If you get into time-consuming stuff, you don’t have as much time to program and serve your customers the way they deserve to be served.”
Simplicity – in development and administration – has always been a hallmark of the IBM i platform, but it’s a feature that seems to get overshadowed by some of the challenges of running this system, like the old code, retiring coders, and the dreaded “legacy” label.
So it’s refreshing to hear somebody like Robinson, who has his whole career in front of him, to recognize these advantages, to position himself to leverage them, to internalize them the way that tens of thousands of AS/400, iSeries, System i, and IBM i developers have done before, and to share those thoughts with the world.
“The past three years I’ve grown to love the IBM i platform,” Robinson says. “It’s what I want my career to be based on. I’m envious of the older developers who have had their 30 years on the platform. I haven’t had one person who said they weren’t just absolutely in love and proud they had their 30 or 40 years on this platform. That’s what I want to make my impact on the world on the IBM i.”