Although you still find some members of the free software community who automatically view business with suspicion, for the most part the community considers the multibillion dollar open source industry as a validation of its beliefs. Business and free software are so closely intertwined that kernel developers Linus Torvalds and Andrew Morton are employed by the Linux Foundation, a non-profit consortium of corporations. But in recent months, this cooperation is showing signs of becoming strained.
Key datapoints in this trend are the growing commercialization of the One Laptop Per Child (OLPC) project, the renewed calls of Mark Shuttleworth of Canonical and Ubuntu for release synchronization among projects, and Matt Asay's worry about "free riders" who give nothing back to the community.
The reactions to these events varies considerably -- for instance, the OLPC changes are widely seen as a betrayal of the community, while Shuttleworth's and Asay's comments have simply sparked discussion. However, what these events all have in common is they reverse the assumptions that have allowed business and free software to collaborate. Rather than having business adapt to free software, they suggest a wish to have free software adapt to business.
Six months ago, the OLPC project was a poster-child for free software. The project received assistance from leading free software projects and companies, and its innovative software was widely regarded as an example of what free software could accomplish.
Even more importantly, free software's ethos of cooperation seemed well-matched to an effort that, as the Vision page on the site still says, was "an education project, not a laptop project." The fit seems so perfect that Richard M. Stallman, the founder of the Free Software Foundation, was considering switching over to an OLPC machine for his personal use.
In the last few months, though, this association has tarnished as the OLPC goal of distributing 150 million computers by the end of the year has appeared increasingly impossible. In an interview in March with BusinessWeek, OLPC founder Nicholas Negroponte is quoted as saying that, in the past, the project had operated "almost like a terrorist group" and needed to be managed "more like Microsoft." He also acknowledged that OLPC was looking for a CEO. About the same time, Negroponte announced that the project's XO computers would run a version of Windows -- news that was recently confirmed.
While these events have been happening, OLPC has lost several key members, including Mary Lou Jepson, the cofounder and CTO; Walter Bender, head of software and content, and Ivan Krstic, director of security architecture. Both Bender and Krstic indicated that their resignations were over disagreements with the directions in which OLPC was heading. Jepson specifically denied such motivations, but the denial may have been more diplomatic than anything else.
In the general free software community, these events have been greeted with outrage. You don't have to search far on the Internet to find people suggesting that OLPC has used and abandoned the community, and that it is becoming simply another laptop manufacturer.
These reactions are somewhat exaggerated. After all,the OLPC still seems focused on its educational mission, and the original free software operating system will still be available alongside Windows on the next version of the XO.
Moreover, it is hard to see how Microsoft, with its orientation to profit and ruthless business practices, is compatible with the basic idealism with which OLPC was founder and previously operated. Making accessibility to the Internet even partially connected to a commercial company is simply the wrong message.
What Negroponte seems to be saying is that, if you are going to succeed, then cutthroat capitalism is the way to go -- and to hell with free software idealism when you no longer need it.
Mark Shuttleworth and simultaneous releases
Mark Shuttleworth first raised the idea of major distributions and projects syncing their releases in a keynote at the 2007 Akademy, the summit meeting for the KDE desktop. Last week, he repeated the suggestion, adding that he would be willing to change Ubuntu's long-term releases if a majority of other distributions would agree to coordinate releases and also standardize "on a combination of kernel, compiler, toolchain, GNOME/KDE, X and OpenOffice versions." He returned to the idea in more detail a few days later.
Shuttleworth's suggestions are far removed in tone and intent from Negroponte's repudiations of free software. All the same, they suggest an emphasis on business that, while understandable in light of his efforts to commercialize Ubuntu, have little relevance to the average free software project.
If you are selling software (or services built around it), timely releases make sense. They allow for a regular product cycle, and create a sense among users that you are reliable. However, in the free software world, where "release early, release often" is a slogan, official releases are unimportant, especially when the standard desktops all include an update notifier. True, many distributions have moved to regular release cycles, but these are still flexible, and nobody is much concerned of the releases slip a few weeks or so.
By contrast, keeping to a regular release cycle causes no end of trouble in the commercial world. Frequently, they mean skimping on quality assurance, or shipping products with incomplete or missing features. A good example is the recent release of Fedora 9, which replaced the graphical software updater with one that was missing the ability to install multiple packages.
Admittedly, Shuttleworth seems to assume that such problems are unlikely to arise, since he praises the Ubuntu community's ability to combine timeliness with quality. The trouble is, if you value timeliness over quality -- which is what keeping to a regular cycle implies -- then a conflict between the two goals is sooner or later going to happen. Instead of falling into the same dilemma as commercial companies, most free software projects are better off continuing a tradition of excellence. Many projects already cooperate with each other, but acting like a pseudo-company is another matter altogether.
Matt Asay and free-riders
Another recent controversy making the rounds is Matt Assay's comments last week about the problems of so-called free riders -- people who use free software without contributing cash, code, or time to projects.
Asay acknowledges that maybe "there's nothing such projects should do about free-riders," and adds that at least free riders aren't using proprietary competitors' products and that they provide emotional reassurance to others by swelling the user base.
But, despite these efforts to consider both sides of the issue, he can't get away from the old-school idea that "someone must pay for software in order to have it written," and that free-riders are a problem "for those in the commercial open source world (and that's most everyone now)." He does not quite offer solutions, although, from his opening examples of airlines and hotels, he seems to favor some sort of loyalty program to encourage the sort of customers he wants.
Nor do Asay's assumptions stand up under scrutiny. Companies may be an important part of the free software ecosystem these days, but they hardly fill every available niche. Unpaid volunteers still swell the ranks of many free software projects, and only a handful of projects are dominated by a single company, so the ideas that code must be paid for and that all free software development is commercial seem myopic at best.
In fact, I would question the whole idea of free-riders. Traditionally, free software developers do not work to benefit others. Instead, they work to provide the tools they want. Admittedly, those paid to work on free software may not always be doing work they want, but the same remains true on a corporate scale -- by adding features to free software, a company gets its return in a product that is more attractive to customers. It also gets good will advertising by proving itself a good member of the community.
More importantly, the point of free licenses is to remove the restrictions on users as far as possible. If you start trying to differentiate between users on the basis of how much they pay back to you, then you are undermining the whole idea of free software in the first place. It is only from a traditional business perspective that such differentiation seems desirable, or even possible. If you truly understand free software, then you have to realize that an inability to control your code is part of the price of doing business.
Over the last few years, the relation between business and free software has become clearly defined. Successful collaborations between the two have been marked by companies learning new business models and new relations to customers and competitors under the influence of free software. But what these events have in common is an apparent underlying desire to see free software adapt to business -- and that's something that can't be done without free software ceasing to exist.
At the risk of pointing out the obvious, the purpose of business is profit. Companies like Red Hat have shown that free software can be a means to profit, although perhaps a reduced profit compared to what a proprietary company might realize with the same software.
But ultimately, free software isn't about profit. In the short term, it's about making quality the first priority. In the long term, it's about philosophy and political activism. These values cannot be compromised very far before they cease to exist.
That's why these separate stories, in which placing business imperatives ahead of free software's values, are reason for concern. Together they suggest a trend that's highly disturbing for those of us who see free software as a transformative force.