Without Free Software, Open Source Would Lose its Meaning
I'm a big fan of Matt Asay's writings about free software. He combines a keen analytical intelligence with that rare thing: long-term hands-on experience in the world of open source business. But even though I generally look forward to reading his posts, I have been rather dreading the appearance of one that I knew, one day, he would write...because it would be wrong. And now he has written it, with the self-explanatory headline: “Free software is dead. Long live open source.”
Matt states in his first paragraph what the key issue is:
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.
When I interviewed Richard Stallman in 1999 this is what he had to say on this subject:
The only reason we have a wholly free operating system is because of the movement that said we want an operating system that's wholly free, not 90 percent free.
Open source exists because of a refusal to compromise by the creators of free software programs. The “pragmatism” that Matt lauds is only an option for open source because the people who did all the hard work in creating free software refused to compromise initially.
Ten years ago, Stallman pointed out the dangers of compromise:
If you don't have freedom as a principle, you can never see a reason not to make an exception. There are constantly going to be times for one reason or another there's some practical convenience in making an exception.
Compromise is a slippery slope: once you start down it, there are no obvious places to stop. This plays right into Microsoft's hands: its current strategy is to dilute the meaning of “open source” - classic “embrace, extend, extinguish” - until it becomes just another marketing buzzword, applied routinely, and ultimately with no real value.
So what? You may ask. If, as Matt writes, the whole point is “to go mainstream”, then such blurring of the line separating free software from non-free software is surely a small price to pay to achieve that wider use of open source. It might seem so in the short term, but I don't believe it's a wise strategy in the long term, even from a purely pragmatic viewpoint.
For example, current compromises that include working with Microsoft-developed technologies for which it may hold software patents in some jurisdictions mean that ultimately open source developers are giving hostages to fortune and undermining their power of self-determination in the future.
Moreover, if the term “open source” becomes devalued, coders and users will become disillusioned, and start to desert it. The former will find the sharing increasingly asymmetric, as their contributions are taken with little given in return (something that may well happen even to open source companies using the GNU GPL if they demand that contributors cede their copyright, as most currently do). Users will similarly discover that some of these new-style “blurred” open source applications fail to deliver the promised benefits of control, customisation and cost-savings.
But, of course, the point is not “to go mainstream”: as Stallman said, it's about having “freedom as a principle.” Spreading free software is about spreading *free* software, not free *software*: software is simply the means, not the end. This is what Stallman said a decade ago:
there are more important issues of freedom – the issues of freedom that everybody's heard of are much more important than this: freedom of speech, freedom of the press, free assembly.
So why does Stallman even bother with free software?
I don't see how I could do something more important in some other area.
Stallman doggedly continues his crusade for freedom through free software because he recognises that that is where he can make the greatest contribution.
And because this is how he fights for freedom, without compromise, he is prepared to do and say things that people in the pragmatic world of open source find regrettable – shocking, even. That's partly because it inconveniently makes their job of “going mainstream” harder, and partly because of a genuine distaste for some of Stallman's actions. But what they overlook is that freedom fighters – for that is how Stallman regards himself – have always been so focussed on their larger goals that mundane matters like convenience and good manners tend to fall by the wayside.
Ultimately, the reason that free software cannot compromise is because we compromise over any freedom at our peril: there is no such thing as 50% free. As history teaches us, freedom is not won by “going mainstream”, but by small numbers of stubborn and often annoying monomaniacs that refuse to compromise until they get what they want. The wonderful thing is that we can all share the freedoms they win, whether or not we helped win them, and whether or not we can live up to their high standards of rigour.
But equally, without their obduracy, their constant striving and their eventual victories we would all lose those freedoms, because they are only temporary, and must be constantly reconquered. Specifically, without the fixed point of uncompromising free software, open source would soon mainstream itself into meaninglessness.
Webinar: 8 Signs You’re Beyond Cron
11am CDT, April 29th
Join Linux Journal and Pat Cameron, Director of Automation Technology at HelpSystems, as they discuss the eight primary advantages of moving beyond cron job scheduling. In this webinar, you’ll learn about integrating cron with an enterprise scheduler.Join us!
- New Products
- Users, Permissions and Multitenant Sites
- Not So Dynamic Updates
- March 2015 Issue of Linux Journal: High-Performance Computing
- Flexible Access Control with Squid Proxy
- Security in Three Ds: Detect, Decide and Deny
- Tighten Up SSH
- DevOps: Everything You Need to Know
- Solving ODEs on Linux
- Non-Linux FOSS: MenuMeters