OS/400: There Are Always Possibilities
February 9, 2004 Timothy Prickett Morgan
Some say you can’t learn from other people’s experiences, but despite my cynicism about many things, I believe we can, even if they’re not real people. I’m talking about learning from science fiction, of course, and like many nerds out there, I’ve read the classics and seen Star Wars and Star Trek. The lessons I’ve learned from these pulp novels and movies are real, and I think the people at IBM who run the iSeries could use a heavy dose of unreality to change their thinking.
In my house, we each have identified our own special “Jedi mind tricks.” My wife does all of the haggling on purchases, since she’s good at it, for instance. No one is particularly good at describing their own special powers, but my wife has told me what my Jedi powers are. One, she says, is that I may not be the smartest person in any room, but I am almost always the least inclined to do or say something stupid. My wife and I both have taken to heart Master Yoda’s simple lines from Star Wars: “Try? There is no try. There is only do or not do.” There are plenty of things we simply do not do, but when we do something, we do it. She also says that I clearly channel two simple messages to people I meet in person: I am no threat to you, and I want to help. (This may not come across in print, I admit.) It’s funny, but I learned that from my father, a big man with a quick temper but a compassionate heart, which explains why I am still alive. Wanting to help was reinforced time and again by Captain Kirk and Commander Spock, because I was a teenager who loved sci-fi.
I think you can learn a lot about business and life from watching the The Wrath of Khan, just like you could learn a lot by listening to Shakespeare at the Globe Theatre in London at the turn of the 17th century. If Kirk were a program, he would be guided by these three subroutines:
From Spock you learn that logic demands that the “needs of the many outweigh the needs of the few or the one.” But Kirk, in The Search for Spock, turns that logic on its head in order to save Spock’s life; sometimes the needs of the one do outweigh the needs of the many. We all know instinctively that both are true. Perhaps more than anything else, Star Trek in general and Spock in particular teach this very important lesson: There are always possibilities.
I know this sounds corny, but when I get up in the morning, this is what I am thinking. There is always hope, and I have very little patience for people who say there is not. People will surprise you with their generosity and good sense at the time when even a realist–forget a cynic–would say that it cannot happen, that hope is lost. You might say that my optimism button is stuck in the “on” position, and while it is not medically diagnosed as such, I am willing to concede that being optimistic, like I usually am, may be just as crazy as being manic-depressive or schizophrenic. It’s just that it is not painful, and maybe even turns out to be useful. So be it.
It is against that backdrop that I want to talk about OS/400, RPG, and the future of the half million AS/400 and iSeries servers in the world, the uncountable lines of code they run, and the hundreds of thousands of people and their companies whose livelihoods are tied to this marvelous machine, on which I have based a fair portion of my career.
When I learned about the demise of OS/400 application rehosting vendor CrossWorks a few weeks ago (see last week’s issue for more on that), I was sad that yet another option for OS/400 customers was gone. Notice the precision in my words. What I care about–and what I have always cared about as an advocate for OS/400 customers–is options. I only care about a machine called the AS/400 or a machine called the iSeries in as much as they support OS/400 and its RPG, CL, COBOL, and Java applications and a relational database management system called DB2/400. It is the skillsets and knowledge embodied in the use of OS/400 and RPG for several decades that really matters. I couldn’t care less if IBM didn’t sell another iSeries box. I am not an advocate for Big Blue, and iSeries sales and shipments only matter because they are an indicator of the health and wealth of the OS/400 ecosystem. I wouldn’t care at all if OS/400 and RPG were available on an alternative platform. In fact, as I have said in the past, I would love to see an open source version of OS/400, or Open Source/400, as it might be called. Oddly enough, the demise of CrossWorks presents interesting possibilities.
Since 1998, Microsoft has been peddling a toolset called Services for Unix for its Windows server implementations. While early versions of the software were a hodge-podge of utilities that Microsoft licensed from third parties to give Unix-style Network File System (NFS) and scripting features to Windows, so Windows machines could share data with Unix boxes, Microsoft’s acquisition of Software Systems, in September 1999, gave Windows what amounts to a Unix-like development and runtime environment. Windows Services for Unix 3.5, announced a few weeks ago at LinuxWorld in New York, was announced with a special low price designed to attract the attention of Unix and Linux shops: zero. You heard that right: You can get a Posix-compliant Unix environment for Windows that supports over 2,000 Unix APIs and that has many of the same open-source development tools that Unix and Linux gurus create programs with for free from Microsoft.
This is how you can tell that Microsoft is taking seriously the opportunity presented by the vast Unix server base, as well as the threat presented by the growing Linux base. The jump from Unix to Linux is relatively painless when compared with the jump from Unix to Windows. SFU 3.5 is about closing that gap.
The jump from OS/400 to Unix, Linux, or Windows is equally painful, even for OS/400 shops that have experience with these platforms. Customers know about and rely upon OS/400. They know how to administer OS/400 machines, and these machines behave in accordance with their expectations, which are derived from years of experience. This has been IBM’s genius as we have moved from the System/38 to the AS/400 (with a grafted-on System/36 emulation environment), then moved to PowerPC and Java and the Internet. But none of that matters as much as the fact that OS/400 shops have their own RPG, CL, COBOL, and Java applications, which they understand, and they would like to modernize them without jumping whole-heartedly to an open source toolset on Linux or a .NET toolset on Windows, and without spending big bucks on the iSeries as IBM tries to sell it to them. Let’s face it: Most of the OS/400 server base is not on the iSeries. There are reasons for that, and economics is a big one. All the talk in the world about the total cost of ownership does not mean a thing to a company that does not want to spend a lot of up-front cash on computers.
But there are always possibilities.
What if the CrossWorks technology (which is, in essence, an emulation of the key OS/400 APIs necessary to run RPG applications on Windows, Linux, or Unix platforms with databases that are not DB2/400) were given away for free? Better still, what if it were open-sourced? This could be the first step toward Open Source/400. Instead of creating a bug-for-bug clone of OS/400 and RPG, which would require years of work and heaven only knows how much money, maybe all OS/400 customers need to run their applications is an OS/400 Services for Windows, Unix, or Linux layer, and then compilers that can handle their RPG code in a native iSeries or emulated OS/400 environment. This is, in essence, what CrossWorks was trying to sell. It might have done better to give it away, which is easy to say when using hindsight 20-20 vision.
For instance, imagine a central, real iSeries supporting the database and managing the disk storage for applications. But instead of buying a much bigger and more expensive box to run application modules, a stripped-down version of Open Source/400 ran the RPG and COBOL code on Integrated xSeries Servers inside the box. An IxS coprocessor server card for the iSeries cost $1,900 at list price for a barebones configuration with a single 2 GHz Pentium 4 Xeon processor. That’s a fair price for a 32-bit X86 server. An iSeries processor running at around 1 GHz costs about $30,000 and yields about the same performance on online transaction processing benchmarks. (Yes, that is insane. There’s a reason why RISC architectures are being hammered by X86 alternatives.) Open Source/400 on the IxS could dramatically bring down the cost of using the iSeries, while preserving the rugged nature of real OS/400 for where it really matters: the database and the file system.
The funny bit is this: The whole cluster I just described would be running what is arguably OS/400 and its RPG applications. Today, IBM wants you to mix OS/400 and Windows to do low-cost hybrid computing. The problem is, there is no RPG interpreter for Windows, and even if Microsoft does one in its Common Language Runtime, heaven knows how tough the port will be from native, monolithic RPG applications to distributed, emulated RPG applications running inside .NET.
I can also imagine the possibility of an emulated puppy iSeries running such an Open Source/400 operating system on a puppy X86 or Unix server. Customers would get to choose the hardware that best fit their needs and budgets. The lack of a decent, inexpensive feeder machine is what is limiting the appeal of the iSeries to new customers. IBM sells the iSeries to about one-sixth the number of new customers a year as it used to five years ago, when Windows was just getting rolling and Unix was established in the entry server market. IBM has lost touch with small and midsized business customers to a certain degree because it does not seem to acknowledge–as I do–that these customers are price-and-feature savvy, and they grind the big X86 server vendors pushing little boxes against one another and often make a buying decision based on a difference as small as $100 on a $1,500 machine.
I can imagine Open Source/400 running on IBM’s PowerPC or Xeon blade servers even though IBM itself did not see fit to ensure that the actual OS/400 could run on the PowerPC 970 processors, even as it was creating AIX and Linux variants for the BladeCenter platform.
There are always possibilities, even for entrenched vendors who think they, rather than their customers, have total control over their platforms.
I know the top brass at Sun Microsystems who handle its Solaris and Linux products and strategies. Thankfully, they eventually realized that they made a serious mistake by trying to make Solaris a Sparc- only proposition in 2002 (when the company was in a nose-dive after the dot-com bubble burst). They killed off the X86 version of Solaris 9 at precisely the wrong moment in the economic cycle, for what seemed like perfectly logical reasons, and the uproar it caused was tremendous. That protective reaction, though understandable, was foolish. People don’t love Sun or its Sparc servers. Many of its customers actually dislike the company and have not been happy with the price/performance of its servers. In fact, I get calls from these customers, and several times in the past two years I made consulting money plotting courses for embarrassingly large Sun accounts to exit their platforms and jump to others.
What Sun’s customers have always loved is Solaris–and for a lot of the same reasons why you love OS/400. When Sun finally came to its senses, after the press, analysts, and customers hammered it for more than a year, the company realized that it should have a philosophy of putting Solaris on different kinds of iron to preserve and extend Solaris in the market. Now Sun is working like crazy, making up for lost time, to get Solaris 10 to run equally well on 64-bit Sparc, 32-bit Intel, and 64-bit Advanced Micro Devices processors. Sun is going to sell all of these different types of servers, and it is going to let customers pick the Solaris platform that is right for them. This is bold, counter-intuitive, and correct.
If the right people picked up the ball, the demise of CrossWorks could represent the first step toward an open-source OS/400-RPG environment. OS/400 needs Open Source/400 as much as Sun needs to be agnostic about server hardware and, truth be told, as much as Unix needs Linux. The simple facts are that customers want to pick their own hardware and not be locked into a particular vendor, and they don’t want to have to learn new skillsets as they jump from platform to platform. When they jump, they want their platform–or as much of it as possible–to be on the other side of the chasm. Linux is what happens when someone creates an open-source Unix API stack because none of the Unix vendors could agree on a single Unix standard.
There is no try, only do, and Linux Torvalds and his legion of open source compatriots did like crazy. And while I am thinking about it: Linux is not a creepy child being adopted by the world, IBM. Your ad agency flubbed this one. A world of generous and smart people created Linux in its own image, and it is not yours to adopt. Linux is not a boy. It’s an English army being led by a young Henry V, you are France, and that army is winning the no-win scenario because it has rewritten the rules. You belong to Linux now, because Linux has compelled you to yield–and not with a sword, but with collaboration, sweat, smarts, and a smile.
The advent of Linux does not mean that there is no room for OS/400. Quite the contrary. OS/400 might be best and most assuredly preserved in the market–and even cultivated to thrive–by setting it free as an open source product, like Linux, whether we are talking about the real OS/400 from IBM being made open-source or about a clone Open Source/400 created from the emulated OS/400 API stack created by CrossWorks.
The possibilities are not limited to the CrossWorks stack, of course. California Software has its own emulated OS/400 API stack in its Baby/iSeries program, and it acquired another OS/400 API stack that was created by Unibol, called Unibol400. California Software could shift to an open source model to get OS/400 shops to contribute to the creation of Open Source/400 and then convert itself to a services model, much as commercial Linux distributors Red Hat and SuSE have done.
There are always possibilities. OS/400, live long and prosper.