InformIT

Open Source Versus Commercial Software: Why Proprietary Software is Here to Stay

Date: Oct 14, 2005

Return to the article

Although open source software comes with lofty (and sometime altruistic) ambitions, some developers worry that the model just doesn't present a practical plan for the future of the software industry. Shawn Shell argues that proprietary software is here to stay — for a lot of good reasons.

Over the last few years, I've read a number of articles on the open source development model for software. One of the themes of these stories is how the open source model for software development is superior to the commercial model. Open source development is, effectively, many unrelated or related developers collaboratively producing software for the free distribution, improvement, and use of anyone willing to abide by the software license—such as the GNU General Public License (GPL) or Lesser General Public License (LGPL). Commercial software, by contrast, is developed by programmers employed by one company (or in partnership with many companies) for the purpose of creating a package that will be sold and whose code is protected through various intellectual property mechanisms, such as a patent and/or a copyright, making that code inaccessible to the purchaser.

I realize that in many cases open source software is also protected by a copyright and potentially a patent; the main difference, however, is that what I'm calling "commercial" software doesn't grant the user any other rights beyond the use of the software package, whereas the typical open source software license provides broad rights to modify the code and distribute it, in whole or in part, in any way the user sees fit.

Proponents of the open source model suggest that these differences yield "better" software and encourage innovation. In some cases, that may be true. However, I still can't get past a few basic concepts about the open source model:

Developers: Starving Artists?

Call me a capitalist, but if I spend my time creating a software package that someone else will use, I expect to be compensated—especially if they use that tool to make money. The compensation may be economic or non-economic, but the choice should be mine. Taking that statement a step further, why would I give away my code and then have some commercial firm make money "supporting" my code? That doesn't make any sense. The best example of this setup is Linux. Linus Torvalds created an operating system that had all of the benefits of UNIX, but ran on relatively inexpensive hardware. That operating system is now a popular alternative to Windows. Today, numerous companies such as Red Hat and Novell sell distributions (versions) of Linux and support contracts for those distributions. Does Linus or any other developer contributing to the Linux kernel directly benefit from his labors? No. The companies selling support for his operating system are benefiting. For that matter, any commercial firm that uses the Linux operating system to run business systems is also benefiting.

Unfortunately, almost regardless of country of origin, individual developers need to make money to survive—to pay rent/mortgage, buy food, purchase goods and services, and generally make ends meet. While the license that governs a lot of open source software—the GPL—does provide for the idea of making money on "distributing software," it doesn't allow developers to receive direct compensation for the act of development. This begs the question: Does distribution deserve compensation, but development not deserve compensation?

I know what you're going to say: Plenty of companies pay developers to create code that's licensed using the GPL or LGPL. Even IBM has recently begun releasing code to the market as open source. I would counter with one question: Were they making money on that code or product before? The answer is no. IBM, which reportedly invested $1 billion in Linux development in 2001, makes almost that amount in Linux-related revenue per year. [1] However, when you dig into those numbers, what did they actually invest their money in and what are they really making money on? Did they "donate" some of that money to individuals who worked on the Linux kernel or other open source projects? No. Are they making money on developing open source software? Obviously, no. They're making money on selling hardware and services, related to supporting open source applications. Who are the individuals benefiting from the revenue generated by IBM? IBM employees—not the open source developers who produced the product. Where's the benefit to the developer who built the original application? Nowhere. In fact, according to The Economist, most developers contribute to open source projects "...to gain reputation among their peers...." [2] The same article, however, highlights that "[m]any startups that tried to make money from open source software have already gone bust...." Granted, this statement was made in 2002. Has anything really changed in two years? Somewhat. Are any big companies making significant revenue on open source software? No—at least not by producing software and distributing it for a fee. What companies are still benefiting from Linux and other open source applications? In essence, the only ones who benefit from the labor of the numerous developers who actively contribute code to open source projects are commercial companies that can spin a services engagement out of a particular application.

Supplanting the Evidence

I've seen numbers from various sources and heard the argument that open source software is overtaking commercial software. Okay, where's the evidence? I get the fact that a lot of companies and individuals are trying open source alternatives to open source software, but I wouldn't characterize open source as "overtaking" commercial software.

David Wheeler wrote a great article that was intended to encourage companies to examine open source as an alternative to commercial software. The article presented quantitative evidence, across various dimensions, to prove that open source software was gaining broad acceptance. In one section, he discussed web sites. For example, Wheeler provides numerical statistics regarding web server use. According to his research, Apache was more prevalent than IIS, including growth over the last year. His one admitted flaw is that Netcraft (the provider of the statistics) was looking at the web site, not the web server. If you look at the operating system of the server running the site, the numbers reverse—Microsoft Windows is the dominant OS, with IIS the dominant web server. In doing some of my own quick searches, I found that Netcraft didn't exactly report accurate results. For example, when searching on Ford.com, Netcraft reported that their web servers were running Linux as the server OS and IIS 5/6. Mmmmm... I don't think Microsoft supports Linux as a server operating system for IIS. Looking more closely, Netcraft was actually picking up Akami's caching servers, but it still leads me to believe that overall the numbers might not be terribly accurate.

If looking at web servers doesn't work, let's look at commercial software revenues. My working theory is that if broad support for open source software were truly growing, we would expect to see significantly slower growth among commercial software companies. Since Microsoft seems to take the brunt of the venom from the open source community (and Linux is one of the most popular open source packages), let's examine Microsoft financial performance over the last four years. As of last year, Microsoft has total sales revenue of $36.8 billion. For the last four years, they've been growing at an average rate of 12.56% (well beyond even the general technology industry level). If you compare their 2000 fiscal year revenue to their 2004 fiscal year revenue, they grew 60%. [3] Why is this important? Even with the growth of open source software and adoption of free software in some percentage of the enterprise, Microsoft is still growing at staggering rates. More specifically, one of the biggest areas of growth for open source software is Linux and Apache—two very key areas of revenue for Microsoft. This is compounded by the entrance of open source productivity tools such as OpenOffice.org, which competes with one of Microsoft's largest revenue generators, Microsoft Office.

What about other companies? Let's take Oracle as another example. Last year, Oracle grew at a 7% rate. What's interesting about Oracle is that they've publicly supported Linux and haven't grown nearly as fast as Microsoft (obviously not a supporter). Another example is Symantec, another pure commercial vendor, which grew 33% for the same year. While you can certainly find examples where commercial software companies grew at a slower rate or were less profitable, this really isn't a surprise given the state of the economy over the last four years. However, that's a long way from saying that they've been radically affected by the open source movement. In fact, it seems that the primary target for the movement is Microsoft, and Linux is the challenger. If this is true, Microsoft seems to be faring well.

Some readers may contend that I've taken a narrow view of the market, asking targeted questions where it's hard for open source to look good. I accept that challenge. Wheeler's article compares OS penetration by looking at a primarily European study that included educational institutions and found that Linux outpaced Windows. Even in 2001 (when the study was done), this wouldn't be a surprise when you narrow focus to a market that's more prone to using "free" software in countries that don't particularly care for Microsoft. I'm a capitalist and interested in profit, so I chose to look at earnings for large software companies to see whether the open source development model had become so prevalent that commercial companies were suffering; it doesn't seem that they are.

A "Free-for-all" Isn't Free for Anyone

Once you get past the individual economics and the debate as to whether there's broad support for open source in the market, my real problem with open source development, especially as it pertains to use in commercial settings, is this: Do you really want to be in the business of maintaining software written by someone else with whom you don't have a formal agreement? One could argue that many commercial vendors provide little or no support for their software and that free software doesn't deserve support. True on both accounts. However, when a piece of software written by a commercial vendor breaks, you have a vendor on the hook to correct the problem—even Microsoft writes service packs and hot fixes for its products. The GPL specifically states that free software doesn't have support and carries no warranty.

Certainly, if I were to give away something I produced, it would be "buyer beware." This model is probably fine for a lot of non-critical applications and experimentation by people who are skilled in software development. I've personally written applications for customers and consider myself a competent developer, but I don't want to have to manually mount my CD drive every time I boot my machine, and I certainly don't want to review the code looking for or fixing bugs, thanks. I have better things to do with my time. If you don't pay for support or you don't have at least a few developers on staff to help extend, repair, or maintain an open source package, there isn't a consistent and reliable model for ensuring that the software provided is fit for use as intended; it's everyone for themselves. There is no guarantee, warranty, or statement of suitability for any application whatsoever.

If you're paying for support, why not just buy a commercial package and get the support wrapped up as part of that fee? Using Dell's web site for reference, a server license for Windows Standard on a PowerEdge 2850 server is about $799, while Red Hat Linux is $899. That's certainly a difference, but not significant, and doesn't consider the impact of client access licenses (required for Microsoft, since they don't have a processor- or server-based licensing model). However, Red Hat is not on the hook for fixing flaws in the underlying Linux code; for that, you have to go chase down someone willing to fix it for you. Microsoft has demonstrated that they'll continue to support their software and provide fixes and, in some cases, upgrades to their products for free. Windows SharePoint Services is a good example of an upgrade that was provided for free, as is Windows Media Server, and their service pack program demonstrates their willingness to provide free bug fixes. With open source, what do you have? Well, you have the ability to modify the code, the "freedom" to extend it functionality, the ability to use the software free of charge—and, if you want to distribute the derivative work, you can actually charge others to get software they can download for free. What the open source software really gives you is a bunch of software components that may or may not work collectively to solve a particular business problem—no guarantees. If you don't like it or want it to work differently, fix it yourself.

Not All Great Ideas Work

I'll admit, I like the idea of open source intellectually—the free exchange of ideas, innovation through collaboration, and the prospect of being able to "fix" those annoying quirks that every software package contains. Will open source overtake commercial software development? I don't think so. Ultimately, every developer needs to be compensated for his or her work. Could developers freely give away their labor? Sure. Is any one person likely to work for free forever? No—unless he can get a job that pays him to give away his code.

Has there really been an impact on the commercial vendors because individuals or companies are flocking in droves to open source products? Admittedly. Has there been a significant impact on the commercial vendor's bottom line? Perhaps. Unfortunately, there's not a lot of data on what could have been. What we've seen is that the dominant software vendor is still growing by leaps and bounds, dragging along the others in that industry. The same people who are intrigued by the idea of open source will continue to use OpenOffice.org, Apache, and Linux. While it would be wrong (and foolish) to state unequivocally that open source doesn't have a future, I don't see the disappearance of commercial software development. The only argument I've seen in which open source could potentially be of value (assuming that I could get past the fact that people are giving their labor away for free) is in "commodity" software. An article written by John Newton, CTO of Alfresco, presented the idea that the open source software development model is for packages where the functionality has matured to where there is little innovation left; these packages don't contain revolutionary or innovative features and the software could be "cheaper" if the overhead of high-priced R&D budgets and high-cost developers were removed from the equation. [4] For truly innovative software development, where the developers have made significant advances in a new area, commercial vendors will likely continue to dominate. As Newton points out, innovative software development is expensive and the sale of commercial software is the only way to support that kind of development (Microsoft's $7 billion research and development budget is evidence).

Finally, unless you or your company can support developers to maintain open source software, let someone else do that. You're going to pay one way or another. Whether you pay for support or a license to use software, money is flowing from your checking account to someone else's. At least when I buy a commercial software package, I know who's producing the software—if something is wrong, I can pinpoint who to pursue.

References

[1] "Seven open source business strategies for competitive advantage," IT Manager's Journal, May 14, 2004.

[2] "Going Hybrid", The Economist, July 25, 2002.

[3] Microsoft 2004 Annual Report on Microsoft.com.

[4] "Why Open Source?" on Alfresco.org.

800 East 96th Street, Indianapolis, Indiana 46240