For a long time, I believed that I understood what Free and open software meant. For many open source enthusiasts like me, they mean the same thing. I have attended numerous FOSS conferences and none has tried to draw any distinction between the two. Open source software is also commonly abbreviated as FOSS (Free and Open source software) which implies Free software == Open software. (Free here, of-course does not include “free-of-cost” software or Freeware, which are not-necessarily open)
It was only recently that I became aware of the differences between the Free software movement and the Open Source movement. More startling discovery was the differences in philosophies of Richard Stallman (popularly called RMS) and Linus Torvalds. Stallman is undoubtedly the pioneer of the Free Software movement, which he started with the GNU project in 1983, and that was long before Linus thought of creating Linux in 1991. According to Stallman, the Linux project is largely misunderstood as the starting point of the free software movement and the folks associated are credited disproportionately compared to their contribution. It is quite true that the Linux project is considered the ultimate champion of the FOSS movement. It is also quite true that the GNU folks have not been given the credit that they deserve for their critical contribution; without which Linux would not have seen the light of the day.
Stallman explains his philosophy of free software with four essential freedom that any software should offer
- Freedom to run the program as you wish
- Freedom to study the source code and change it
- Freedom to copy and distribute the software
- Freedom to copy and distribute the modified software
Stallman insists the Linux operating system should be called GNU/Linux. This is because GNU was the original project started with the aim of creating a free operating system and later merged with Linux since the only thing it lacked was a kernel; the gap was fulfilled by Linux. According to Stallman, the Torvalds camp has a more liberal approach to the use of proprietary software and they do not consider the issue at a moral level.
I highly admire Stallman for his contributions to the world. But indeed, I think his philosophies are radical and extreme. On the death of Steve Jobs, Stallman said that he was happy for the occasion. For all the differences of philosophies that Jobs and Stallman had, that statement was a bit over the edge.
Finally, according to Stallman, free software doesn’t have to be free in the monetary sense of the term. It means it is fine if you have to pay for a copy of the software. Hmmm…. interesting.
So, what does all this mean anyway? Honestly I don’t understand Stallman’s idea of freedom and how is it any different from the Linux camp. But lets give it a try.
All the four freedoms enumerated by Stallman, are embodied in GPL. He carefully drafted the GPL to reflect them. Thus every GPL software, including Linux, should be no different from Stallman’s definition of free software. Stallman is fine if you have to pay for a copy of the software. So free software doesn’t actually have to be free. So how is it any different from proprietary software? Perhaps because you have access to source code. The next logical question is what happens when you modify the source code. Freedom no. 4 in the list allows you distribute copies of the modified code. That statement is actually misleading because its not so much of a freedom but rather an obligation that you have to fulfill if you were to comply with GPL. It stems from Freedom no. 2 that all software should be available with the source code. That doesn’t sound much of a freedom. [Note: Lesser GPL (LGPL) allows you keep your modification to the source proprietary]
I am aware that some companies have indeed used evil means of locking up users in digital handcuffs in the past or are still using, including Apple and Microsoft. There was a furor about some features of iPhone which tracked the user location. It is definitely a concern and one can only wonder what other user information could Apple access with the iPhone. This is the moral aspect of using proprietary software that Stallman talks about and is indeed a valid argument.
I don’t even want to analyse the economic implications of having to pay for a copy of FOSS software. I am not aware of the existence of any software which is licensed under GPL, for which you have to pay.
This is what I firmly believe – Having access to the source code and being able to contribute back to the community helps in developing great quality software. It is definitely a contribution to the betterment of humanity. Period. Those are pretty much all the implication of FOSS. There is no reason why all the software ever written on the planet should be free or open and there is no reason why a person should not try to reap the benefits of his Intellectual property. Moral issues relating to individual privacy and freedom are to be dealt separately and viewed separately.