RPG Skills, LANSA Tools, Plays Well for Music Industry Licensing Company
May 3, 2011 Dan Burger
RPG programmers often have to deal with cobwebs and skeletons in the closet. Their companies have them locked away doing maintenance work on legacy code. Days are filled with routine tasks to keep applications up and running and repairing breaks in code when things go wrong. Frequently their knowledge and skills are vastly underutilized. At the Harry Fox Agency (HFA), a couple of IT managers decided the RPG resources were far too great to squander.
The development team at the nation’s leading provider of rights management, licensing and royalty services for the music industry rose to the occasion when the evolutionary changes involving Web development demanded rapid development alternatives.
The seven-person staff, and a team leader took the lead in this project using a combination of experience, maturity, and willingness to innovate to deliver the much-needed applications on schedule and with the attention to quality and business value that other development options may struggle to produce.
“Some applications, whether they were created in RPG or Java, contained a lot of code,” Ellen Rosa, HFA director of core applications engineering, noted. “That makes maintenance difficult and not a lot of fun.”
“There was a time when the RPG team did not have the Web-related skills and the Java team volunteered for all the Web application work. The lack of modern Web application skills put the RPG team in a hole,” she acknowledges.
She thought the RPG team could do this work if it had the right tools.
In a meeting with the lead developers on the RPG team, she laid it on the table: “There’s a whole lot of stuff that’s not getting done,” she said. “Here’s your chance to step up.”
The question about what HFA was going to do with RPG was asked in executive meetings.
“We have so much code,” Rosa explains. “My boss, the CIO, and I had very frank conversations about it. We both believed in the necessity of a directional plan. If we were getting out of RPG, what language would replace it? What would that plan be?”
It was a risk, but the RPG team convinced management that they wanted to learn something new, wanted to have a greater impact on the company’s initiatives, wanted to take their skills to the next level.
Four years ago Ellen Rosa was a project manager at HFA, managing new application development projects spanning RPG and Java platforms. The RPG development team was primarily focused on legacy application maintenance, and Rosa had little interaction with them.
When HFA promoted Rosa to Director of Core Applications Engineering, her duties were focused on the management of the RPG team.
“I wasn’t sure of the direction I needed to take the RPG team,” Rosa told IT Jungle in a recent interview. “The CIO explained how valuable the team was. So I started to understand what they were doing. I realized that these guys are the ones that know everything and have the deepest history of our data and solutions. They handle the guts of our processing here. On top of that they are extremely sophisticated in the whole process of setting up the data structure, writing good code, and testing it; they know everything from the requirements stage through the deployment of the product. To me, that is more than 50 percent of being a good coder. And they know the music business. When you bring a new developer in off the street you don’t get this.”
In addition to the RPG staff’s fortitude and willingness to learn new technology, Rosa gives a lot of credit to the IBM i independent software vendor LANSA.
Early in her tenure at HFA, Rosa identified a conspicuous lack of standardization in the existing applications and the development process.
“I noticed there was no flow or a similar interface from one application to another,” she explained. “I thought there should be similar or familiar screens. Buttons shouldn’t be in different places from one application to another. We needed to build things in a standard format and develop a style.”
So rather than simply dictating the style, Rosa asked the employees in departments that used the applications most frequently which apps were most appreciated for their look and feel and functionality. The overwhelming favorite was the online licensing tool.
She discovered, after talking with the lead developer, that the app was written in LANSA.
What she also discovered was that the app had been written by a consultant no longer working with HFA. It was written before she or the current CIO began working for HFA. And although there was some staff training in the use of LANSA, no in-house projects were ever attempted. Rosa believes this was due to a strong Java bias which took root during the time of the previous CIO. At that time there were two directors of development–one for the Java side and another for the RPG side.
“The perception was that the Java team was here to build all the new and exciting applications and the RPG team wouldn’t be used for developing new apps. The Java team, comprised of seven developers, was not supportive of the iSeries platform. Their desire was to be a Windows shop.”
This attitude needed some adjusting from Rosa’s perspective. As she saw it, the RPG team had greater knowledge of the music business and the objectives HFA had set. They had worked together as a team for a number of years and fit together well. On the Java team, staff turnover was higher and tenure shorter.
The excitement in application development is in building new apps, not maintaining old apps. The reality, however, is that all applications need maintaining. It seemed as if the RPG team understood this better than the Java team. This attitude carried through to even the modernization of existing applications.
One of the major considerations was the huge amount of existing RPG code that was not broken and represented a great business value. Another was that it would cost a fortune to rewrite all that code from scratch.
“The existing RPG applications just hum,” Rosa says. “The green-screen application we just replaced from our website was 20 years old and was written by one of the guys on our RPG staff. It was his first assignment when he was hired. The problem was that it was limited. It wasn’t something we wanted to expose to our customers on the website.”
HFA has a customer base of about 46,000 publishers. The larger publishers access this former green-screen app, now rewritten in LANSA, every day.
Although LANSA was an early favorite for converting RPG applications to Web applications, Rosa gave consideration to IBM WebFacing (little training required), PHP (moderate training), and Java (might as well train RPG programmers to be brain surgeons). WebFacing, she described as a Band-Aid with long-term limitations. PHP and Java were determined to have bigger learning curves than LANSA.
“The development team and I had a heart-to-heart talk,” Rosa remembers. “They said, ‘Look, we have this tool that is already in-house, why not just use it?'”
Rather than picking up whatever tool was laying around, RPG team members and Rosa found notable advantages provided by the already in-house tool. For one, there is a great deal of data management done on the iSeries box. The team is very familiar with the data structure, and LANSA made use of all the existing data structures. LANSA also had an RPG-friendly way of calling RPG programs. It also allowed developers to take advantage of existing back-end practices that were working just fine, so there was no requirement to write code from scratch.
“I was 100 percent behind them. I thought it was great they wanted to go forward. These developers loved the challenge of this. They are mature enough to know that in IT there is no comfort zone. You are either on that wave moving forward or you are stuck behind.”
While doing the application equivalent of an archeological dig, Rosa found not only some LANSA applications that were written six or seven years ago by a consultant, but also the LANSA application development tool, which was also from that vintage and hadn’t been used since.
The new tool, LANSA’s WAM, was put into play in June 2010. At that time, everyone on the RPG development staff took a one-week training course. They followed that up with online tutorials that were completed on their own time.
“I took three of the developers away from their other duties and gave them the job of converting the last of the externally facing, green-screen apps,” Rosa says. It was a large application. It has ten tabs that can go deep. Several are interactive. Publishers that use this tool have to respond and update and complete licensing transactions. Some of the tabs are query only, but several involve updating data online. The developers rewrote it completely in LANSA in two months. Meanwhile, the rest of the team had to pull together to take care of the normal RPG maintenance on the internal applications without missing a beat.”
Moving forward, Rosa says the development workload is usually determined by where the data resides. The IBM System i (also known as the iSeries and AS/400) houses the core applications and is the bulk of the system, but there are also numerous Linux databases where the Java team controls the reading and writing of data.
“By bringing the RPG team into new development, we have effectively doubled the resources available to focus on new projects we do,” Rosa pointed out. “There are projects that are waiting to be completed and LANSA will help get the backlog completed.”
But as she pointed out, it will take the efforts of both the RPG and the Java teams to ramp up the development capabilities that the company requires. One of the goals is to generate new applications that have the identical look and feel regardless of which team built them.
The importance of what is being achieved at HFA in no way diminishes the role of the Java team. But it demonstrates the value that is often lost on RPG developers who are relegated to maintenance modes.
“Historically the RPG team was not in the forefront of an architectural decision for new development efforts,” says HFA Senior Vice President and CIO Lou Trebino. “RPG was ‘Oh, my God, get the garlic out. It’s not something we’re going to touch.’ Now, with LANSA in place, the RPG team is on equal footing with the Java team. It’s part and parcel of every decision we make for every application including new and revitalized apps.”
Although the thinking at many companies is to overlook RPG, Rosa and the RPG team at HFA have shown what they can do when given the opportunity, the encouragement, and the right tools. They’ve shown the value of knowing a system well, understanding the business logic, and comprehending what the end users are asking for.