Windows Replaced By IBM i, Hosted Software, And Web Portal
August 13, 2012 Dan Burger
Getting something for free sounds good until you discover that it’s worth pretty much what you paid for it. In this case, Windows-based Web applications are delivered as a free hosted service. Some of the users would pay to have a better alternative. And that’s where Nathan Andelin steps in. Andelin writes applications in RPG and hosts them on an IBM Power Systems 720 running IBM i. And he’s found customers who will give up their free option for something better.
Even though the hosted service Andelin offers has a fee, that is not a deterrent. It’s a matter of being more responsive to the individual needs of the users, Andelin says.
The users Andelin hopes to appeal to are school systems. Internet resources and vendor-hosted applications are an important part of the core business processes in many school systems these days. Some of those processes are identical from one school to another and some processes are unique, just like we find in most organizations. Financial processes are likely very similar, while administrative policies and curriculum may be more diverse. It’s not a one-size-fits-all universe. Applications cover such things as student information systems; online assessments for students, faculty, and administrators; and instructional portals. If applications don’t function adequately or integrate properly, someone is going to be wearing the dunce cap.
In Andelin’s home state of Utah, his primary target is the charter schools. Operational activities tend to vary more from the public schools and attention to those differences–receiving and implementing input from the schools–has paid off for Andelin’s company Relational Database Corp (RDC). Creating a user interface that is efficient and highly functional certainly helps as well.
The free hosted system provided by the state was a mish-mash of applications partially written in Visual FoxPro, with a desktop interface partially written in Microsoft .NET, and a Web interface partially written in Adobe ColdFusion. Like one of those school cafeteria mystery meals you were served as a kid, the integration was less than appetizing.
For one thing, Visual FoxPro doesn’t allow the schools to access Microsoft’s SQL Server database. There is no ODBC-like connection. The system is constructed through remote terminal services so that only screens are translated back to workstations.
The resources to manage that are extensive. It takes a lot of processing cores and memory to provide efficient interfaces and that means a lot of software licenses, and therefore higher costs. The taxpayers of Utah foot that bill.
“That system is like having an instance of Microsoft Windows running for every user,” Andelin says. “You get something like 50 users on a 16-core server.”
RDC is still in the early stages of building a customer base among the Utah schools, but its system is hosting 1,500 users on its Power Systems 720 server with two of the four processors activated and 32 GB of main memory. It has eight disk drives installed. And that system has a lot of room to grow.
The Power 720 is one of the Gen2 boxes, also known as a Power7 or Power7 Prime machine within IBM, which is a 4U rack-mounted machine with a single processor card that has one four-core Power7 chip running at 3 GHz. Main memory peaks at 128 GB in the machine, which has eight drive bays plus five PCI-Express 2.0 peripheral slots and an optional four low-profile PCI-Express 2.0 slots that can be added through a riser card. (You need to buy the six-core or eight-core Power 720 to get the one GX++ bus slot to implement 12X remote I/O drawers for external peripherals.)
On the application development side, Andelin’s approach involves a single user interface, so all the screens look and behave similarly, whether the apps are for financials or for activates relating to students, teachers, or administrators activities. “We just expose our apps through the HTTP server,” he points out. “It’s more efficient and requires fewer resources.”
Relational Database has written more than 400 RPG applications that include development frameworks, application generators, and a Web portal. Very few of the apps require customization from one school to another. Andelin is one of two programmers doing the programming work.
His choice of development tools is maybe not what you would expect. Andelin prefers the old school PDM and SEU contraptions. (I use the word “contraptions” lovingly, knowing there are people who believe those tools should be in museums and modern development tools will increase productivity.)
“I recognize the productivity gains in some areas of the Rational tooling,” Andelin admits, “but there are some areas that are not as productive.” His viewpoint is that if you are really skilled with a tool and you balance the gains and loses when using another tool, there may not be reason to change. The other factor in this, he says, is that RDC developers don’t spend a lot of time coding. “We spend more time in the design and the user interface development using Dreamweaver.”
The work on the RPG code is handled by a home-grown application generator that does model-based generation of RPG code. The application generation technology relies on a CL-based scripting language and a tool that dynamically reads and runs the CL rather than traditionally compiling it into a program and running it.
“I promote native RPG solutions,” Andelin says. “There are good tools and frameworks out there. People should look into them. We are not using them (he prefers to build his own software), but I am supportive of them.”
Subsystems Not Partitions
As this hosted services model is laid out, each school system customer will have its own instance of the IBM i HTTP server. The architecture is devised with separate customer subsystems for the applications rather than using logical partitioning, which is an architectural decision others may choose. Andelin chose to divide customer workloads into customer subsystems. His thinking takes into account the one of the IBM i’s greatest assets: it manages workloads really well.
“When you partition and use a hypervisor to switch between partitions, the hypervisor doesn’t have a lot of knowledge of the precise work that is going on in a partition,” Andelin says. “It just knows when resources are needed and it provides what is necessary. We can use IBM’s performance management tools. The IBM i itself can manage workloads by knowing the job priorities. I think the utilization will be more efficient compared to partitioning.”
For the time being and until RDC’s customer base grows significantly, the attributes of subsystems are the same from one school to another. Subsystems provide the option of configuring the maximum number of jobs, the memory associated with the subsystems, the priorities, and other performance criteria. Memory allocation is based on the application interfaces exposed to the users who have access to a sign-on screen, a menu system, and the RDC applications. The amount of memory the app consumes is controlled by its design. There’s no exposing of SQL commands, ODBC or OLE DB interfaces, or any database interface, for instance.
The IBM i operating system, Andelin points out, is capable of managing thousands and maybe tens of thousands of jobs. With the machine configured as it is now, he believes it will handle 2,000 concurrent users. Proving that this small-footprint system has the capability to run Web applications for thousands of concurrent users gives Andelin a great amount of satisfaction. He relishes the opportunity to compare this to other technologies. In coming years, he anticipates replacing dozens of Windows systems.
“Over the past 20 years, a lot of organizations have tried to integrate various Windows applications with the IBM i (and its predecessors) applications and databases,” he says. “That has led to arguably the most difficult and costly challenge facing IT today. It’s just plain hard to create, manage, maintain, and support disparate technologies. It takes inordinate manpower and computing resources.”
The constraints of the 5250 interface is being erased by Web technologies that allow almost any number and any type of application servers deployed under an IBM i Web portal. It’s good to see people like Nathan Andelin being successful with this.