In October 1999, I wrote a column about Linux. At that time, I questioned whether Linux was really ready for the enterprise. I highlighted some of my own experiences with Linux and raised a number of issues that had to be addressed for Linux to succeed in the enterprise.
My conclusion: Linux was not yet ready. Because I had the audacity to make this statement in print, a few readers chose to roast, toast and flame me to a crisp golden brown. Well, I was right. Now that the flames have died down and the smoke has cleared away, I thought I'd revisit my original question to see what has changed in the meantime. But if you don't mind, I'll first take a moment to don my asbestos suit.
When I last wrote about Linux, its star was definitely on the rise. Red Hat had gone public with a record-shattering IPO. Two months after the column, VA Linux Systems accomplished their own record-setting IPO. How life changes. From a market point of view, Linux has gone from waxing star to plummeting meteor. Red Hat's stock price has a 52-week high of 108.62. The day of this writing it was trading at 8.44. VA Linux Systems stock has a 52-week high of 138. It is trading at 9.38. You didn't buy either at the peak, did you?
It's true that tech stocks in general have suffered horribly since last April, but part of the fall can be attributed to the hype accompanying Linux's ascendancy. Don't get me wrong, I'm not trashing Linux companies for their market performance. I wish Linux companies the best. However, the market correction to their stock prices may be a very good thing for Linux in the long run. Why would this be a good thing? It reduces the hype and forces companies to focus on those things that are required to make Linux work in the mainstream enterprise environment. As we will see, since the last column, real progress has been made in this area, but is it enough? From a market perspective, someone is going to need to make some serious money from Linux for it to gain more credibility.
The other day, I once again heard the claim that access to the source is a real benefit to the enterprise. This claim continues to puzzle me. There are certainly applications and environments where access to the source is desirable. I would claim that your typical enterprise IS environment is not one of them. Most businesses do not care what operating system their software runs on. They do not want to care. What they care about are issues such as reliability, flexibility, security and scalability. Don't waste time touting the benefits of source code to the enterprise. Your words will fall on deaf ears.
However, Linux has made progress in areas where source matters. It is a great message to people building embedded systems. I think that's one reason we see an upsurge of interest in embedded Linux. Earlier in 2000, 50 companies came together and created the Embedded Linux Consortium. In less than a year, membership has more than doubled. Individual vendors are also pushing in this direction. For example, Red Hat has created its Embedded Tech Center. They've managed to ring up a number of impressive wins. Why has Linux had such success in this area? Embedded systems is one area where Windows offers no advantages and may even be viewed as a hindrance.
A similar area where Linux continues to make progress is in the area of single-purpose systems. Home Depot is rumored to be working on a Linux-based replacement for their Windows Point Of Sale (POS) system. Lawson, the Japanese retailer, has inked a deal with IBM for 15,000 Linux servers for their stores. All of these are applications where again, Windows offers no particular advantage. Access to source code lets you customize the system as needed. Unfortunately, these areas don't fit within the mainstream of enterprise computing.
In my last column on Linux, I stated that Linux was not yet ready as an application deployment platform in the enterprise, given the types of tools and skill sets that are generally available in the enterprise. For example, many IT shops use Visual Basic for application development. These developers are left out in the cold in the Linux environment. Yes, I'm aware of VMware as a tool to run Linux and Windows on the same box, but it isn't adequate as an application deployment platform. There was progress in this area. In 2000, the Blackdown Porting Group brought Java 2 to the Linux platform. This was followed by a spurt of Java development tools running on Linux. The most significant progress in this area is Borland's Kylix. This tool makes the Delphi RAD environment available on Linux. It also takes a big step in making Delphi programs portable between Windows and Linux.
Is this progress adequate to make Linux the application deployment platform of choice in the enterprise? I don't think so. Kylix, when doing client/server programming, is designed to work in a homogeneous Linux environment. That's fine if Linux is your only environment, but most enterprises have Windows on the desktop, not Linux. Java can run on multiple operating systems, but it's not quite "write once, run everywhere." If you want to use Linux as an application platform, your best bet is to create applications with browser-based front ends. You become much less concerned with the desktop OS and more focused on typical browser compatibility issues. Will this be enough to make Linux the application platform of choice? It helps, but it's not sufficient.
One key to entering the enterprise mainstream is Total Cost of Ownership (TCO). An enterprise IT shop has a significant investment in hardware, software, people and their skills. If your IT shop is full of developers with VB skills and system administrators with MCSE certification, you can be sure that the cost of changing those skill sets will be significant. This is one reason that the claim that Linux is free rings hollow. You can download the software all day without charge. But the cost of implementing it in this type of environment will be very high. This is also an impediment to the adoption of Linux as an application platform. Unless an organization can use the tools and skills they already have and simply deploy to Linux, the cost of changing them could be high. It's not just the cost of skills and tools that's the issue, it's the cost of time as well. IT organizations are under great pressure to deliver applications to the business. Taking the time to acquire new skills and tools is often viewed as a hindrance. I do not mean to suggest that organizations should not migrate to new technology. We simply need to recognize that the business case for Linux has to be great for change to happen. Unfortunately, the business case for Linux is rarely great enough to overcome these costs. It's one reason why Linux remains on the fringe of the IT world and has yet to significantly penetrate the IT mainstream.
In other ways, Linux has made important advances in addressing enterprise issues. When I originally wrote about Linux, system management enterprise style was a serious issue. The availability of tools such as Caldera's Volution and the beta of CA's Unicenter TNG for Linux clusters helps address this issue. The recent release of the 2.4 kernel addressed other enterprise issues. For example, database administrators no longer need to fret over the 2 GB file size limit. Logical volume management is now available and the threading of the TCP/IP stack has improved. It is also more scalable on multiprocessor systems. These are all important steps. The strong support of Linux from IBM, Dell and Compaq also adds to Linux's stature. One noticeable change over time is that you don't have to sneak Linux in the back door any more. It has respectability. Unfortunately, this progress may still not be enough to achieve the dominance Linux adherents desire.
The desktop remains problematic for Linux. Quite frankly, it is missing the most ubiquitous and important desktop applicationMicrosoft Office. The most important document format for exchanging information between businesses today is not some obscurely defined EDI format, it's the MS Word document format. MS Office is pervasive on enterprise desktops. You are not likely to get firms to retrain thousands of office workers on new desktop applications that don't have significant benefits over the ones they currently use. Yes, I know you can run MS Office under Win4lin. Unfortunately, Win4lin does not support the complete desktop environment. For example, it doesn't support the Network Neighborhood. This means more work for administrators to set up Samba and other solutions to offer basic desktop functionality. More work means a poorer business case for Linux adoption.
Should your enterprise adopt Linux? I can't answer that for you, but it is clear that Linux has made important strides since my last Linux column. However, it still faces significant challenges to enter the enterprise mainstream. Some of these challenges have to do with technology, but many are based on current investments and culture. Yes, you can make use of Linux in the enterprise; however, only you can determine if the business case for Linux makes it worth the effort.
John D. Williams is a contributor to Application Development Trends. He is president of Blue Mountain Commerce, a Cary, N.C.-based consulting firm specializing in enterprise, domain and application architectures. He can be reached via e-mail at firstname.lastname@example.org.