Believe it or not, IBM used to ship source code with the software distribution tapes. But about 25 years ago, over strenuous objections from the user base, IBM made the system Object Code Only (OCO). Mainframe users have adjusted to OCO over the years, but given the success of Linux and other open source software, it may be time for IBM to review the policy and consider open source on the mainframe.
The state of open source in IT
Numbers are hard to come by and even harder to verify, but anecdotally it seems that shops are getting over their initial uneasiness toward open source and seizing its advantages at all software layers. Linux, the proverbial camel's nose in the tent, has dragged along with it open source database management systems, desktops and application servers such as JBoss. Tagging along are open source applications, which can be attractive alternatives to expensive, back-office software for functions like human resources and CRM.
Some of the allure of open source is easy to understand. First, of course, is cost. Even while using a distributor such as Red Hat or SUSE Linux, a company can achieve astounding savings. Other advantages, such user-driven innovation and shared infrastructure, don't look quite as good on the bottom line but are definite perks.
For smaller platforms, the roadmap to the bright future is clear: Run anything you can on commodity servers with open source software. For lower-utilization servers, use virtualization strategies to occupy any available white space on cheap hardware.
The proprietary mainframe
The future of open source on mainframes is not as clear, as it remains about as proprietary as a platform can get. Mainframe hardware is very specialized and optimized to perform in a mixed environment of online transactions and batch jobs. Some may dispute the closedness of mainframe software by, for instance, pointing to CICS' extensive application programming interface, control of system internals and support of open standards. However, despite all the commands and exits, CICS and almost all mainframe software is still a black box we can only hope will act according to our wishes.
Heretofore, IBM and its customers have been able to derive a lot of value out of this proprietary platform. But will these strategies always work? Today one can argue that the mainframe's centralized structure rewards data centers with efficient power usage, greater security and cheaper system management. But this equation in comparison with smaller platforms will change as the price of hardware drops and open source slashes the cost of software. IBM can continue to argue that there are hidden costs in moving off of the mainframe onto x86 Linux platforms, but the migration will still be attractive if, in the final analysis, software cost becomes the tiebreaker.
Open sourcing the mainframe
The biggest stakeholder in this decision is, of course, IBM. IBM has decades of sweat invested in what is arguably the most stable, most secure and highest performing OS in the world. The same is true for other world-class components, such as CICS, Information Management System and DB2. Why would any corporation relinquish control of this marvelous software?
It might help if we examine what IBM would get.
- User-driven innovation. While IBM developers have done a fine job enhancing software to open standards, it's my own perception that, at the same time, they're a little out of touch. When long-awaited enhancements come, they're often not what was needed, awkward to use or incomplete. Exacerbating the problem are drawn-out change request processes through marketing representatives or user groups like Share. Instead, why not let customers write their own enhancements and incorporate the good ones into the base code?
- Outsourced maintenance. Often systems programmers have the skills to debug and repair system problems if they only had the source code to do so. Why not take advantage of these skills and let customers see what's going on so they can create their own fixes and spend less time on the support website?
- Porting to other hardware. This is really "blue sky," but stick with me. If someone were to write a compiler that could turn Assembler and PL/S (Programming Language/Systems, in which major parts of the OS are written) into x86 language, there might be a chance of z/OS running on commodity hardware. I realize it's nowhere near that simple, but an intelligent abstraction of the hardware level might make it possible.
- Competitiveness. At a stroke, IBM database and system utilities instantly become more attractive.
- Coolness. No one admits it, but sexiness and coolness influence many architectural decisions. Maybe the mainframe can get some of that cachet by letting bit-heads from the other systems get a peek under the hood. After all, a mainframe is a complex and fascinating machine that would interest anyone who likes a roll-your-own environment.
Letting go of the software that has been so profitable for IBM for more than 40 years cannot be easy. But, as Red Hat and other Linux distributors have demonstrated, relinquishing control does not mean losing money. IBM will certainly be the distributor of choice for many years, especially with its reputation for support. The cheaper software may also attract more companies to mainframe hardware, of which IBM has sole control. However, a move to open source the mainframe may have to happen out of necessity sooner or later, or IBM will find itself in complete control of a moribund platform.
ABOUT THE AUTHOR: For 24 years, Robert Crawford has worked off and on as a CICS systems programmer. He is experienced in debugging and tuning applications and has written in COBOL, Assembler and C++ using VSAM, DLI and DB2.
What did you think of this feature? Write to SearchDataCenter.com's Matt Stansberry about your data center concerns at firstname.lastname@example.org.