One of the most inspiring things I've witnessed in my 10-plus years in open source is its gradual embrace of pragmatism. By "pragmatism" I don't mean "capitulation," whereby open source comes to look more like the proprietary world it has sought to displace. Rather, I would suggest that the more open source has gone mainstream the more it has learned to make compromises, compromises that make it stronger, not weaker.
Let me explain.
There have long been two camps within what we typically refer to as "open-source software." The first is led by free-software advocates like Richard Stallman (who, importantly, largely eschew the term "open source" as not being sufficiently concerned with freedom), while the latter is led by no one, but was formally organized in 1998 by Tim O'Reilly, Eric Raymond, and others in Silicon Valley.
While free-software advocates provided the early backbone of the larger open-source movement, the market has been made by open-source backers. Free software makes for great headlines ("Miguel de Icaza is basically a traitor to the Free Software community"), but it is far too demanding, and of largely the wrong things, to capture mainstream interest.
To go mainstream, free software needed to become open source.
Open source also makes for great headlines ("Open Source Code Worth US$ 387 Billion"), but its real value is not in generating controversy but rather in alleviating it, turning the focus from open-source personalities to open-source code, and .
Free software demands one way. Open source encourages many ways.
To get there, open source has softened its elbows and opened its arms. Jason Perlow recently wrote on ZDNet that he, like most of the world, has to work with both open-source and proprietary software, and can't afford to dogmatically cling to one or the other. (It's a message that even Steve Ballmer begrudgingly repeats, suggesting that Microsoft must support those that "for whatever crazy reasons don't want to be on Windows, might want to be on Linux.")
For that reason, Perlow further writes:
But some people, particularly our free software leaders, are so mired in their hatred of Microsoft and proprietary systems that they will use only free and open source software for the sake of ideological reasons alone....Stallman and the FSF [Free Software Foundation], like his Cretaceous ancestors 65 million years ago, isn't evolved enough to see that his reign is about to come to an end. The open world needs interoperability, not shut itself off from other standards just because they originate from proprietary sources.
Hard-hitting, but true. Open source embraces interoperability, whereas free software takes a hard line that even Microsoft, despite its preference that customers use its complete software portfolio exclusively, won't take.
It's certainly not a line that open-source advocates should take, as it cuts against the very idea of open source: choice. Sometimes, after all, an open-source project is absolutely the wrong choice for a customer (just as sometimes a proprietary product may not be a good fit). There is no one-size-fits-all for either software approach.
Mark Shuttleworth, founder of Ubuntu and a staunch proponent of open source, with a penchant for free software, suggested as much in his LinuxCon keynote in which he argued that Linux 'desktop' developers need to be far better at meeting real customer requirements, not simply scratching their own, developer-focused "itches" (to use the Eric Raymond-inspired vernacular).
The path forward is open source, not free software. Sometimes that openness will mean embracing Microsoft in order to meet a customer's needs. After all, fierce partisanship and an unwillingness to compromise in software accomplishes is just as pointless, distasteful, and useless as it is in government.
Free software has lost. Open source has won. We're all the better for it.