Free vs open: What's the difference?
23rd Apr 2010 | 10:00
Paul Hudson explores the gap between the philosophies
Combining free and open
Language is a tricky thing. Our word 'free' exists in old English, and means something not in bondage or under control – a freed slave, free speech.
And by 1382 John Wycliffe's English translation of the Bible says: "forsoth where is the spirit of God, there is liberte", showing that we had spotted and stolen 'liber' from Latin, also meaning 'without restraint'.
So, we certainly weren't short of words to describe freedom, and yet things were destined to go wrong.
In the 16th century 'free of cost' collapsed into 'free', making 'free' do the job of two rather important meanings: without cost, and without restraint. So when we talk about free software, what do we mean?
The phrase 'Free Software' is used by the Free Software Foundation (FSF) in its older meaning: it's software that comes with no restrictions for you to modify it and distribute it.
The FSF defines these freedoms as: the freedom to run the program for any purpose, commercial or otherwise; the freedom to study how the program works, and change it to make it do something else the freedom to redistribute copies; the freedom to improve the program, and release your improvements.
That much makes sense: we share our software and everyone benefits. But it does confuse many people because you are quite within your rights to sell that software if you want it – Free Software can have a non-free price tag.
This is made even more confusing because many people are familiar with the term 'freeware', which means pretty much exactly the opposite of Free Software – you can't modify it or charge for it!
In 1998, with the hope of clearing up this confusion, a group of well-known hackers gathered in Palo Alto, California, to create a new term to describe the release of the Netscape Navigator code.
That term – Open Source – was supposed to remove the ambiguities of 'Free Software', but it actually made things worse: the FSF insists that Open Source does more harm than good by focusing on the mere availability source code rather than important user freedoms.
This makes a great deal of sense: I program for Linux, and I'm not content with simply being able to read your source – if it doesn't come with the four freedoms, I don't want it.
Combining the two
One ugly, but workable, solution is to put the names together. So, Free Software plus Open Source software becomes FOSS: Free/Open Source Software. Other people clarify 'Free' to mean 'liberty' by using the French word 'libre', making Free/Libre/Open Source software, or FLOSS.
Sadly, no one knows what 'FLOSS' actually means, so you end up not just explaining the acronym, but also explaining what Free Software and Open Source is, as well as translating a word from a foreign language.
In short, it's not designed to solve the naming problem, just to pacify folks who spend far too much time arguing over naming. And so, the two fight on. And, sadly, fight they do: someone wrote in to our letters page last issue, saying:
"The 'open source' tag is a determined effort to relegate 'free software' to the back ranks to allow Linux to develop commercially", but I just don't think that's true. Free Software was never designed to stop commercial exploitation of software, as can be seen by the fact that Red Hat posted a revenue rise of 21% this year – that adds up to just under $200,000,000 in 2009.
However, it is true that open source does place a different emphasis on the benefits of our movement. Companies aren't always too interested in giving back to the community, but if you say: "Hey, you can make money from this," you usually get their attention. Of course, the Open Source definition comes with the same rights for modifying the source code – as the Open Source Initiative points out on its website:
"By constraining the licence to require free redistribution, we eliminate the temptation to throw away many long-term gains in order to make a few short-term sales dollars." In short, the Open Source movement takes a pragmatic view towards the freedom to modify software: it's great to have, but there are other things that average users care far more about.
One of the side effects of this is that many Linux users install closed-source drivers (such as for an Nvidia graphics card) or software (eg Adobe Flash Player), without thinking twice about freedom, and that doesn't sit well with the FSF.
"The rhetoric of open source has convinced many businesses and individuals to use, and even develop, free software, which has extended our community – but only at the superficial, practical level… it brings many people into our community, but does not teach them to defend it."
RICHARD STALLMAN:Founder of the GNU project and the FSF, is a strong defender of the four software freedoms
That's from Richard Stallman's essay, Why Open Source misses the point of Free Software, and illustrates one of the downsides of the open source movement: if you want everyone to care about our free community, then couching the core beliefs in a pragmatic message may cause more harm than good.
This is where the real fighting starts. Have you ever met someone who always puts 'GNU/' before 'Linux'? Some people – even RMS himself – actually pronounce the /, giving "Guh-noo Slash Linux." This is a simple, voiced way of saying that the GNU project and all it stands for lie at the very core of Linux.
Not everyone agrees with this. Linux Format, for example, tries to sit in the middle by saying "GNU/Linux is abbreviated to Linux throughout for brevity" – it's right there in the small print on p108. Others, trying to make light of the situation, say they pronounce it "Linux" because the "GNU/" are silent letters. And then there are the truly belligerent among us, who make a point of over-emphasising "GNU Slash" and often adding "X11 Slash Gnome Slash Gimp Slash Frozen Bubble".
No one is denying that the GNU tools are pervasive – where would be without GCC? – but equally it's true that many people just don't care. As far as most people are concerned, the GNU project makes software. Very good software. Free software. But it's still just stuff to run on their computer – they aren't too concerned about the politics behind it all.
You say tomato
Richard Stallman is personally responsible for starting GCC. He also worked on GDB, Emacs and more, as well as putting in thousands of hours encouraging, supporting and building community groups around the world. So, I'm certainly not trying to ignore the past, or what Richard stands for, but I do believe that people shouldn't have to care about software freedom in order to use Linux.
If they see it as just another OS, that's fine with me. There's room enough for everyone in our community. The BSD licence says that everyone can take and use your code, as long as they give credit. The GPL licence says that everyone can take and use your code, as long as they give credit and share their own work under the same licence. Both help us build a free and open community.
You could spend hours arguing whether the BSD licence is 'more free' than the GPL, but it wouldn't change anything – we'd just be spinning our wheels while the real enemy, closed-source software, marches on.
You say tomato
Similarly, I think it's counter-productive to take a hardline view on open source and free software. If you think everyone should respect the founding principles of the FSF, that's awesome. If you want to say GNU Slash Linux, that's fine with me.
The point is that we shouldn't try to force our opinion on other people, because doing so is divisive, destructive and ultimately self-defeating. As George Gershwin put it, whether it's tomayto or tomahto, "if we ever part, then that might break my heart."
What we don't want – in fact, what we must actively avoid – is the formation of a real division in our community caused by arguing about philosophies. Yes, there are some small differences between the open source and free software movements, but we have far more in common than separating us, and the few philosophical differences can easily be put to one side so that we can accomplish our goal of giving freedom back to end users once and for all.
Do they need to understand that freedom? Do they need to want to fight for it? I don't think so, in the same way that not every citizen has to be a soldier to defend democracy.
So, here's the deal: thousands of coders have worked together to produce GPL, LGPL, BSD, MIT, Mozilla and Apache-licenced software, and you get to use as much of it as you want regardless of whether you say open source or free software, Linux or GNU/Linux.
However, I hope you can accept that some people choose to run on top of that some non-free software, because they don't take free software as seriously as you might. If you want to tell them about why Free Software is important, that's fine too – start a website to educate people. But you need to understand that people use their computers to Get Stuff Done.
COMPIZ DESKTOP:With the right hardware and a recent kernel, you can get Compiz desktop effects without a proprietary driver
You can't make them have your principles, and neither can you force your view of the past on them – and you'd better get used to that situation, because it's not going to change.
And if you want Nvidia drivers or like the Adobe Flash plugin, go for it. It's free software – free as in freedom – and I'm not going to presume that my definition of freedom should stomp over yours.
First published in Linux Format Issue 130
Liked this? Then check out 8 of the best tiny Linux distros
Sign up for TechRadar's free Weird Week in Tech newsletter
Get the oddest tech stories of the week, plus the most popular news and reviews delivered straight to your inbox. Sign up at http://www.techradar.com/register