There is currently a competition going on between two types of business model. Each have their strong advocates, supporters and enemies. Flame wars have raised the temperature of various communication channels. So called “independent" analysts have thrown in their lot with one, singing the praises of their choice, while condemning to the depths of Hades the other, regardless of the facts. In short, it’s good old fashioned fun for all and sundry.
In the red corner their is the Proprietary Model of building software. Microsoft, with its legion of followers, is a perfect example of this model in action.
In the blue corner is the Free Software Model of building software. GNU/Linux and its army of supporters the epitome of that model at work.
Putting my prejudices aside (I am a strong supporter of the free software camp), I discovered there are both advantages and disadvantages to each.
The proprietary model works like this.
Say you write and create an amazing piece of software. You then sell and license this software, keeping tabs on it, such that you are the only one to have control over it. Should you sell enough you can reduce the price to what would be a pittance to most. You can then re-invest the money you receive to make even better and more amazing pieces of software. With cross-licensing agreements with other software companies and acquisitions, you can produce yet even better software, and so it goes on, bringing cheap software to the world, fortunes to yourself and benefit to all.
The free software model is totally different. If you need a piece of software, you would scour the world searching the free software repositories for a solution that nearly, if not exactly, matches your needs. You could then obtain and, if necessary, modify that software (or get a developer to it), so it exactly fits your requirements. Then, you donate those changes and enhancements back to the community, from whom you obtained the original, improving even further the vast library of functionality already existing under this umbrella.
They are both simplifications, I know, but I think it explains the crux of the models.
Both have their disadvantages and advantages. Some of them are common to both, others are specific to one.
For instance, both models have been proven to work. MS-Windows and GNU/Linux are two examples here. Both benefit the users and the vendors, though in different ways. Also, both can be subject to piracy, with different results: proprietary software can be illegally copied, and free software can be improperly included in commercial software without making the derivative result available.
On the proprietary side...
The proprietary model provides the vendor a guaranteed income which can be used to better service their customers. And although things don’t always work out this way, they often do. A proprietary company will usually need to listen to the needs of their customers, and respond and develop accordingly. Otherwise, the revenue stream will dry up. A disadvantage of free software is that free projects often don’t have the QA processes in place, which are essential to proprietary ones. There have been occasions where I have had to dump free software in favour of proprietary due to missing or incorrectly implemented features, which the developers had no interest in fixing. Whether I continued to use the software or not was irrelevant to them. I have to say though that I am finding this situation occurring less and less often.
On the free software side...
Once free software is written, it never disappears. With proprietary software, should a software vendor stop supporting a product or go bust, the work done on that product is lost. However, with free software, it is there to stay. When Microsoft decided they were going to stop supporting Windows NT, users had the choice of either paying for an (unwanted) upgrade or continuing to use the unsupported software. When RedHat decided to stop supporting their RedHat Linux 7, 8, and 9 lines, a number of other companies appeared and offered to carry on supporting them. Spot the difference—it’s not hard! Another advantage is that free software slashes the cost of production. If I decided to produce a proprietary MS-Windows like system with an office suite, server programs (web servers and file servers), and all of the bells and whistles, it would probably cost several million dollars (or UKP—my local currency). And that’s not counting maintenance costs. However, should I decide to produce the above as a free POSIX version it would now probably cost me less than a hundred, and it would be backed by a considerably large team of people who would happily maintain the software at minimal cost to myself. Now there’s a foundation for a business model if ever I saw one.
The biggest advantage free software has is that it doesn’t tie you down to anyone. Should you lose trust in your software vendor, feel you are no longer getting good value, or think their charges are becoming unreasonable, it is far easier and cheaper to switch in a free software world than in a proprietary one.
Although, more often than not, proprietary software is still better at providing user-oriented strategies, this is becoming less and less true. The free software model has an advantage in that you can fix the problem yourself if need be. A recent example of this process is that the PostgreSQL database project had more and more people with "@sun.com" email addresses contributing to the developers’ mailing list. Sure enough, it wasn’t long before Sun announced it was supporting PostgreSQL on its enterprise Solaris solutions. Obviously Sun felt that some work was required before they could QA the product, so they contributed to it themselves. This is free software at work.
It’s all good in theory
The proprietary camp enjoy the "theory" that free software could never be as user-oriented as their own. The reasoning behind this is that programmers, rather than managers, dictate the direction of free software. Due to this there are often no user-oriented strategies behind free software products. Take Wikipedia: although not software itself, it is often used as an example of how a community cannot produce something as reliable as a proprietary alternative.
Now I come to the crux of this article. There is a BBC article which has simply blown the above out of the water. The British journal Nature has conducted a scientific experiment and discovered that to all due intents and purposes Wikipedia is as reliable as the Encyclopedia Britanica—its proprietary equivalent. This is a remarkable victory for the community, and something that must be worrying to encyclopedia producers all over the world—the ones that are still in business, that is.
The equivalent in free software terms is also emerging. More and more GNU/Linux desktops are being implemented in the enterprise. As the free software model becomes more popular, those who have a vested interest in its user-oriented aspects, are ensuring contributions are being made to tackle the problems in that area. Companies like IBM, Red Hat and Novell are creating strategies that rely on end users being able to use their systems. And they are, and have been, producing tools that enable just that.
So what’s next?
Soon the proprietary software (or encyclopedia) advantage of being able to better produce products aimed at the user will disappear, and this is fast becoming the case. Once this occurs, the main reason for choosing proprietary over free software will be gone forever. Furthermore, proprietary software advocates have also been unable to provide satisfactory responses to free software’s extremely low cost initial development and “non-tie-in" aspects. The reasons for choosing free software solutions are becoming difficult to count.
2006 is fast approaching. The performance of free software over proprietary in business during this coming year will be interesting to say the least.