Clearly, IBM needs to provide a natural Web interface for System i and then leverage that interface to the system's compilers.
During the 1970s, the natural terminal command interface emerged for System/34 and, later, for System/38. Once the OS could talk to the terminal, these languages could piggyback on the OS support and develop a natural (i.e., non-CICS, non-CCP or non-Tuxedo) interface for the system.
It was so natural that the console and the Twinax displays connected via the same physical interface. The idea was so good that virtual terminal support was developed for many other physical interfaces, such as token ring, Ethernet, TCP/IP, WebFacing (these three via PC Support or iSeries Access); Host Access Transformation Services, or HATS; and IAWEB, so that they could use this virtual interface to command the system to perform -- just as if they were Twinax devices natively attached.
Now it's time to teach Web languages to the OS and System i. And yes, this should have happened 15 years ago -- but it's time nonetheless.Web application support on System i
We know that when motivated IBM can turn around functionality on a dime, so maybe Big Blue isn't quite motivated enough. Or maybe it is; during this year alone, look at what has happened for the Web:
- You can now perform RSTLICPGM.
- PHP is operational on System i.
- You can perform an RSTLIB and a library/program call.
- MySQL is on your system, and with a few changes to the PHP configuration, PHP can work with DB2 and MySQL.
Considering that one-third of all Web applications are PHP/MySQL, bringing this to System i was important. It lets you get on the Web using free open source packages that actually work -- and they are designed for the Web. So now Perl, Python, Curl and many other great new facilities can flourish on System i. Intrinsic support for them will only improve.
If IBM can do all this in a year and it costs nothing -- other than time and skill -- to deploy, where is the natural interface? Surely IBM can deliver it or at least confirm that it's coming and when to expect it.
By the way, I'm not switching platforms -- at least not yet. But IBM's inaction regarding RPG, natural Web interface and the fact that my clients need something better than a cryptic promise for the future changed my perception of necessary skill sets pour mois. Last summer -- for the good of my own business, which needed Web facilities, and for my clients, who needed a nice Web front end and some shopping-cart software -- I learned PHP. This semester, I taught it at the university using System i. And though it's really annoying, I have reached first base with it. To make sure I learned what is necessary to get started, I wrote the book Getting Started with i5/OS, which may also help you get started with PHP/MySQL.
I've got a long way to go to become a PHP and MySQL expert. I'm going to continue the journey, which is a parallel path for the Web along with the natural Web interface and browser support for RPG. When MySQL applications natively use the System i database sometime next year (hopefully soon), not only will System i shops be able to deploy open source PHP/MySQL applications such as SugarCRM and others; with the MySQL storage engine set to use DB2/400, any open source package can access native databases through its MySQL interface. While I dislike Java and J2EE (in which only the technically elite can participate and which System i shops reject handily), the attraction to PHP and MySQL makes sense. I am not going to miss any more of these opportunities.RPG on all platforms: Why not?
Java, PHP and MySQL run on all platforms, and I encourage IBM to make new Web-based RPG and control languages (even COBOL) run on all its platforms, not just System i. This would permit independent software vendors (ISVs) to write once for System i and automatically work on other platforms. Then they can make money on System i rather than fight the religious platform battle. There would be no reason for an ISV to have two different packages and there would be no reason for the green-screen i side to be neglected if it ran on all platforms -- GUI and non-GUI. It's better than deeming the System i package "legacy" (i.e., not modern) and sending it out to pasture.
And like G.T., I like free developer tools (they are free in the PHP environment). But I don't think free developer tools would be the deciding factor if they were on an IT department-controlled host. They need to be on a developer's machine, as stated by G.T.
Take, for example, the developer's dream machine: a PC-sized and PC-priced desktop power-driven unit running i5/OS in one partition and GUI Linux, such as Ubuntu, in the other and a small but powerful partitioned desktop machine providing all the developer tools on the GUI Ubuntu Linux side as well as the i5/OS server platform on the same desktop. i5/OS on the desktop on a power-based unit – yes, that's right! If Xbox 360 can have three full-power chips, why can't the developer's dream machine have one chip that is natively pre-partitioned so the partition is invisible and just runs like a client-friendly hardware management console? How about a client/server power system on just one machine with everything you need for personal productivity, email, Web browsing, application development and test deployment. Can it get any better than that?
In my new book, though using not quite the same dream machine as an example, you will learn how to set up a PC with Apache, MySQL, PHP and Perl. This machine can be used as the source from which you learn and test PHP and MySQL without having to load your files to the System i host. Then, when you are ready and you have set this up on System i, your applications work the first time with the same code as the PC test environment. Since this is Windows client based, I wouldn't call it a dream machine, but it's pretty close.
The bottom line is that PHP and MySQL are quite good and have the potential to add clients to the System i environment. Free development tools on a client dream machine can help make the system pervasive. But the wholesale re-enfranchisement of the i5 community won't come about until IBM announces that the new OS is Web GUI oriented and that RPG is Web based.
Finally, the name of the RPG language should be changed to the Business Language so no one ever has to explain that RPG stands for "Report Program Generator" again or that RPG is in fact a business language. How does that sound? Try this on for size: "The Business Language is a business language. " Now we're talking.
ABOUT THE AUTHOR: Brian W. Kelly is an assistant professor in the Business Information Technology program at Marywood University, where he also serves as a System i technical adviser to the IT faculty. Kelly is an active IT consultant and a frequent speaker at Common and other national conferences.