What’s in a Name? Free vs. Libre vs. Open Source

The next episode of Computer Floss, a YouTube series aimed at educating about FLOSS. This one attempts to clear up the naming issues and the so-called differences between Free/Libre/Open Source. Here’s a transcript:

So far in this series, the terms “free software” and “open source” have been used somewhat synonymously, and this has been a little naughty of me, because there are actual differences in the usage of these terms, even though the extent of the difference is arguable. Let’s take a closer look.

Richard Stallman... freedom!
Richard Stallman: freedoooom!

As explained in previous videos, if you’ve been following the plot, when the father-figure of the movement, Richard Stallman, put together his ideas for freely using, changing and distributing source code, he named it “free software”. He tackled the obvious ambiguity in this name by distinguishing between “free-as-in-speech” and “free-as-in-beer” to make it clear that making money from free software is certainly permitted.

But to Stallman the moral issues were of supreme importance. To him, denying other people the right to fix, adapt or improve software themselves, and to share these changes, was immoral and anathema to progress. He argued it was divisive of society, and hindered the ability of people to learn and help others. What a nice chap.

And so, the free software movement continued. In the late 1990s, the term “open source” was coined; this was the result of the coming together of a number of programmers and businessmen, among them Eric Raymond, whose essay “The Cathedral and the Bazaar”, had kick-started the meeting and went on to become an important book about the theories behind open source. These were guys who agreed with the principles of Stallman’s Free Software Foundation, but didn’t like the name or the moralising attitudes behind it, so they set up the Open Source Initiative and infused it with a politically neutral and business-friendly image, like a marketing make-over.

Eric Raymond... A business friendly imaaaage!
Eric Raymond: Marketing savvy and a business friendly imaaaage!

Yes, there was a divergence. You might have in your mind an image of the old groups of radical left-wingers, who would form political groups, only to splinter predictably into warring factions even though they believed the same things.

Here we go again, you might think, another movement splintering. Just hurry up, collapse and let us get on with our lives. But there’s a curious difference in this case: whilst the radical left-wing hippies of yesteryear shared the same ideologies, but differed over the practicalities, free software and open source form the mirror image of this: it is their ideologies and motivations that differ, but in practice they do most things the same. The Free Software Foundation and the Open Source Initiative both do things like approve licences, support communities and provide consultations; there’s considerable overlap where they do it and sometimes they even collaborate.

And that’s why the whole thing doesn’t collapse in on itself. Let’s say you want to get involved: You could join up with the free software lot and be motivated by promoting the user’s freedoms, or you can go over to the open source bunch and espouse the pragmatic and economic benefits. You can even give both of them the finger and just concentrate on developing stuff that others can use, change and redistribute, because even then, you’re still helping everyone in the community, regardless of their persuasion.

As if I’ve not bored or confused you enough, there’s even a third label that the Europeans have come up with. The chaps on the continent use different words to describe “free as in freedom” and “free as in price” — how cunning of them — the freedom sense being translated as “libre”. Libre software then, is an unambiguous name for free software.

So, to answer the question “What’s in a Name?” — it turns out, not much. Free, Libre, Open Source: they’re just labels, and by their definitions they pretty much describe the same thing. But they can be misused or misunderstood like any other label, so rather than rely on the name, just ask those three magic questions: can I see the source? can I change the source? can I distribute the source? If you get a yes to all three, you’ve got a piece of FLOSS.

Myths and Misconceptions: What Open Source ISN’T

The Computer Floss series continues over at YouTube. Here’s what was talked about in episode 2, “Myths and Misconceptions”:

A few myths and misconceptions have arisen over the years about what free and open source software actually is. This edition of Computer Floss addresses some of these and spells out what open source isn’t.

Myth: Open Source Software Costs Nothing

This is perhaps the most common misconception concerning open source, and it’s easy to see where this mistake comes from. Firstly, of course, our old bearded friend Richard Stallman, whom you should remember as the godfather of this open source thingamajig, when he came up with the idea, decided to call his creation “free software”. He meant “free as in freedom”, but in English free can also mean “free as in cost”.

Nowhere in the definition of free or open source does it state that software must be free of charge. In fact, the GPL, the General Public Licence, the most popular licence used to cover open source code, explicitly states that you may charge any price you wish when distributing.

The second reason is the fact that much open source software is available for no cost, which might lead people to believe that all of it is free of charge. As I’ll explain a little later, that’s not the case.

Myth: Open Source is the Same as Freeware/Shareware

Freeware and shareware are actually very different from open source. Both freeware and shareware are most definitely available without cost by definition, and, as we just learnt, this is not the case with open source software. But more importantly, freeware and shareware typically come with restrictions.

A freeware program can come with conditions such as allowing personal use only, or non-commercial use; furthermore, it may even come in a binary executable form only, and as we learnt in the first edition, that’s bad.

Shareware is only available on a trial basis, enforced by making it usable for a limited number of days or by taking out some functionality. Those restrictions will only be removed when you’ve coughed up the cash.

Myth: Open Source is Communism

This, frankly bizarre myth, equates open source software with Marxism. It’s hard to know exactly what someone means when they claim this: Communism advocates a stateless, classless society based on common ownership of property and means of production — not much to do with software.

It’s no better if we try and draw analogies: A central principle of Communism, “common ownership”, runs slap bang in opposition to the way that open source respects the author’s copyright. The author of a piece of open source code is still automatically the owner of that code, it’s just that the licence applied to the code grants certain rights to the users. Furthermore, another stated aim of communism is to end capitalism, so given that open source allows you to charge any fee you like for software, it’s really a lot more compatible with a market-based economy. In fact, open source might be a bit too pro-capitalist for some of those lefties.

shouty
Ballmer: shouty

It’s hard not to conclude that this labelling of open source software as communism is an attempt at FUD by those who prefer proprietary software, such as Steve Ballmer, the head of Microsoft, seen here in an old Microsoft advert.

Look at him, he’s insane — no seriously I think he might be quite ill.

Myth: Open Source Means You Can See the Source Code

Well, close; this brief definition doesn’t do the concept any justice, but get used sometimes, so it’s worth reiterating the basic tenets: Open source software requires that any user who requests access to the source code can obtain it (with or without a fee), and also grants that user the right to change and redistribute it. This is enforced by applying a licence to the that allows all users these rights; a licence that doesn’t allow them is *not* a free or open source licence.

Myth: There is No Accountability or Support in Open Source

People, especially businesses and other organizations, like to know that someone is responsible for their software when it goes wrong. A myth has grown, perhaps because much open source software is written by volunteers and enthusiasts, that no-one owns the software and therefore there is no accountability or support.

We’ve already established that open source code does have an owner, namely the author, but that author is under no obligation to support the software after its release. However, because of the nature of open source licences, what happens in practice is that organizations come along that take existing software, and offer support or warranty on it. Non-profit foundations like Mozilla or Apache, or companies like Red Hat or even IBM, are examples of organizations that are supporting open source software right now out in the real world. And this is in addition to the endless websites and forums where people can post problems, advice and fixes — a process made very much easier with access to the source code.

What is Open Source?

Computer Floss, the video series that aims to enlighten the general audience about free/open source software. Here is a transcript of the first episode:

Welcome to Computer Floss, a series of videos all about the the open source software movement. In this series I’ll be trying to enlighten and inform you about what open source actually is, how it works, why it matters and who’s doing it.

You might have heard this phrase “open source” before, but it may not mean much to you. So you may be thinking: What is it Why should I care? What does this open source thingy matter to me?

Dilbert... a nerd.
Dilbert: nerd.

To begin to answer these questions, I’ll have to lay out one or two fundamentals. As I’m sure you’re aware, programmers are spotty nerds that sit in front of a computer typing away all day long writing programs — but what are they actually doing when they write programs?  They’re writing a collection of instructions, and these lay out exactly how a program behaves. These instructions are called source code, and what’s critical about source code is that it’s understandable by humans beings…and programmers too.

Source code is *not* understandable by a computer, so before it can be run by a computer it has to be put through a special program called a compiler and turned into what’s called machine code, that archetypal binary sequence of 1s and 0s that only a computer can make sense of.

And so, at the end of a compilation, you have two things: you have the program that’s made up of machine code, and you still have the source code you began with. It’s essential to keep that source code, because if you ever want to extend your program, or fix it when something goes wrong (as it inevitably does), you need to amend the source code and run it through the compiler again to create an updated copy of the binary software.

With these fundamentals explained, we can use them to define “open source software”, so here goes: For computer software to be “open source”, the author must permit users of the software access to the source code, and grant them the right to change and redistribute that source code according to their needs. In recent years, this concept has become important to a great many organizations, to the extent that *you* might have heard of it and now prowl the internet looking for videos that explain what the hell it is.

Now we know what it is, we should know *why* it’s important. There are many reasons why, and later videos will explain them, but this is a good opportunity to quickly dip our little toe into history and tell the story of the spiritual father-figure of open source software, bearded computer god, Richard Stallman.

Richard Stallman... bearded
Stallman: beard

Stallman was a programmer in the 1970s, and up until that point hardware was king; computer companies cared only about selling computers — and software was just a boring sideshow. But this notion died away along with disco as the 1980s set in. Gradually, software became important, and lots of companies thought that they could make more money by selling only the binary code and keeping the source code a secret, rendering it proprietary. Stallman grew increasingly frustrated by this, until everything came to ahead when his organization got a new printer. Unlike their old one, the source code that controlled this new printer was kept secret and proprietary by the supplier, so Stallman was no longer able to fix all the faults when the damned thing wouldn’t work properly. It would have been quite a simple job for Stallman to fix the faults, and even tailor it to his organizations particular needs. But when the supplier denied Stallman’s request for a copy of the source code, citing it as a trade secret, he got mad with the increasing inability to alter the software that he had paid for, and so quit, and started the GNU Project devoted to developing what he called “free software”, for which “open source software” is basically an alternative name.

The printer story is an important one because it illustrates what happens when source code is kept proprietary. Under these conditions, software essentially becomes a black box which closes off the insides to any amateur tinkering, like sealing up the engine of your car. In fact, worse than that, it welds the box shut in such a way that it’s impossible for *anyone* to get inside to make any changes whatsoever, other than the original manufacturer. When software is open source, it guarantees that you, or anyone you choose, can alter the software in whatever way you want. And that’s, well, good isn’t it? After all, even if you knew nothing about car mechanics, you’d still prefer that your engine wasn’t welded permanently
shut.

In The Beginning…

Why write a blog?

Well, why not. It seems like everyone else is.

I’ve been racking my brains to decide what I have to blog, or rather what is interesting enough to share with people. My field is computers; specifically research. I’ve been spending a few years researching free/open source software now, and I think I’ve got into the stride of things enough now to start to write about it.

In this blog, most of the time I plan my entries to fall into one of three categories:

  1. Posts about my research: I’ll share my various little findings that might be of interest to people who want to understand more about free/open source. I’ll try and make them as to understand as possible — if you want the real technical treatment, I’ll point you to the technical paper.
  2. About approaches to research: I also want to pass on the methods and tools you can use to carry out research on software. I hope this will be of interest to practitioners as well as researchers.
  3. Videos: Another little pet project of mine (called Computer Floss) is to produce a series of videos for a general audience that explains all the various facets of open source. I’ve already begun, and you can see them over at:

http://youtube.com/user/directrod

Don’t ask why my username there is directrod.