|
![]() Eric's Home Page |
|---|---|
Menu:HomeUP EDITORIALS
Links
|
Economics of Open Source SoftwareEric Lee Green
PrefaceA typical outsider, looking upon the phenomenon of Open Source software in general and Linux in particular, has difficulty seeing why it exists. Many would say that Open Source authors are being exploited for their labor, and that no venture borne of idealism can result in a permanent and ongoing solution.The thing is, they are correct. Idealism has never in the history of this planet produced much besides hot air. Yet Linux exists, and has a 17% market share in the server OS market (according to IDG Research). Yet the Apache web server exists, and has a 53% market share in the web server market (according to Netcraft's monthly surveys). This is success by any standard. How do we explain these? Only market-based economic systems consistently and reliably produce products. The collapse of the Soviet Union was the final proof of that statement. Obviously, if Linux and Apache are commercially viable products, it is because there are economic motives involved in their creation and ongoing evolution. In the remainder of this paper I attempt to identify the economic motives underlying the creation Open Source software, and then use those results to try to identify which particular market segments are most favorable for using the Open Source model to create products. Economics 101Money is not EconomicsThe first thing to discard from your head is the notion that economics is about money.That sounds like an oxymoron, perhaps. However, remember the signifier of money: its value lies solely in the fact that it can be traded for goods and services in a variety of markets. Otherwise it is so much green-colored toilet paper with pictures of dead presidents. In short, it is not the money itself, but, rather, the goods and services that it can buy, that has value. Periods of inflation where money loses its value should highlight that fact. Money is our preferred method for storing value because it is portable and can be traded for a wide variety of goods and services. But its use in a marketplace is its sole value. Economics is about MarketsThe model of economics that I use here is one based on the concept of the "market". The "market" is a handy short cut for the basis of free market economics: The supply and demand of a particular good or service. Note that the concept of a "market" does not necessarily involve the concept of "money". A market merely requires that there be a demand for a product, a supply of that product, and some medium of exchange which may be yet another good or service.A short excursion into mediums of exchange: the whole point of a market is that there is no such thing as "something for nothing". The person who possesses the supply does not give his product "for nothing" to the person who wants the item. Rather, he recieves some good or service in exchange. If we posit the fact that Open Source software exists in a free market economy, then we must also hypothesize that prominent Open Source authors such as Larry Wall and Linus Torvalds are recieving a good or service in exchange for their product. The task then becomes one of identifying that good or service. Discursion into Gift EconomiesA prominent figure in the Open Source movement has talked about the concept of the "gift economy". However, I intend to show that the underlying economic basis of Open Source software does not rely upon dubious comparisons to defunct Native American cultures or parallels with certain Polynesian cultures. The economics of Open Source software do not need any concepts other than those supplied by free market economics.
Goods and Services in Open Source SoftwareThere are a variety of goods and services which are exchanged in the Open Source community:
Advertising for Goods and ServicesLarry Wall makes a very good living from Perl consulting and Perl books. Thus it can be said that the open source program "Perl" functions as an advertisement for his services and books. This is not, by any means, the only motivation for the creation of Perl (see the section on "Filling an unfilled demand"). However, it certainly explains why Larry continues to improve and enhance Perl some years after it has long since surpassed his own personal needs.Similarly, if not for Linux, Linus Torvalds would probably be working as a systems operator somewhere in Finland for peanuts rather than pulling in a six-figure salary in Silicon Valley. Commercial companies have started using this method as free advertising for their other goods and services. For example, Digital Creations uses their "ZOPE" (Z Object Publisher Environment) to advertise their web site creation services, while Netscape Corp. uses their "Mozilla" browser as free advertising for their other goods and services (primarily their web servers and their web portal). In both cases these products are necessary to their respective corporations, but are not profitable products in themselves. Why not release them for the free publicity, debugging, and enhancements that will result? Filling an unfilled demandThis is the primary reason that Open Source projects start. It is perhaps not the primary reason why an Open Source project continues, but it explains the origins of Perl, Linux, and Apache quite well.The fact is that traditional markets do not fill all demands. Some products are felt to be uneconomical. For example, let's say that you are a venture capitalist. Somebody comes to you and says "I have an idea for a computer language. It will incorporate the best features of the Unix 'sed', 'awk', and 'sh' languages, plus a few twists of my own." You would laugh the geek out of the office because making money off of interpreters for obscure languages, especially languages based on even-more-obscure languages, is about as likely as snow in Florida in the middle of July. Many Open Source products were created to fill an unfilled market. For example, Linus Torvalds wanted an inexpensive Unix-like operating system for his 80386-based computer. And better yet if there was source code available for it. There wasn't one. So he started creating one. He found that there were hundreds of others who similarly wanted an inexpensive Unix-like operating system for the 80386 architecture. The economics involved are similar to those in an old-fashioned "barn raising", where neighbors get together to build a barn in expectation that the neighbor whose barn was raised will also help them when it's their turn to build a barn. In markets that are not filled (for example, barn raisings only occurred in areas too small to support a full-time barn builder), the individuals who demand the product often band together to construct the product that they need. A prominent Open Source advocate referred to this as "scratching one's own itch". True. If you do not have a demand for the product, you are unlikely to initiate or find others willing to participate in building the product. However, it's important to note that, most often, it is real need that results in an actual product, rather than idealism or a desire for entertainment. If there had already been an inexpensive Unix-like product with source available for a reasonable price, it is unlikely that Linus Torvalds would have ever started the Linux project, no matter how interested he was in 80386 memory management. If you need the product, yet keeping it proprietary does not give you any competitive or economic advantage, why not release it as Open Source so that others with the same needs can assist you with the product? Source CodeThis is actually a special case of filling an unfilled demand. There are people who like source code. They like to read source code with their breakfast. They debug source code on their lunch break. They hack new routines into source code after dinner time. Yet nobody is willing to sell them any source code to hack on. So they create their own.The GNU License is the most important part of the Open Source landscape for these people, because it assures them that they will always have access to what they care about -- their source code. Other people may profit by selling Linux or Apache or etc., but these people have what they care about (the source code), so they don't feel exploited. After all, nobody wants their pride and joy taken from them and hidden from public view. Microsoft programmers apparently agree, because why else would there be so many "cookies" in their software? (Free video game with creator's names in Office97, for example). Others are attached to source code for idealistic reasons. See, for example, Richard Stallman's "Free Software Foundation". However, I'll merely point out that the GNU Project was moribund until the Linux project came along (for totally non-idealistic reasons) and gave RMS a swift kick in the boot. I continue to maintain that pure idealism will not result in large quantities of commercial-quality products (note that much work on the "C" compiler was financed by various vendors in order to get a cheap "C" compiler for their respective RISC architectures). The sole exception appears to be the GNU Emacs text editor. There is another market for source code, and this is the embedded solutions market. They want to be able to strip the source code down to exactly that set of functions that they need. Commercial markets often will fill this need -- for a price. However, the Open Source community presents a logical source for such code, if it is of adequate quality. Lately we have come to see embedded solutions providers making contributions to the Linux kernel (such as, e.g., the MIPS port and the StrongArm port, done by Cobalt and Corel respectively). Debugging and Enhancement ServicesAs mentioned earlier, if the product is not commercially viable yet is necessary for your business, why not release it into the Open Source community so that others with similar needs can help you enhance and debug the product?This can be possibly called the "Mozilla Model". Netscape can no longer make money selling browsers, due to Microsoft's bundling of IE with the Windows OS. Thus why not collaborate with those others who are interested in a high-quality browser for their own purposes? Larry Wall, however, is probably the person who is the most picture-perfect example of someone who has benefited from the debugging and enhancement services of the Open Source community. I remember the original Perl 1.0, which was basically a mash of sed, awk, and sh. I remember Larry's original announcement -- that he had written Perl because he was a lazy sysadmin and wanted something easier than "C" to write reports that were too complex for /bin/sh scripts. Keeping Perl proprietary to his employer would have given his employer exactly zilch (zero) benefit. Releasing it meant that others could help Larry do other reports even more easily. Thus releasing a tool into the Open Source realm is the laziest thing that a lazy sysadmin can do. (Lest you think I am denegrating Larry Wall, I merely point out that almost all advancements in technology are a result of lazy people doing things to make their jobs easier... laziness is a virtue, not the vice that the Puritans condemned!).
PrestigeThis is the foundation of the "gift economy" arguments for Open Source software. That is, that people create Open Source software for the coin of prestige.This is probably the weakest of all arguments. It explains why Open Source software is higher in quality than commercial software (Linus Torvalds once explained, when asked why he had not put a particular patch into the kernel, that said patch was a hack and a kludge and he wasn't putting that kind of stuff into his kernel because it'd make him look like a dunce), but it does not in itself explain why someone would start an Open Source project or bring it to a successful conclusion. It is likely that prestige and its associated argument of "free advertising" (i.e., advertising your job skills and abilities, or your company's services) are secondary to the primary reason that Open Source software exists: there is a market not being filled by commercial providers, and the most economic way to fill that market is for the potential customers to join together and build the solution. In the case of Open Source, the market is often the market for source code -- very few commercial providers are willing to sell source code for a reasonable price. In other cases, there is no obvious commercial market for the product (e.g. the Mozilla browser), and thus no gain from keeping it proprietary and much gain (in the form of prestige, free advertising, and free programming and debugging services) from opening the source code. The Economic Case for Open SourceI will categorize the economic case for creating Open Source as consisting of two categories:
Unprofitable marketsThis is the realm of Mozilla, Perl, and many other tools of that nature. In most cases these are tools needed for a particular purpose, but which (at least at the time of their creation) have no competitive value or profit-making value.When a company has tools which have no competitive or profit-making value, releasing them as Open Source can produce prestige, free advertising, and free debugging and programming services for the company. In addition, it can create new markets for consulting services, contract services, technical support, etc. for the product. Cygnus Consulting, Larry Wall, and many others demonstrate that consulting and services are nothing to sneeze at -- they can produce a hefty cash flow even though the product itself is being given away for free. Think of it as giving away razors in order to sell razorblades. The market for affordable source code.As I mentioned earlier, there are a number of people who like source code -- who like reading it, modifying it, and probably even sleeping with it. For these people, it is not enough that a binary version of a program is available for a reasonable price -- they must have a source code version, or they are not happy.In all likelihood this market is in the low six figures, not large enough for most companies to bother with (though some have -- for example, Faircom has sold a fair number of their "Ctree" packages, which sell well despite being technically inferior to competitors such as Raima because they come with complete source code). However, these people are quite competent at programming, and quite capable of joining together and filling their own market. Which they are doing, usually using the GNU Public License to insure that they maintain full access to the source code, forever. I will note that, though this market is small, the product which they create may have a much larger market. For example, perhaps 10,000 programmers have a hand in the programs included on a Red Hat Linux CD-ROM. These programs were created for their own use because they wanted full source code to their operating system and the only way to do so was to write their own. Yet Red Hat has sold more than 500,000 copies of Red Hat Linux in the last year alone. This brings up the "exploitation" argument again: i.e., that Red Hat is profiting from their creation. Note, however, that they have what they want -- the source code to their programs. The GNU Public License insures that they still have that even after Red Hat Software sells it to someone who will never, ever look at the source code to a single program on the entire CD-ROM. ConclusionsIt should be obvious by now that Open Source is not going to replace commercial software. Where there is a large market, especially a large technically-unsophisticated market, it will always be more profitable to sell your product rather than give it away.However, there are real reasons to use the Open Source model where the market is not large enough to sustain a product. It allows you to continue developing a product critical to your business despite the fact that you cannot make a profit off of the product itself. Perl, Mozilla, Apache, and other products of that nature are a prime example of this process in action. Furthermore, it serves as free advertising for your real business (the reason you created the product in the first place). It can also be quite profitable to build a service and consulting business around an Open Source product (as Larry Wall and Randal Schwartz prove). Linux packagers such as Red Hat Software bring up an additional possibility: taking the products created by the source code mavens for their own use, and packaging them so that they can be used by the general public. This may seem odd, taking a product intended for one market (source code geeks) and selling it into another market (the server operating system market). However, Red Hat Software proves that it can be a quite profitable business. Because of the personal prestige factors involved in creating Open Source software the authors of Open Source software generally create software which is more reliable than commercial vendors, and because they have already been paid in the only coin they're interested (i.e., source code from other source code mavens), the product can be sold for far less than commercial alternatives. To summarize:
Hopefully this excursion into the economics of Open Source software has been informative. If you have comments, enhancements, etc. you can reach me at eric@badtux.org. My home page is http://www.badtux.org/home/eric. |
Created with PHP 4. Last modified Fri, 06 Dec 2002 10:27:39 -0500.