Advantages of Open-Source Software
Author: InvisibleUser Team
Free software is king! Discover all security, support, cost and quality advantages of open-source software.
After we have defined it and explained why we use open-source software, we want to go into a bit more detail about its advantages. You can take a look at our article “Open-Source Software Overview” to get an insights into the open-source software world. Later, we will also introduce you to a few great open-source applications outside of infosec. The following advantages are not limited to IT security applications. They apply to all open-source programs.
Advantages of Open-Source Software
- Community support: Most open-source projects actively ask people to contribute to development, design, documentation or translation. That way, the community around the project grows and you will always find someone to help you out. A great example of this is Ubuntu: Virtually any question you might have has been answered in its many discussion forums.
- Volunteers: Something that makes open-source software special is the large pool of volunteer developers. It is much more likely that a million people will discover issues in the source code than a fixed team working on proprietary software. There are often bug reporting systems and you can actively observe from the source code, how the bug is fixed.
- Education: Free software is a great learning resource for beginner programmers. Changes to the source code are often documented in systems like Git, which employs issue tracking, pull requests, wikis and a commit history. Pull requests are code improvement suggestions that can be merged with the main repository. That means that a beginner can see what changed and also read the forum discussion on why it had to be optimised.
- Transparency: The coding community will find potential backdoors and data collection mechanisms in open-source code, so developers do not put them in their program. When you see the source code, you know that they cannot hide such things.
- Better quality and innovation: More developers and public bug hunting means more new ideas. Features that are not popular with the community will not be implemented in open-source projects.
- Corporate collaboration: There is better cooperation between companies working on one large open-source software project, instead of multiple individual proprietary programs
- Software customisability for businesses: Open-source software is free and after downloading it, you are the owner. In some cases, no one has the copyright to the software, so it belongs 100% to you. For companies, you have the added benefit that you can edit the source code to tweak it exactly to your needs. The ability for companies to customise their software solutions and for manufacturers to modify open-source software to their devices brings freedom, which in turn drives innovation. With only proprietary software, this would be much slower, since companies would have to build custom software from the ground up.
- Secure coding: The collaboration between many programmers leads to code that is easy to read for everyone, “clean” code. From there, it is only a small step to “secure coding”, which is programming that follows principles of security flaw prevention. That is very important, since “[…] logic flaws are consistently the primary cause of commonly exploited software vulnerabilities” (source).
- No security issues stay unnoticed: At all times, the community thoroughly searches the code for security loopholes and thereby ensures secure programs. That makes open-source software much better for privacy and security, in our opinion. Companies like Apple will tell you that their code is more secure than open-source software, because no one has access to it. That is not necessarily true. Although an attacker can easily search open-source code for exploits, it is more than likely that other people with better intentions will see it too. They will report it and the public is warned to be careful until it gets fixed. With Apple’s software, you do not have this option and the small team working on a single macOS program like Pages is less likely to notice security issues than a big community on GitHub.
- Code correctness: An example of this open-source software advantage is the Linux kernel. It contains 0.17 bugs per 1000 lines of code, while proprietary software has on average 20-30 bugs per 1000 lines of code. That is the result of years of independent review from millions of programmers.
- Cost efficiency: Most open-source programs are free of charge. That is an important advantage for companies or local authorities that would otherwise have to pay hefty licensing fees if they choose proprietary software. Microsoft Office costs around 10€ per user every month. In big enterprises this quickly adds up. The same applies to graphics and video editing software like Adobe’s Creative Cloud software suite.
- No SaaS or vendor lock-in: Software as a Service (SaaS) models have many disadvantages for users. They require monthly fees, often for each individual users. Especially companies that need specialised software (office, graphic design, etc.) face higher costs in the long-term. They need to accept unfavourable subscriptions and are dependent on the developer of the software. You are also required to sign up for a subscription, which entails sharing data with the software supplier. SaaS forces you to update frequently, which could make the programs you need to do your work unstable or change features you are used to. For some programs, one-time purchases are not even available anymore, e.g. Adobe Creative Cloud. It is therefore great to have open-source alternatives.
- No software piracy: Open-source software is free, most of the time, so no one will distribute pirated copies. Pirated copies of proprietary programs are used to infect the PCs of people that download them with malware. That means malware is not spread as easily if there is less piracy, due to open-source alternatives.
An extensive list of advantages can be found on Wikipedia. As you see, we have good reasons to recommend a lot of open-source software in this guide.
Open-Source Software Overview
Open-Source Software Trust and Transparency