The pros and cons of open source software
71
Philosophy and practice
To be able to understand pros and cons of Open Source (or 'Free') Software, one must first understand the philosophy in which it is rooted.
Suppose for a moment you're a student reading a physics book which explains the Theory of Relativity. Now, you are able to read the book, use the notorious formula E=mc^2 to solve all of your exercises and, if you're a particularly brilliant student, why not, even start from there to come up with a new formula leading to a new scientific discovery. In other words, the scientific knowledge is in public domain, free for everybody to use, modify and redistribute - you don't have to pay a royalty to Einstein's nephew every time you solve a difficult physics exercise or you daydream about time-space travel.
The world of technology, on the other hand, is largely dominated by patents, which makes it a 'close' and competitive model, in which knowledge is rarely shared without money involved. Companies strive to patent their latest technology innovation and maximize their capitalization, as one might expect. Unluckily, though, this leads to a series of consequences: the license with which a patented item is distributed to the public often prohibits reverse-engineering and, in general, any attempt at understanding the mechanism through which that piece of technology works.
In this sense, the Open Source Software may be regarded as an attempt at making the world of technology much more similar to that of science, particularly in the field of computer software. Every software distributed with an open source license grants to everybody the rights to disassemble, rebuild, manipulate and personalize the product, making it possible to understand its inner mechanisms and adapt the product to the user's needs.
Many of the Open Source licenses (particularly the GPL, the most common among those) state that the source code of the distributed program must be available for download in order to accomplish these objectives of versatility and reusability. This, unluckily, is commonly considered as often having an impact on the fields in which the open software model can be applied.
For instance, using open source software for network security purposes is generally discouraged, as the fact that the entire source code is available for free download would usually make it much easier for a malicious user to find an exploitable bug in the program in order to bypass all protections - whereas using the proprietary software in this case tends to make things difficult for the potential attacker, as he would have to reverse-engineer a large part of the program in order to achieve the same result.
However, apart from this and a few other applications, one may say that the Open Source Software (OSS) model presents numerous advantages which are sometimes invaluable and totally absent from the proprietary software model. Moreover, mostly due to the philosophy underlying OSS, the availability of the source code will often attract interested developers willing to review and submit frequent patches and bugfixes on a voluntary basis to ensure the quality of the project remains high.
PrintShare it! — Rate it: up down flag this hub








