FOSS community, FOSS business, and the nature of allies
Off the Beat: Bruce Byfield's Blog
A couple of weeks ago, a former colleague pilloried me for mentioning the first tentative signs of commercial advertising on the desktop. According to him, disliking those signs made me an outdated purist, and -- he seemed to imply -- a hypocrite as well. At the time, I wasn't bothered by his disagreement nearly so much as I was by having words put in my mouth. But it took a post today by Aaron Seigo on branding free software as opposed to branding an individual distribution to help me articulate my response.
Probably, I should start by saying that, if I was really opposed to commercial involvement in free and open source software (FOSS), I wouldn't have worked for two of the earlier efforts to commercialize Debian.
At any rate, with 75% of Linux kernel developers being paid by corporations (and, presumably, comparable percentages on other major projects), I would have to be more near-sighted than I am to miss the significant contributions to FOSS by commercial interests. Clearly, FOSS wouldn't be anywhere close to where it is today without corporate investment. But my former colleague needed a spring board to make some points he was itching to make, so he mis-read or mis-represented me -- I'm not sure which.
However, while I acknowledge corporate contributions to FOSS, my original misgivings still stand. I think it a mistake to assume that the interests of FOSS-friendly companies and the FOSS community are identical. The two are allied, and mutually benefit from their association with each other, but their long-term goals are different and may sometimes be contradictory.
Branding indicates goals
This is the point that Aaron Seigo makes clear in his blog entry. Focusing on whether distributions customize KDE or package it pretty much the way it is delivered to them, Seigo suggests that the difference is a matter of branding. Distributions that customize KDE, Seigo writes, are focused on establishing their own brand. By contrast, those that package an undifferentiated version of KDE are promoting the general free software brand. Although distributions that develop their own brand may not intend any harm to FOSS, Seigo says that "I feel that those who push for and praise distribution differentiation through distinct visual branding are engaged in an act of sabotage against F/OSS."
If that is true for distributions, it is equally true for commercial companies. A decade ago when I was at Progeny and Stormix, I encouraged a "no penguin" policy in advertising and communication. The reason was simple: As excited as I and everyone else was to be earning a living in FOSS, our goal was not to support FOSS. Our jobs were to promote the company we were working for.
I see no reason to believe that corporate priorities have changed since then (or any reason why they should have). True, sensible companies have learned that, by being good FOSS citizens and even cooperating to a limited extent with their rivals, they can bring products to market faster, and benefit from reliable out-of-house development that costs them relatively little. In the short term, commercial interests have found that co-operating with the FOSS community worth their while.
Yet in the long term, corporations and the FOSS community have different goals. The purpose of the FOSS community is to build quality software (if you take an open source view), or a free software ecosystem (if you take a free software view). However, at the risk of stating the obvious, the goal of corporations is either to become profitable or else to increase profits.
Should these two goals conflict, you are probably asking too much if you expect corporations to choose the communal good over their own profitability. Individuals in the corporations may, but the corporation as a whole will tend to protect its profitability -- not necessarily because of any deliberate sociopathy, so much as because that is what companies are structured to do.
Why else would commercial distributions include proprietary drivers or codecs? Although the ostensible reason might be to make computing easier and more efficient for users, does the practice improve software quality or move anyone closer to complete software freedom?
You might ask the same question about about making deals with Microsoft or other opponents of FOSS. Such choices make little sense in terms of the community's long-term goals, but they make considerably more sense when you are centered on corporate profitability. You can find some examples of these choices in the FOSS community, but they are far less common in the community than in the marketplace.
Or, to be more specific, when Ubuntu played with the idea of making Yahoo! its default search engine in the Lucid release (an idea it ultimately dropped), the reason was not that Yahoo! is superior to Google, but because Canonical was hoping to sign an agreement. Similarly, permanent links to Ubuntu One or its music store in the Ubuntu menus seem to have more to do with Canonical's drive towards profitability than with any community goals.
The community, too, can have its own narrow interests, including too many dueling egos and a tendency in some quarters to lose sight of its goals. However, being a writer rather an executive these days, I have the luxury of choosing which goals I support. Except so far as the success of certain corporations success might help the entire community, I have no interest in any of them, and the sacrifices that I would make to further their goals would be small. In comparison, software quality and, even more importantly, software freedom are goals that I promote regularly, and usually daily.
Allies sometimes disagree
Nothing I have pointed out is meant to detract from the genuine service that FOSS-oriented companies have done for the community. Besides the frequent addition of code, FOSS-oriented companies have made free software better known that it ever was before their involvement. Furthermore, Canonical in particular has dragged the community collectively screaming into discussions of usability that the community had previously ignored.
Still, at least part of the time, any corporation is going to follow its prime directive. Although no one should not blame Canonical for its choices, neither should anyone make the mistake of thinking that, because it or any other company has enriched the community, that everything it does is in the best interests of the community. Sometimes, it will be looking after itself.
Naturally, the same is true of the community for businesses. One of the constant challenges for FOSS-involved businesses is managing developers whose sympathies are more with the community than the corporation. Among other things, such developers can become so concerned with software quality that they have trouble working to deadlines, or have a poor sense of what should be publicly communicated and what should not be. From their business perspective, managers of such developers have every right to worry that they are not oriented sufficiently towards business.
But that, in the end, is my whole point. The relationship between FOSS communities and businesses is a meeting of overlapping but not identical interests. Allies can and will differ, and to point that out is not simply to be partisan -- only to point out the inevitable.
Oracle Open Office and OpenOffice.OrgI am surprised you did not mention Oracle's OpenOffice.Org-based non-gratis products. Here's my take on the matter: http://whatwillweuse.com/2010/05/04/oracles-open-office/
A new study says it is possible to unmask 81% of TOR users.
Redmond joins the revolution by turning the .NET Core Runtime into a GitHub project.
Users only had 7 hours to update before the intrusions started.
It's official: The new web arrives
New flaw in an old encryption scheme leaves the experts scrambling to disable SSL 3
Lennart Poettering wants to change the way Linux developers talk to each other.
Enterprise giant frees itself from ink and home PCs (and visa versa).
Mozilla’s product think tank sinks silently into history.
TODO group will focus on open source tools in large-scale environments.