While use of IBM i servers for hosting Web sites doesn't seem to be expanding, the demand for means of opening IBM i applications to the Web is burgeoning.
As the Internet becomes more entrenched in business life, the issue of making applications that run on IBM i servers has to be more carefully parsed these days. While few businesses are running corporate Web sites directly on their i machines, accessing i-based applications is getting more emphasis than ever, at least according to several vendors of Web application-building tools for the i who were questioned recently.
When it comes to differentiating between using an i as a Web site server and providing Web access to applications running on the i, "you're talking about two totally different types of business tools for two very different types of developers," notes Robert Swanson, senior partner at CNX Corporation. "I doubt there are many companies out there today running their main, public-facing Web sites that serve mostly in a marketing capacity from an IBM i machine. It typically makes sense to offload that kind of workload to a separate dedicated server, or even a cloud-based one with content you update as needed. Also, the development effort behind creating Web pages to show company overviews and product features and so on is quite a bit different than the kind of work that most IBM i programmers are accustomed to, which is delivering hard business data to users."
So, when discussing Web application-building tools for the i, it's necessary to differentiate between tools for building Web pages and tools for creating Web-friendly apps. "With regard to tools for general Web page development, I don't anticipate we'll see much if any growth in that space specific to IBM i, as today's application building tools by and large aren't geared toward that audience, and likely never will be. Web-based business applications, on the other hand, are a different story," emphasizes Swanson.
PC Servers Aren't Crowding Out the IBM i
When posed the question of whether or not Web-building tools for the i might fade in the future as businesses look to cheaper platforms for Web operations, Alex Roytman, CEO at Profound Logic Software, also took issue with the idea that Web-site serving and Web application availability are equivalent.
"Today, PC servers are not significantly cheaper, not even at the point of acquisition, than Power servers. Granted, if you buy a desktop PC with a cheaper chassis, a power supply that's not redundant, and generally cheaper components, you can use that as a server. If you do that, your cost of acquisition is less, but your chance of downtime due to hardware failures has drastically increased. And this is not today's trend at all; today's trend is to put a higher importance on business continuity," Roytman points out. "Far more auditing is done today to ensure business continuity. If you don't comply with it, the auditors give your organization a higher risk of financial loss, which makes your business worth less to stockholders and investors. Also, just to clarify, I think the IBM i is great for Web applications. Web sites (static information sites) are not being built on IBM i as often as Web applications are."
"[The IBM i] is a solid platform to support all kinds of applications including Web applications," agrees Anibal Gonda, business development manager, sales for GeneXus
"As to whether Web application–building tools for IBM i 'become moot' in five years, I'm inclined to say they won't, but the true answer is more likely 'it depends,'" cautions CNX's Swanson. "It depends on whether more seasoned IBM i developers commit to venturing out of their green screen comfort zones and start learning techniques for Web development that are in use on just about all other platforms (for which RPG has a role, by the way). It depends on IBM, and all the loyal IBM i aficionados, becoming more successful in bringing new blood to the platform. It depends on current and future CIOs recognizing the value proposition of their IBM i investment and working to extend and leverage it, rather than positioning their companies to offload applications to other platforms."
The Future of Web App Development Tools?
When asked what they saw as one of the biggest technologies affecting Web application development tools, all three vendors cited mobile applications as a significant player, although each cited other considerations as well.
"Without a doubt, mobile applications, cloud computing, and Big Data [are] being requested, and those for sure are the areas that our customers are more focused on," offers GeneXus' Gonda. [Note: Big Data refers to the phenomenon of trying to analyze data sets so large as to be difficult to process with standard database-management tools. It's a concern for large enterprises or those with multiple lines of business when trying to spot trends from information buried in multiple databases.] "Mobility is something that for every company that has information to share with their users is by far at the forefront of their needs. Big Data is important to develop enterprise strategies and cloud computing, and it is needed fundamentally for connectivity and processing power."
"We're definitely seeing an increased interest in mobile applications," agrees Profound Logic's Roytman. "I suspect it'll continue to grow very rapidly and explode. Data service for mobile devices will continue to improve, both in speed and in coverage areas. It will also become more ubiquitous, to the point where people will start to eliminate other methods of wireless (like WiFi). This will not occur immediately, but over a longer span of time."
"Our customers would like to see us expand
But as to the future in general, Swanson adds, "The best way to foster future development of application-building products for IBM i would be to get more developers discovering and working on the platform. Because when you increase the size of the IBM i development community, you increase the appeal to software vendors developing the tools that cater to them. So to get there, the IBM i platform needs to be made accessible to the young and eager development masses, most of whom aren't going to have the luxury of playing with an IBM i in their garage or basement."
"Where there is a genuine threat to the way things are done today is in the cloud," Roytman notes. "In the cloud, you can easily/quickly deploy to a server that someone else runs and that can be set up very quickly and cheaply. IBM i in the cloud is much more expensive than other platforms at this point, and I really hope IBM takes it seriously and improves the situation. However, I don't think the cloud is right for all businesses or many business models."
Web Application–Building Tools for IBM i
Below is a summary of 49 products that offer a means of creating Web-friendly IBM i applications. They're divided into two categories. First are Webfacing tools that can modify existing apps to run via a browser. Second are interactive development environments (IDEs) and other toolsets that can be used to build brand-new applications, although in some cases these products can also accomplish Webfacing of legacy software. You should check the descriptions and vendor Web sites for differentiation.
When looking for products or services, also be sure to check the MC Press Online Buyer's Guide.
Webfacing Tools for IBM i Applications
Strategi webSTYLE is an IBM i-based GUI generator that facilitates operation of existing server applications via a browser, as well as integration between legacy server apps and desktop software. It includes features such as multiple-session tabs and dynamic icons that replace function keys.
ASNA's Monarch Web-enables RPG-based applications by converting them to Microsoft .NET and optionally converts IBM i databases to SQL Server. Monarch also generates an optional application-migration roadmap. Converted applications support GUIs with browser accessibility, Web services, n-tier architectures, and enterprise-wide application integration.
Business Computer Design International (BCD)
Presto lets developers equip IBM i apps with three optional levels of Web interfaces and customize interface details, enables browser access to 5250 interfaces with legacy RPG or COBOL applications and menus, and enables converted apps to run in a browser. Presto functions without requiring any source-code changes or recompiles.
Freestyle-400 converts RPG applications to Web accessibility via any browser, but without conversion to Java or .NET. Freestyle-400 also includes facilities for transaction management, configuration within a full product lifecycle structure, and security protection.
X-Extract is part of Databorough's X-Analysis suite. X-Extract includes the ability to extract business-process logic and services from apps written in RPG, COBOL, and other IBM i-supported languages for use in Web versions of those applications. It also restructures, refactors, and converts legacy code as well as automatically converting DDS to SQL.
Flynet Viewer incorporates graphical tools, a browser-based terminal emulator, and an IDE that generates Microsoft .NET components to convert IBM i and UNIX applications into Web applications or Web services. Flynet Viewer records screens, relationships, and data flows within legacy apps to create Web-friendly versions.
LegacyWeb converts RPG- and COBOL-based applications to HTML, which lets the new version run in a browser environment. Alternatively, LegacyWeb can generate XML that functions as a bridge between legacy apps and wireless versions, or create pure HTML environments in which to access legacy apps via browser.
Rational Host Access Transformation Services (HATS) translates 5250 apps to provide browser and other types of user interfaces, as well as extends them to function as standard Web services. HATS includes a built-in editor for developing additional Web services and macros.
WDSc for IBM i turns DDS display file source-members to either JavaServer Pages (JSP) or XML files to let the UI of any IBM i application run in a browser. Although particularly designed to help deploy legacy apps in a WebSphere environment, the changed applications can run via browser in a non-WebSphere environment as well.
Interactive Dynamic Technologies
DEJA.400 AS/400 to J2EE Conversion Program is a J2EE application server and relational database abstraction engine. It helps Webface host applications by converting existing DB2 databases to relational databases, extracting business logic from RPG and CL code and converting it to Java, and transforming 5250 display screens to a browser-friendly equivalent.
RPG-XML Suite enables programmers to use XML from within RPG programs to call IBM i applications or provide Web services to IBM i applications. The product also lets developers create MS Word and Excel documents via XML and pass Web services and XML document streams to other i servers. RPG-XML Suite requires the Apache Tomcat server.
LANSA's aXes lets enterprises convert existing RPG and COBOL apps to Rich Internet Applications (RIAs) via an automated process that requires no new code writing. Applications transformed with aXes optionally offer SSL security, XML Web connectivity, as well as cloud and mobile-device deployment.
RAMP from LANSA is an application re-engineering tool that enables assembly of applications from components built with RPG, Visual LANSA, Visual C#, Microsoft .NET, HTML, and AJAX to combine 5250 and Windows apps into new composite software that's browser- and mobile device-friendly. RAMP also includes a metadata repository of business rules and definitions that all apps share and from which developers can apply modifications across all existing apps as business needs change.
LANSA Open for .NET lets developers build applications from within Microsoft Visual Studio that can access IBM i system resources. It includes a Visual Studio plug-in with a class library, a data repository, and a data-model editor, as well as access to the LANSA Metadata Repository, and a dynamic link library.
newlook is a refacing tool for IBM i and z applications. It delivers composite applications that tie together databases on multiple platforms (including mobile devices), provides reusable components and Web-services support for SOA architectures, includes multichannel interface options, and is compatible with SSL, VPN, and other security arrangements.
The iNEXT solution converts server applications to Microsoft .NET on the fly and enables modifications to the legacy apps over time, which are translated to the .NET versions available to run in a browser. The translation process can be performed either by in-house developers or as a service from ML–Software.
Pluta Brothers Design
PSC/400 provides three options for converting IBM i applications to run on the Web: a Web-enabled green-screen mode, a "gray-screen" JavaServer Pages (JSP) conversion mode using Cascading Style Sheets (CSS), and a rules-based application-generator mode.
Profound Logic Software
Genie converts legacy application interfaces to HTML without using applets, ActiveX controls, or PC clients. Genie's codeless visual designer lets programmers add graphical UI and Web elements such as buttons, dropdowns, check boxes, and images. Enterprises converting apps with Genie can optionally use Profound's Atrium product to unify access to all Web-friendly IBM i software into a single menu.
Based on IBM's Open Access, Profound UI lets developers build Web interfaces for legacy IBM i applications. Profound UI's Designer feature lets programmers develop UI widgets, incorporate them into an interface, and then resize and edit the widgets visually. Profound UI works with applications written in RPG, COBOL, CL, and PHP.
LegaSuite is a library of tools for integrating IBM i and z, UNIX, and Windows apps into multiplatform and SOA environments, as well as for converting them to browser accessibility and adding Web-friendly enhancements such as dashboards and reports drawn from multiple sources.
LegaSuite GUI helps developers create browser-friendly interfaces for legacy applications on IBM i. LegaSuite GUI Web-enables, customizes, and combines data and processes from legacy apps to create Web-accessible versions.
WebMethods ApplinX works with IBM i and z servers to convert existing applications to browser-accessible modes, including for mobile devices. ApplinX converts green-screen interfaces by translating them into J2EE Java, Microsoft .NET, or Web services modules for use in Web or SOA environments without altering the original source code.
System Objects Corporation
JACi400 translates IBM i programs written in any high-level language to HTML so they are Web-accessible. JACi400 includes facilities for generating new application elements or completely original browser-friendly apps. The solution also provides deployment tools that can integrate a mix of converted, generated, and developed apps.
Solutions for Building New Web Apps
Adventure Tech Group
iSafari helps developers to build new applications for Web or server as well as to modify legacy ones, using IBM i sockets technology. iSafari also works with third-party IDEs, provides an interface between browsers and application data, and is compatible with the IBM i security framework.
Apache Software Foundation (ASF)
Apache Wicket is an open-source application framework that lets users build new apps using Java and HTML. Wicket is supported by a community of developers and a growing set of open-source programming tools. To operate on the IBM i, it requires a Java compiler and the Apache Tomcat. Note that ASF is a membership community of individuals rather than corporations.
ASNA's AVR Classic lets developers build new RPG applications for Web or server that are also deployable to Windows 7 or 8 systems. AVR Classic provides an IDE with an editor, a debugger, Windows forms designer, and Windows custom controls. Apps built with AVR Classic can connect to IBM i, MS SQL, and ASNA local databases.
AVR for .NET is an RPG compiler for Microsoft's .NET framework that integrates with Microsoft Visual Studio and lets developers build new RPG or Windows apps, as well as modernize existing apps to accommodate Web services, provide data transparency between Windows and System i databases, and extend RPG source to be compatible with industry standards (e.g., XML, SOAP, RIA).
Business Computer Design International (BCD)
WebSmart ILE is a rapid Web application design tool for building CGI-based software that accesses DB2/400, SQL, and MySQL databases. Applications run under the basic Apache HTTP Web server.
WebSmart PHP functions similarly, generating applications in the PHP language, but generated apps can access a wider range of databases on multiple platforms.
Both WebSmart tools offer highlights such as support for Web 2.0 features, an interactive debugger, visual HTML editing, and change-management tools. Developers can use both products to either generate new software or enhance and Web-enable legacy apps.
CA's 2E provides an IDE for System i apps, as well as modernization options for existing apps. It generates source code in RPG, COBOL, RPG ILE, and COBOL ILE. It features model-based development, relational database design to support apps, reusable objects, direct-to-Web deployment options, and full lifecycle support tools for developed apps.
CA Plex is a multiplatform RAD tool that helps programmers build apps for server, Web, and SOA environments. Features include a language editor, GUI screen designers, a diagrammer, drag-and-drop business objects, and impact-analysis tools.
If you have a Java compiler, C-EMS lets developers build Web mashup applications that compile information from a variety of applications, SQL databases, and Web-page sources. Based on Eclipse, C-EMS helps information workers integrate and publish business information gathered from a wide array of sources, expose IBM i resources as Web services, and combine them into Web 2.0 applications.
CoralTree Systems Ltd.
GeneXus is an application generator for IBM i and other platforms that creates code for Web 2.0 and server apps. GeneXus generates normalized databases to support applications and automatically creates new code to update app functions when users make changes to generated-application knowledge bases. It also includes support for impact analysis, Web services use, code reuse, team development, and workflow features.
Rational Developer for i for SOA Construction specializes in providing an IDE for constructing Web 2.0 applications and user interfaces, as well as linking them to existing back-end server applications or modernizing those applications directly, as needed. The Eclipse-based IDE uses IBM's EGL language but can link to existing RPG and COBOL source code to emplace applications within an SOA architecture.
Previously known by other product names (most recently Rational Developer for i), Rational Developer for Power Systems Software includes facilities and tools for building new IBM i applications and modifying old ones. Features include integrated development environments for all major languages supported by the IBM i, application performance-analysis tools, programmer productivity utilities, and a collaborative application lifecycle-management environment.
WebSphere Application Server - Express provides an all-in-one solution for building dynamic Web sites and applications in Java on System i. The product provides built-in wizards and configurations, support for Web services and other Web 2.0 features, an assortment of open-standard programming models, and inherent security features.
Visual LANSA is an IDE that includes a business rules repository, an agile development language linked to the repository, a prototyping wizard, a user interface framework, a visual data modeler, a component-based architecture that enables code-sharing between projects, a library of more than 100 application templates, self-documentation and impact analysis tools, and project-tracking and version-control tools that support team programming.
renew is a Microsoft .NET development system for building apps that run on IBM i and Windows systems. It works with existing business logic and lets developers transform existing apps to more modern forms, as well as build new modules and interfaces. By generating apps in .NET code, applications remain flexible enough to adapt to future changes in technology.
EngInSite Editor for PHP provides an IDE that helps developers create, edit, run, and debug application code written in PHP versions 4 and 5. It provides a code auto-complete function, an HTTP server emulation environment, debugging tools, a code navigator, color-coding of source, and a code-performance analyzer.
Magic Software Enterprises
The Magic xpa Application Platform lets developers build single versions of applications and deploy them to a wide range of platforms, including IBM i, Web, cloud, and mobile devices, as well as AIX, Linux, Solaris, and Windows servers. The product provides a studio environment, an application engine to drive implementation processes, metadata technology, and documentation tools.
m-Power is a Web application development environment that generates new apps in Java. Designed to be useful even to non-technical users, it incorporates a model-based design approach, automatic code generation, a point-and-click developer interface, and tutorials for new users.
WOW is a RAD tool and runtime engine designed to provide Web applications for the System i and other platforms. It runs on top of the IBM WebSphere server or Apache Tomcat, can access database systems of multiple vendors concurrently within generated apps, and lets developers build apps with just a browser by specifying JDBC/SQL operations and configuring metadata.
Profound Logic Software
RPG-Alive helps developers edit and analyze RPG code when building new applications or updating old ones. Available in two versions—one version that augments IBM's SEU edit on the IBM i and a GUI version that runs on PCs—RPG-Alive helps programmers with numerous editing features. These include code outlining, delimited subroutines, source color-coding, op code selection via scrolling, and highlighted comments.
RPG Smart Pages is a Web application IDE that includes an integrated visual debugger, code-editing and design tools, built-in charting, integrated source-control and change-management options, and wizards, templates, and code-snippet components that can form the building blocks of new software.
Surround's Solutions for LANSA are a family of products and services that help developers build new applications using LANSA software tools. Surround's offerings include a customizable development framework, a structured methodology and architecture for building new apps, Accelerator tools that shorten development time for producing new application interfaces, and a .NET service agent that helps integrate new applications into server and Web environments.
System Objects Corporation
JACi400 is a suite of software tools that helps developers build new server-based applications, modernize existing applications, and build new (or convert older) applications to run over the Web. It generates source in COBOL and all versions of RPG, generates HTML for Web apps, includes new-app deployment tools, and includes HTML objects such as check boxes and radio buttons.
Zend Studio is an IDE specifically for developing new Web and server applications in the PHP language, which runs on IBM i servers using a PHP compiler. Zend Studio uses the Zend Framework, which includes an extensive library of tools and resources that support application development, including enhanced source-code editing, refactoring, code assist and generation, and semantic analysis.