The Software Freedom Law Center is a public interest law firm that helps free software organizations with legal issues. They’ve got an excellent podcast that dives into detail about the legal issues faced by free software projects. I particularly enjoyed show 0x14 (yes, they number their shows in hex), which talks about free software business models.
There’s a common misperception (shared by some libertarians, unfortunately) that free software is hostile to business and markets. I think this misperception flows from a deeper misunderstanding of how the software industry works. When the typical consumer thinks about the software industry, they think about Microsoft and the shrink-wrapped boxes at Best Buy. Obviously, having copies of your software available for free limits the potential of “sell copies” as a business model. Fortunately for the free software movement, most of the software industry does not work like this. For example, I worked for a firm this summer makes money producing custom software for clients’ websites. Google lets customers use its software for free and sells advertising. Red Hat develops software and uses it to sell services and support. Still other firms write custom “embedded” software: software that comes pre-loaded on hardware products like cars or medical equipment. All of these businesses are totally compatible with a free software licensing, and indeed, free software is becoming increasingly common in all these businesses. The project I worked on this summer, for example, is built with PHP and MySQL, both of which are free software.
In the podcast, Bradley Kuhn makes the point that that the “free” in free software means “free as in market” in addition to “free as in speech” and “free as in beer.” The point of “copyleft” licenses like the GPL is to prevent people from restricting end-users’ freedom to modify and redistribute the software, it’s not to prevent anyone from making a profit in the process.There’s also an interesting discussion of the relationship between the structure of a free software community and its long-run viability. Some free software communities are built around a single organization. The MySQL community (at least before the Sun acquisition) is a good example: A lot of MySQL development work is done by MySQL AB, the company. Other free software projects, including Linux and Apache, are collaborations among dozens of firms, large and small. Kuhn makes the point that free software communities of the latter type tend to be healthier in the long run. We’re seeing the problem MySQL now: Oracle’s imminent acquisition of Sun (which previously acquired MySQL) raises the distinct possibility that Oracle might do a half-hearted job of developing a product that has the potential to cannibalize its more lucrative proprietary database products. And because MySQL development has traditionally been so centralized, there may not be a ton of other companies ready to take up the slack. Eventually, there would surely be a fork of the MySQL codebase and a continuation of the project outside of Oracle. But problems of this sort aren’t even possible in a decentralized open source community like Apache. Buying and shutting down any one firm in the Apache community would have a negligible effect on the health of the overall project.
One way to look at this is that MySQL lies in the middle of a spectrume of sftware development strategies that range from highly decentralized projects like Apache to highly centralized efforts like Windows Vista. The general trend over the last 20 years has been toward the decentralized, bottom-up end of this spectrum. This shouldn’t surprise us. As we’ve seen in the newspaper business, large, hierarchical organizations tend to have systematic inefficiencies relative to groups of smaller, decentralized firms. The proprietary business model requires software products to be centrally planned by a single firm, so it has to be profitable enough to overcome these diseconomies of scale. Free software can be (although it isn’t always) developed in a decentralized fashion. Freed of the costs and complexities of top-down planning, decentralized free software communities have a tendency to be both more nimble and more frugal than proprietary firms.
This isn’t to say, of course that proprietary software business models can never work. Obviously they can and do on a regular basis. It’s not even to say that free software will generally be more profitable. Indeed, because free software markets tend to be more competitive, the opposite is generally true: Microsoft can charge a lot more for Windows than Red Hat can charge for its version of Linux. But it’s important to distinguish the fate of any individual participant in a bottom-up system with the health of the system as a whole. Like other bottom-up systems, a free software community is robust to the failure of any one firm. In contrast, if Microsoft screws up the next version of Windows, customers are at Microsoft’s mercy. This is good for Microsoft, but it’s bad for Microsoft’s customers. And as a consequence, I suspect the long-term trend will be continued growth of decentralized—which is to say free—software communities at the expense of proprietary software firms.