In the software industry, the concepts of free software, open source software, and free (as in freedom) software are often confused to varying degrees. Most people do not sort out the logical relationships between them, causing certain misunderstandings and leading to many wrong decisions. Among computer science students, I think there is a particular need for more thinking on these concepts. Here I throw out a brick, hoping to attract jade to get answers. What I say may be wrong, so when you find my mistakes, please give me a proof. Thank you.

(Image source: opensource.com)
First, is free software necessarily open source, and is open source software necessarily free? The answer to both is no. It should be noted that Microsoft has tolerated a lot of piracy in China, exempted major universities from piracy, and distributed free systems to a certain extent. But we’ve never heard of Microsoft’s system being open source. More importantly, whether it’s piracy or giving away, the large-scale use of free Microsoft software has caused incalculable harm to the Chinese software market in the long run. Take MS Office, which I dislike the most, for example. The forced use of Word software by major universities and publishing houses has reached an outrageous level. It can be said that the only goal of this so-called “free” is to earn more economic value. Not being open source only allows users to use more unsafe and buggy software. This poison cannot be reversed within three generations. This is the harm caused by Microsoft being “free” but not open source (in fact, it’s not free in many cases). It should also be pointed out that a lot of free software is actually robber or rogue software that kidnaps people’s freedom. We don’t need their free stuff; we need to avoid being kidnapped.
Is open source software necessarily free (as in freedom) software? The answer is again no. The subtlety lies in understanding that open source is just a form, while freedom is an opinion and attitude. You may collect a lot of source code from many websites, all so-called open source code and open source software. Whether you can use it or not, whether you can understand it or not, that’s your personal business, and the person who provided the code doesn’t care at all. For example, two events that happened this year can serve as examples: Bitcoin and OpenSSL. Bitcoin is also an open source system. Due to a system vulnerability, hackers stole bitcoins from the system, causing a company to go bankrupt directly and possibly leading to the demise of Bitcoin. OpenSSL also recently had its security compromised due to an implementation error. Will OpenSSL be kicked out of the security system framework? No, more security systems will definitely use it in the future because it is not only open source but also free, with many teams analyzing, maintaining, and improving it. Why do I give two completely different conclusions for both open source code? It’s simple: for applications, just being open source is far from enough.
Free (as in freedom) software is necessarily open source, but a free system (code) needs more: more principles, more help, more principles, more sharing. The purpose of freedom is for better efficiency, higher security, and better cross-platform capabilities. The attitude of freedom is to inspire breaking free from cages, crossing walls, and embracing open thinking, striving to share and demonstrate one’s technology and principles, rather than being complacent and stagnant about one’s so-called “technology” for small gains. Newton’s era pointed out that we should stand on the shoulders of giants, but in the internet age, we need giants to let more people stand on their shoulders for greater and more profound transcendence, or each of us ordinary individuals to use the power of sharing to foster more transcendence. Freedom, in essence, is transcendence.
Is free (as in freedom) software necessarily free (as in price)? This cannot be generalized. Every contributor to free software is of course a developer and free user of the software. But for ordinary users, it’s not so certain. What they need is not software but services. The software may be free, but services are never free. Take the current secure payment systems, for example: the service is free, but the software is not free (as in freedom). This seems backward to me because what we need is a more secure, free, open source system, and I would rather pay for that.
In conclusion, so-called free or paid are absolutely trivial amounts of money in the long-term development. From a long-term perspective, the form of open source must move towards freedom, letting valueless open source be eliminated and valuable open source get more sharing and development. Free (as in freedom) software, whether free or paid, will surely lead the healthy development of the software industry. Freedom is inevitable!
Reprinted with permission: Developer Relations »