Today I was chatting with my friend about programming. Somehow we started to discuss about the text editor, Vim.
And speaking of Vim, it’s unavoidable mentioning Emacs for the comparison.
They are both great open source text editors for programmers. The war of “Vim versus Emacs” was a long lasting debate.
I picked up and showed him a book written by Richard Stallman. For those who don’t know, he is the founder of GNU Project and Free Software Foundation. GNU Project is a very ambitious and mass-collaboration project.
There are a lot of versions of Emacs. The most popular one is GNU Emacs, which was created by Richard Stallman for GNU Project.
While I mentioned Richard Stallman is very against of calling Free Software as open source, I had seen the question coming: Any difference between Free Software and Open Source?
I stammered.
I did try my best to answer this question. This was not the first time I was asked about this question. Nor do I believe it’ll be the last time.
Free as in Freedom
Free, as the English adjective, does not distinguish between “free of charge” and “liberty”. Free Software is about Freedom. It’s about software giving users certain freedoms.
How about “free of charge”? Do I need to pay for Free Software? Although a Free Software could be a software you can get for zero price, it’s not always necessary be like that.
“Free software” means software that respects users’ freedom and community. Roughly, it means that the users have the freedom to run, copy, distribute, study, change and improve the software. Thus, “free software” is a matter of liberty, not price. To understand the concept, you should think of “free” as in “free speech,” not as in “free beer”. We sometimes call it “libre software,” borrowing the French or Spanish word for “free” as in freedom, to show we do not mean the software is gratis.
Still confusing? You are not alone.
Open Source
I feel like “Open Source” is much more used nowadays.
Probably there is a good reason for that: People don’t need to think about what you meant was “free of charge” or “freedom”.
“Open Source”, from its name, indicates the source codes are open to access.
Very straightforward.
Of course, the definition of open source is more than that. You could read it here if you’re interested.
And even Richard Stallman admitted that:
The terms “free software” and “open source” stand for almost the same range of programs.
However, he differentiated Free Software from Open Source:
The free software movement campaigns for freedom for the users of computing; it is a movement for freedom and justice. By contrast, the open source idea values mainly practical advantage and does not campaign for principles.
Conclusion
The more I answered what is Free Software, the more I questioned the term “Free Software” is well-suited.
I respect Richard Stallman and Free Software Foundation. We all benefitted from their contributions to the software world.
If you want to emphasize the user’s freedom, then “Free Software” is certainly a good choice for you to phrase.
From my personal experience, non-programmers tend to grasp the idea of “open source” better than “Free Software”.
It’s just less confusion.