RPG Open Access: You Don’t Know What You Don’t Know
February 6, 2012 Dan Burger
For the past two years RPG Open Access technology has been available, yet it remained unseen and even unheard by a great many people in the IBM i community. A combination of low visibility–partly related to a few ISVs taking the lead on some projects, while onlookers waited to see how the projects turned out–and limited budgets, which put a lot of IT and other expenditures on the skids. Application modernization projects have sprouted here and there, but let’s just say it’s not burning down the house. It’s at a point, however, where we should see a green-screen fade.
Another story in this issue of The Four Hundred titled Charges Dropped, Rational Open Access Goes Free covers IBM‘s announcement that Rational Open Access: RPG Edition, which was formerly licensed software, is now available as a freebie.
So far, I’m going along with the idea that Open Access is pretty much an unknown entity. Not that many people know about it. And to most of those who do, it’s a hazy concept at best. The results aren’t back from the doctor yet. It’s also reasonable to believe that some people (look to your left and then your right, because I’m not talking about you) are misinformed. You may have had this happen to you when asking the wrong person for advice on buying a 3D TV or a cruise ship vacation.
It’s occurred to me that maybe everyone does know about RPG OA and not that many care. But I don’t really think that is the case. Application modernization projects, like lots of business expenditures, haven’t been a high priority. This is likely to change. Moving green-screen applications into the modern, multi-platform world is bound to pick up speed. It’s hard to imagine that not happening. Rational Open Access: RPG Edition should benefit along with the gamut of 5250 modernization options.
Last week I spoke with Alison Butterill, an IBM i product manager, who works from the Toronto Labs. I’ve spoken with Butterill several times on the topic of application modernization in general and also on the specific product called Rational Open Access: RPG Edition. Butterill travels around the world as an IBM Rational evangelist and she is very familiar within the IBM i community–at least those who seek out education and training conferences and local user groups. She meets a lot of IBM i customers as part of her job. She talks with a lot of developers.
Butterill attempted to steer me away from the idea that by and large the IBM i community is unaware of RPG Open Access technology, but didn’t push too hard against the idea that awareness overall is vague at best.
If you haven’t noticed the IBM i roadmap that has strongly suggested that users step away from the green screen interface, let’s clarify that. No one is going to fight you on certain situations where the green screen is preferred and is actually a better choice for the users who are familiar with it. But the outward-facing applications can’t live there anymore. It’s a hindrance in many current integration efforts and that is never changing unless you and your customers live on a very small island.
One of the most commonly used methods for replacing the 5250 user interface has been screen scraping. It’s quick and it’s cheaper because it is only altering what is seen on the screen. An application’s limitations, its functionality, are at the end of the line. It’s a Band-Aid.
RPG OA is not screen scraping. Here’s why.
“When I explain Rational Open Access: RPG Edition, I often start by explaining the ability of Open Access to interface with other technologies as a first step,” Butterill told me. “By understanding that concept first, it makes it easier to grasp the difference between RPG Open Access and screen scraping.”
Step one: Get your applications to play well with other technologies. Then, step two is thinking about what can be done with the user interface.
Screen scraping depends on the technique used to accomplish the new rendering and where the final image is being delivered. It’s not always the two-foot putt for birdie that it appears to be. There have been some modernization projects that take a piecemeal approach to working on a really large app. Rather than modernize the entire app, only pieces (typically customer-facing pieces) get the front-end alignment–the GUI lipstick for the 5250 pig. Not a good idea in all cases, advises Butterill.
“If the screen is being delivered to a Web browser, many tools and techniques cannot support a piecemeal approach,” she says. “It’s hard to flip back and forth from a browser to a green screen. If the rendering is delivered somewhere other than a browser, then perhaps piecemeal works. It’s all dependent on the target, the technique, and in many cases the capabilities of the tool. But from the perspective of most users, they want their interface to be consistent.”
“If you are talking about modernizing as being a re-architected and re-designed solution, then piecemeal can work. Step one is to isolate functions–separating the user interface and data access, for instance. Doing this program by program, or function by function is fine. Step two is to replace the UI. It is at this stage that users would be frustrated by jumping back and forth. In my experience, it seems that a replacement of UI needs to be done at once. That becomes easier if the UI has already been isolated or separated.”
You can hear Butterill talk about application modernization and RPG Open Access technology on Wednesday, February 22, as part of a Webinar session on the topic of Open Access myths and misconceptions.
Working with Butterill on the February 22 webinar is Alex Roytman, CEO of Profound Logic, the IBM i software vendor that has been doing the most work with RPG Open Access. Profound has an approach that recreates the user interface out of the green-screen display files.
“RPG OA is a technology for building new applications. It is not tied to the functionality of an existing green screen,” Roytman explained last week in a phone call. “RPG OA is not just another Web-facing type of tool; it’s not another screen-scraping technology. Screen scraping is the simple process of putting a graphical user interface on an existing green-screen application. It’s entirely a front-end presentation process that does not touch the back-end working processes.”
It should come as no surprise that this point of confusion is one of the misconceptions that gets attention in the webinar.
RPG OA–which, by the way, can only be used on the IBM i 6.1 and 7.1 versions of the operating system–works with traditional RPG files. In the case of modernization, it’s a display file. The term “display file” often carries negative connotations associated with the limitations of green screens. And that’s where some people get the wrong idea that RPG OA is limited to screen scraping.
“The display file is really a modern idea,” Roytman says. “It’s an idea that was ahead of its time.”
He points to HTML5 as an example. One concept being worked on for HTML5 is called model-driven use. It’s something that Google is attempting to incorporate, Roytman says, and is very similar to the IBM display files in that it’s a way to separate the data from the view.
The idea of a display file is good. A lot of frameworks that are being developed outside the IBM i platform using methods similar to the display file. Model-driven views are one example.
A display file has the capability to define a user interface and then also define which data plugs into that user interface. So when you write the server-side code, you just worry about the data that plugs into the user interface, not generating or writing code for the user interface.
There are numerous tools from a variety of vendors that are designed to reuse of some RPG code. RPG OA is the latest idea for doing that and it’s been hailed by RPG brainiacs like Jon Paris and Aaron Bartell.
One thing that needs to be considered when looking at redeveloping apps is the amount of work that’s required to do the redevelopment (modernization, if you prefer). Even if some of the back-end logic is there, it has to be repackaged or restructured or reorganized so that Web services, or something that serves the same purpose, is being written. To do that on a big application is going to require a considerable effort. Quantifying that effort in terms of time and money is where many companies have stalled their efforts.