Bartell Launches RPGUI, an Open Source Web Enablement Framework for RPG
January 12, 2010 Alex Woodie
RPG expert Aaron Bartell is spearheading a new open source development project called RPGUI that aims to radically simplify the development of Web interfaces for RPG programs and programmers. The project is only about a month old, and there is a lot of work to do. But Bartell is very optimistic about RPGUI’s prospects for eliminating the need for RPG programmers to become experts in Web languages such as JavaScript, and to provide a “no brainer” low-cost option for keeping RPG applications looking modern. 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). Bartell laments the fact that other languages don’t work like RPG. When an honest and hardworking RPG programmer ventures out and tries to use PHP, or JavaScript, or Java ServerFaces (JSF)–or one of the existing user interface frameworks that leverage these technologies under their covers–they’re forced to become “techno weenies” to accomplish basic tasks, Bartell says. 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. “I shouldn’t have to worry about JavaScript syntax, if I forget a comma or a closed bracket,” Bartell says. “I shouldn’t have to worry about that kind of thing. I should be able to just go in and say, ‘I’ve got 10 fields, here’s where I want them to be. When the user clicks this button, go execute this program.’ It should get back to being that simple.” The first incarnation of RPGUI targets Ext JS, the open source collection of software for rapidly generating Web applications using JavaScript. It also uses JSON, or JavaScript Object Notation, the lightweight data-interchange format, and the i OS implementation of JSON developed by Mihael Schmidt of Germany (who’s behind the RPG Next Gen open source effort). 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. Interested parties can learn more about RPGUI on Bartell’s blog at www.mowyourlawn.com and the SourceForge page at sourceforge.net/projects/rpgui/. RELATED STORIES Krengel Tech Eases XML Integration with DB2 Web Service Enabler Free RPG Editor is Open Source, Runs on Linux CNX Adds Refinements to i OS Web Modernization Toolkit CNX Aims to Streamline Web 2.0 Development for i OS with Valence
|