Bartell Launches RPGUI, an Open Source Web Enablement Framework for RPG
January 12, 2010 Alex Woodie
Like many RPG programmers, Bartell professes a love for the language and the overall simplicity of developing business applications for the System i platform in Report Program Generator. Bartell, the lead developer for i OS tool vendor Krengel Technology, admires the fact that, with the System i’s native 5250 datastream, the developer doesn’t have to worry about the state of the client (which is still a dumb terminal, after all). Just tell the machine where to display the data, and it will do it, without needlessly complicating the life of the RPG programmer with more technology (aka, failure points).
For example, none of these products or existing frameworks allow the System i to maintain a stateful interaction with a Web browser, which is implicit in the 5250 dumb-terminal scheme of things. “Instead, they require the developer to make sure they initialize variables when a subsequent request comes in, to make sure that it’s the same user, or if it’s a different user, to re-initialize variables,” he says. “There’s just a lot of yuck that you still have to do.”
All that “yuck” takes the RPG programmer’s eye off the ball, which is building business applications. It’s the goal of RPGUI to allow RPG programmers to keep their eyes on that ball, while still taking advantage of all the great Web technology that’s out there today.
“My effort with RPGUI is to alleviate that, and make it simple again to do programming, to allow programmers to be business developers, versus techno weenies,” he says. “Because, you don’t get a lot of return on investment by learning JavaScipt. It just takes forever, and all the hours upon hours spent on it means that you’re going to have to learn it all over again once the next UI framework comes out.”
There are a bunch of components to RPGUI, which is described at Bartell’s RPGUI SourceForge page. At a high level, the basic goal is to provide a set of APIs that eliminate the need to manually code GUIs, and to configure screens by basically “documenting” them in a DB2/400 table, in much the same way that programmers document 5250 display files.
But it’s Bartell’s desire that RPGUI will not be tied to Ext JS. Instead, he’s positioning RPGUI to eventually become a specification of sort. As long as the development work conforms to the RPGUI specification–it must support a forward and a backward button, for example–users will be able to generate user interfaces using other technologies, including Adobe Flash or Flex, Java FX, or, “heaven forbid,” Microsoft Silverlight, Bartell says.
The requirement for a GUI has long been a sticky situation for IBM and its System i developers. IBM has yet to deliver a “native” GUI for the platform, and third-party developers have done their best to fill in the gap with a slew of GUI-generation tools and frameworks. Some of these even use Ext JS, including the Valence suite from CNX, among others.
Bartell is familiar with many of these frameworks, and has even recommended them to customers. “I’ve seen demos of all their stuff,” he says. “They’re smart people and they have good products. But they need to take it to the next level.” That next level is an open source framework, like RPGUI, according to Bartell.
“I get into situations a lot where I wished I had something I could recommend that was a no brainer, from the aspect of being well-documented, but also something that works real well and is easy to get in the door with zero price,” he says. “I get into situations where I just need a simple application with 10 pages. Obviously I’m not going to ask the IT manager to spend 10 grand for something like that.”
But perhaps the biggest factor influencing Bartell’s decision to pursue RPGUI is the tenuous hold that the System i platform has at many shops, and the crying need for free and easy-to-use Web enablement tools to give i OS applications a facelift. In that respect, RPGUI represents a higher calling.
“In the past year, a number of iSeries shops that I’ve been involved with have made it formally known that they’re planning on leaving the AS/400, or have already moved off it,” Bartell says. “Such uninformed decision making drives me nuts. I can’t help but pursue this.”
Bartell welcomes other likeminded RPG developers–and even software companies that make competing i OS Web enablement tools–to participate in the RPGUI project, which is currently in pre-alpha stage at SourceForge. Bartell recently received funding from a software vendor in Europe to turn RPGUI into a usable project by May, but still welcomes other participants into this GPL version 3 project.