CNX Aims to Streamline Web 2.0 Development for i OS with Valence
July 22, 2008 Alex Woodie
The Valence story starts in 2001, when the folks at Chicago-based CNX started looking for a tool to Web-enable their add-on planning system for BPCS called ATOMIC, according to Richard Milone, CNX’s managing partner. “We were totally trained up in Java, and have written Java applications for customers that are working great,” he says. “But we still consider ourselves and our development team RPG people. We were never fully comfortable with Java on the System i.”
With Java out, CNX began looking for something a little more “native.” They tried the multitude of commercial Web enablement tools for the platform, but didn’t much like what they saw. Then Milone had an epiphany of sorts. “I can remember a particular point. It was early 2005 when Google had just came out with Google Maps. Within two minutes of using it, I knew that all applications in the future on the Web would be written like that. I didn’t know if it would take five or 10 years, but I knew that that was the direction.”
What Milone saw, of course, was one of the first Web 2.0-style GUIs (graphical user interfaces). Instead of regenerating the entire screen when the user provides input, which slows down the application, Web 2.0 applications like Google Maps update only the part of the screen that the user is interacting with, thereby speeding up the application compared to Web 1.0 applications.
Valence is an i OS implementation of sorts of the EXTJS toolkit. CNX struck an OEM deal that allows the company to redistribute EXTJS, in exchange for an annual fee paid to EXT. In addition to the EXTJS tooling, Valence includes an RPG toolkit that allows RPG programs to communicate with the front-end EXTJS tools, a Web portal based on EXTJS, and a charting application called Fusion.
The Valence RPG Toolkit gives almost everything needed to create Web 2.0-style interfaces for existing RPG applications. “You can, for example, do things like load an array of data in RPG, then call a procedure in our Valence RPG toolkit that says ‘translate to JSON’ and you pass it the array, and it will send back the formatted JSON, which you then send back to the browser and it’s rendered in the grid.”
Valence is a self-contained application that installs on i5/OS V5R3 and V5R4. It plugs into the Apache Web server, and utilizes CGI calls to interact with RPG applications. Users don’t need any special development environments to use Valence. CNX developers use Rational Developer for i (RDi) and WebSphere Development Studio Client (WDSc) to create Web 2.0 front-ends for their RPG applications.
One thing Valence does not include is a way to translate entire green-screen applications to AJAX-enabled Web 2.0 applications. “We want to be on the modernization bandwagon, of course. But what we don’t give you is the ability to automatically translate your existing programs,” Milone says. “We might provide this functionality in the future. We’ve had a lot of requests for it.”
Milone is straight up with the fact that it will take a little bit of elbow grease to create Web 2.0 applications in Valence. In an industry where everybody seems to downplay the work involved, that’s refreshing.
“We’re not asking customers to rewrite everything from scratch, but you do have to take your existing RPG programs and separate out that green-screen logic,” Milone says. “If you’re going to take your green screens and convert them to work in a Web page, then HATS [Host Access Transformation Services] is fine. The existing tools that IBM gives you are fine.
“What we’re trying to give customers is the ability to really modernize, to give the users better functionality, and to do that you really have to re-engineer your programs,” says Milone, who’s not immune to the product pitch. “If you want to continue to develop in RPG and have the best possible user interface to your programs, totally modern Web 2.0, then we are really the only product right now that handles that for System i natively.”
CNX released a beta of Valence in late April, and announced the general availability of Valence version 1.0 at the RPG World conference in Las Vegas in June. Valence version 1.1, which fixed a few bugs, shipped July 11. CNX is also working on a new version of ATOMIC that will be Web-enabled using Valence, which it expects to ship later this year.
Licenses for Valence cost $4,950 per i-based Power Systems server, System i, i5, iSeries, and AS/400; there are no per-user developer fees. For more information, visit www.cnxcorp.com.