This week's announcements by IBM and Zend Technologies raise questions about the direction of future development on Power Systems.
The announcements this week by IBM and Zend Technologies that IBM will bundle the Zend Web stack, including Zend Core and Zend Framework, with all future sales of IBM i software and servers has kindled a debate about the value of PHP on the System i and the best tools to employ it. It also has raised questions about IBM's direction with the System i and its proprietary but "open" operating system, IBM i.
It has been clear for many years that IBM is interested in leveraging the investment its customers have in RPG applications that run on the AS/400, or today's Power Systems. The company remains convinced that the Power Systems hardware running IBM i is still the best platform in the world for business applications. What has put a wrinkle in that mantra is the advent of the Web 2.0 technologies and the shift of business to the Web. The highly reliable but somewhat stodgy green-screen applications don't have the flexibility that is demanded by today's Web users. The solution: keep your RPG applications as the back-end solution, but "modernize" them for today's users so they have a GUI look and feel. This saves a company from having to completely redevelop its applications--or buy new--and still provides the reliability and security that it's looking for in a business solution.
But behind this idea lingers the feeling by some that this is still an "imperfect" solution, that to do something right you have to start from scratch and do it over, and do it right, taking into account all of the parameters of today's world. People who feel this way obviously have never been to Tijuana to get new carpeting and seat covers for their car. It's a wonderful thing taking old Betsy down to Tijuana to milk a few more years out of her. Do you think they pull the carpet up off the floor and tear the old seat covers off, exposing the springs and foam? Well, they do pull the seat covers off to use as a pattern, but they just take a well-worn whisk broom, sweep the Dairy Queen wrappers off the floor, and lay down new carpet! Now, this could be a problem if you have had a very bad pet, but for most of us, it doesn't matter! You drive out of the place with new carpet, new upholstery--maybe a new headliner--and you're happy. I dare say very happy. And old Betsy is happy too because she knows the day when she's sitting in the lot at Pick-a-Part with her wheels off has been pushed out to some indefinite point in the future that no one cares to think about. And you are continuing to enjoy all the fruits of your really great job that pays you more money than you can spend (cough, cough) without a $400 car payment that is going to last for the next five years. Woo hoo! And besides, aren't today's cars all made of plastic?
It's the same for business. Who the heck has the money today to arbitrarily go out and redevelop all their applications? And what do they get when they do? They get security problems. Modernization is the way to go, and business figured this out a couple of years ago. Who defined "maturity" as the ability to tolerate an imperfect situation?
But the problem with continuing to develop in RPG is that your application won't run on the "other" platforms. So learn Java! A kid could learn it! Oops, that's the problem: you almost have to have a teenager's mental agility to get a handle on that language. So, along comes PHP; it's great for developing Web applications, it runs on the AS/400 (i5/OS V5R4) and Power Systems thanks to Zend Core, and there are now some rapid application development tools available to make it easy to work in. On top of that, your applications are extensible and will run on a variety of other operating systems besides IBM i, including Windows, Linux, and UNIX, among others. And it's open source, so you're not being held captive by what it will or will not do. Do we start to get the picture why PHP is becoming so popular?
While Zend makes a tool to develop PHP applications called Zend Studio for Eclipse that is reasonably priced, there are many PHP development tools available today on the Internet. I saw one comment online this week about a user developing Web applications for the IBM i using CGIDEV2, which is a free and open-source AS/400-based program development toolkit that helps develop interactive Web-based programs using RPG ILE as the back-end Common Gateway Interface language. Apparently it works, though IBM has not done much with it, and there seems to be some question whether the company is even still supporting it. They sure aren't advertising it. It's becoming a sort of orphan, and no one is recommending that you use it for modernizing green-screens, though it apparently works quite well for developing new Web applications using existing RPG application functionality.
Perhaps the gold standard for the IBM i world in PHP development environments is BCD's WebSmart PHP with all its templates, wizards, and SmartCharts. Yes, it does come with a price tag, unlike many PHP development tools, but there is a real company behind it with real developers and real customer service standing ready to answer your very real questions (and they seem even more real to you when you have a problem and can't figure something out). Needless to say, there are many free tools available that don't provide this.
I asked Eric Figura, BCD's director of sales and marketing, what he thought of this week's announcement by IBM and Zend, and here is what he said:
"BCD believes IBM's preloading Zend Core with IBM i is great for the platform and developers. This puts PHP development on a level playing field with other languages on the platform. This is a true alternative to Java, a language that developers have really struggled with on the IBM i."
Figura went on to say that, in BCD's view, it "demonstrates IBM's commitment to PHP as a mainstream development language" and added that "we are very excited about the news."
Figura told me he believes that it further signals IBM's move in a direction toward open-source development, an observation that AS/400 designer Frank Soltis made to me as well during an interview I had with him in December. It's interesting to note too that the intriguing and essentially maintenance-free Foundations server--or appliance, as it is being called--from IBM Lotus runs the Linux operating system on a ROM chip. What better language is there to use to develop on Linux than PHP? It doesn't go without notice that PHP also runs on all three of the operating systems offered on Power Systems: IBM i, AIX, and Linux.
Figura said he has had many RPG developers thank him for giving them the tools they needed in WebSmart PHP to learn a language that they envision will extend their careers for years to come and allow them to port their applications to other platforms.
If anyone is looking for a statement of direction on where IBM is going with future languages, this week's announcements could be a strong indicator of where the future path lies. While there are those who believe that EGL is IBM's language of choice for Web application development, if it is, the company certainly appears to be bending to the reality of user preference and the leanings in the market with its bundling of the Zend Web stack with IBM i.