The developers that maintain the RPG applications that ‘just work’ are often underutilized when it comes to the more exciting new web and Windows development projects. Yet it’s often the RPG developers that have a deep knowledge of their company’s business and IT systems, plus the maturity to understand what adds to business value and what doesn’t.
At the Harry Fox Agency (HFA) IT management decided that its RPG team was far too great a resource to exclude from new development projects. HFA implemented a practical plan to up-skill its RPG developers and by doing so doubled its resources for new development projects, putting the RPG team on equal footing with the Java team.
The RPG team was far too great a resource to exclude from new development projects.
HFA is the U.S. leading provider of rights management, licensing and royalty services for the music industry. With over 46,000 music publishing clients, HFA issues the largest number of licenses for the use of music in both physical and digital distribution formats. Put simply, HFA’s business can be compared to being a clearing house for music royalties, with the publishers who represent the songwriters on one side, and the music distributors, such as recording companies and online music stores, on the other side.
HFA’s business is quite unique and virtually all its applications are developed in-house. The company’s IT systems revolve around three key areas of information. First, its inventory of musical compositions, including songwriter, performing artist and the publisher(s) who owns the right. Second, the licensing portion, which includes license requests from music distributors, license approvals by publishers and licenses issued. And third, the royalty part, which is when the dollars come in and the cheques to the publishers are cut.
The song applications are mostly written in Java and run on Windows and Linux servers, while most of the licensing and distribution applications are RPG and IBM i-based.
A few years ago Ellen Rosa joined HFA as the Project Manager for new application development, spanning both the RPG and Java platforms. Back then everybody was standing in line for the Java team, because the perception was that they were there to build all the new and exciting applications on Windows and Linux, while the RPG team was there to maintain legacy applications on the IBM i. As Rosa’s focus was on new development, she had little interaction with the RPG team.
Still new at HFA, Rosa recognized that there was a third development platform in use at HFA, namely LANSA. The finding came about when Rosa (wanting to establish proper user interface standards) organized a poll among end users and asked them which look and behavior of an existing application they would like to see replicated to new applications. The overwhelming favorite was eMechanical (eMech), the company’s online license request solution for music distributors.
Rosa initially assumed eMech was written in Java, because it was a graphical web application. But as it turned out eMech was developed six years earlier by a LANSA consultant. Since it ran on the IBM i, it was managed by the RPG team, but the team had minimal LANSA training and was never assigned a LANSA project. The Java team wouldn’t touch LANSA or the AS/400, so Rosa put it to the back of her mind.
Rosa was promoted to Director of Core Applications Engineering and became more involved with the RPG team. She got a better understanding of the team’s capabilities. “These guys have a deep understanding of our business and IT systems. They handle the guts of our processing. Plus they are extremely professional and disciplined in the whole process of writing good code, testing it and rolling it out to the users. If only the team had a better tool than RPG, they would be very capable of delivering modern applications,” Rosa says.
In her new role, Rosa’s goal was to modernize HFA’s core IBM i applications and to better utilize the skills of the RPG team. In a meeting with the 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 prove you can deliver modern applications.” The RPG team was enthusiastic about the plan and longing for something new to work with.
One of the applications on top of the list for redevelopment was the Publisher Online Licensing Interface (POLI+), used by the publishers to accept/reject license requests and manage their transactions. Now replaced, the old POLI+ was HFA’s last 5250 application for external users.
Since the eMech web solution for music distributors was doing so well, LANSA came first to mind for redeveloping POLI+, but Rosa also gave consideration to IBM WebFacing, PHP and Java. WebFacing required little training, but was rejected because it was too limited for taking POLI+ forward. PHP was determined to have a bigger learning curve than LANSA, and Java even more so. “Java is not for everyone, you might just as well train RPG programmers to become brain surgeons,” says Rosa.
Java is not for everyone, you might just as well train RPG programmers to become brain surgeons.
LANSA was selected as the development platform for the new POLI+ web project, but not just because the tool was already lying around. “What really sold me was its rapid development, plus the fact it runs on multiple platforms,” says Rosa. Rosa and her team also found it a major benefit that LANSA can call RPG programs and that LANSA has native access to DB2/400 data. HFA has a huge amount of RPG code that is well written, presenting great business value. Taking advantage of existing back-end practices made good business sense.
All six members of the RPG team took a one week class-room training in Visual LANSA WAMs, a much newer development method than used for the six year old eMech solution, and followed that up with some further online training. Three of the developers were taken away from their regular maintenance duties and given the job of developing the new POLI+ web application.
“POLI+ is a large application,” explains Rosa. “Publishers use it to respond to license requests and manage their songs and license transactions. There are 10 tabs, each with a range of interactive update and query functions. The developers rewrote this large application completely in LANSA within two months. New functionality was added as well, mostly in the area of filters and fuzzy searches.”
At the beginning of the project, a LANSA consultant was available for mentoring and best practice guidance. HFA’s developers may have liked to figure everything out themselves, but Rosa wanted them to do things right from the start and meet the tight project deadline, both of which they achieved.
LANSA’s graphical and event driven WAMs present a totally different development paradigm to RPG, but even so, the tool was picked up quickly by the team. “Our developers can do RPG in their sleep and whip up a database maintenance program in no time. Using LANSA they are able to program with almost the same time estimate as with RPG, maybe just slightly more at this stage, because they are still relatively new to LANSA,” says Rosa.
“The RPG developers loved the challenge and felt energized by the web project,” continues Rosa. “They could not stop working. It was a thrill to watch my team dive into LANSA after longing for something new to work with. I got emails at all hours of the night when they discovered something new, saying ‘Hey, guess what we can do with WAMs.’ Meanwhile, the rest of the team kept the core systems ticking and took care of the regular maintenance.”
Rosa attributes the success of the project to a combination of the developers’ experience, maturity and willingness to innovate, with an attention to quality and business value that other development options often struggle to produce.
The new POLI+ application went live soon after development was completed and was very well received by the publishers. “We got a ton of compliments,” says Rosa.”They even tweeted about it on Twitter.”
“The old POLI+ came with a user manual of over 100 pages. The new POLI+ is just plug and play and publishers rarely look at the help text. It has really freed up the Publisher Services team (who provide support to HFA’s publisher clients) from having to provide regular training and it also freed up our team because we’re getting less requests for technical assistance. So there’s a lower cost and a happier user.”
What really sold me was LANSA’s rapid development and multi-platform deployment.
“By training our RPG team in a modern and practical development tool, we doubled our development resources,” says Rosa. “There have been a couple of years the RPG team’s direction was in limbo. No one wanted 5250 screens, so all new projects went to the Java team while the RPG team focused on maintenance work. The RPG developers certainly were not lacking in skills, they just didn’t have the right toolset.”
The doubling of resources is extremely welcome to tackle a backlog of IT projects. HFA needs to continuously update its systems to keep up with the fast changes in its industry. Before the digital music revolution there were relatively few players and licenses were usually issued for an entire album to be recorded. Now there are a huge number of players, many license type varieties such as digital downloads, streaming and ringtones, plus licenses are often issued for a single song. As a result, HFA’s processes are now far more complicated and data volumes have sky-rocketed as much as 800% over the last year.
HFA Senior Vice President and CIO Lou Trebino explains, “While complexity and volumes have gone up dramatically, revenues have not increased to the same extent. So productivity and efficiency are more important than ever. In our industry we need a very fast speed-to-market approach to support new types of transactions and services. Anything we want to do in Java is generally a fairly extensive development effort. With proper foresight and planning that’s okay, because we can schedule for it. In the past when we identified an opportunity that needed action quickly, Java was not always the best choice. RPG was much quicker, but it lacked the graphical and cross-platform capabilities.”
“We deal with very contemporary and technology-aware users and when we demoed our system during a sales call to potentially new publishers, their reaction when we suddenly hit a green screen between all the web apps would be one of shock. ‘Whoa, are you back with the Flintstones?’ It really made us look somewhat archaic, which is not a good thing when you are trying to sell your capabilities.”
“And that’s where LANSA really came into play and enabled us to very quickly modernize a core application and make it much easier to maintain, and easier to evolve and expand in functionality. LANSA is just the perfect type of tool for what we needed to do.”
“POLI+ is one of our most frequently used and highest traffic applications. Using LANSA on the POLI+ application was a perfect test case for us. We have proven we can take a quite substantial core application that was dated in terms of appearance and flexibility, and very quickly modernize it for the web, take its code forward and position it for growth.”
LANSA enabled us to very quickly modernize an application and make it easier to maintain.
“Historically the RPG team was ignored when it came to new development efforts, because no one wanted the legacy applications they produced. Now, with LANSA in place, the RPG team is on equal footing with the Java team. Business considerations, productivity and resource availability determine the choice of tool and platform,” says Trebino.
Many, if not all, one-off user requests that require new development on the IBM i are now handled with LANSA instead of RPG. The RPG team has also started on its next big LANSA project: a new Audit Uplift system for internal users, this time with a rich Windows interface rather than a browser interface.
“The Audit Uplift project had been on the table for almost two years, but we kept putting it off because it was going to be an extensive effort using Java, estimated to be a minimum of twelve months development and a lot of design work up-front. Now, using LANSA, we’re well on the way to what we expect to be a 6 month development effort. There was simply no business reason to do this project in Java,” Trebino concludes.
The existing RPG applications and LANSA-based eMech have been humming happily for years. It’s almost like the quieter you are, the more invisible you get,” concludes Rosa. “I thought it was time to better utilize all the talent we have and give the RPG team a better tool, so they can work on the same web and Windows projects as the Java team.”
With LANSA the RPG team is on equal footing with the Java team.