Open-source software or OSS for short is a term that defines computer software, which is offered together with its source code. Such a package allows the users to read, modify, and re-distribute it as they wish.
OSS culture traces its roots back to the early days of computer programming. Programmers happily shared their codes and this made it possible to learn from one another and evolve their skillset.
Another goal of making software code available is to make it better, as anyone with the right skills is welcome to modify and re-distribute it. This leads to better software in the end, which often is also cheap or free.
This post looks at open-source software in general, including the early days of the movement, its achievements, and how it has impacted the software engineering industry.
The internet as we all know it is founded mainly on open-source software. So, without OSS, we would have an entirely different web.
Free and open-source software made it possible for small players to use powerful tools that were previously reserved for big corporations with deep pockets. This, in turn, helped to open the door for even more exciting developments.
Open-source software has also helped users to save about $60 billion per year, according to this 2008 report. These happy customers include everyone from individuals to small firms, internet companies, government agencies, and even financial institutions.
The History of open-source software
You can trace the open-source movement back to the earliest days of computer programming and the hacker culture of the 1970s. As early coders shared their works with fellow hackers for reasons other than corporate interests.
The first major movement, however, started in 1983 when Richard Stallman launched the GNU Project. He also founded the Free Software Foundation in 1985 to support this growing movement. This Free Software movement formed the backbone for everything from Linux to MySQL and most of the other technologies that power the web today.
Most private programmers or hackers, back then, were content with creating and distributing free software to anyone who cared. They also loathed many software corporations and their greed. So, creating a free version of any major proprietary software was a cool hack.
For these reasons, most corporations distanced themselves from the seemingly anti-capitalist Free Software Movement until February 1998. That was when Netscape released its then-popular “Netscape Communicator” web browser as free software, giving birth to Mozilla.org and Firefox. Two projects that also helped in shaping Internet history.
Lots of corporations disliked the Free Software Foundation’s approach and the term “free software”. Many of these software vendors even wanted to release part of their software as free programs, while maintaining others as proprietary projects, so there had to be an alternative.
The Open Source initiative
Bruce Perens and Eric S. Raymond, the “Cathedral and the Bazaar” author, also founded the Open Source Initiative in 1998, inspired by Netscape’s release of its browser code.
This initiative now runs the opensource.org website and it was fundamental in promoting the “open-source software” term, as well as the use of such programs.
The Open Source Initiative is seen as a more politically correct organization. And so, it has attracted more projects, developers, and corporate support over the years. These range from Linux to WordPress, Wikimedia, Mozilla, and many other large organizations.
OSI uses a 10-point definition to determine whether any software package is open source or not. And these points are as follows:
- Free Redistribution – It should not require a royalty for sale.
- Source Code – The program must include its source code.
- Derived Works – Modifications and the distribution thereof, must be allowed
- The integrity of Author’s Source Code – Self-explanatory
- No Discrimination Against Persons or Groups – Self explanatory
- No Discrimination Against Fields of Endeavor – Self-explanatory
- A License must Not Be Specific to a Product – Self-explanatory
- A License Must Not Restrict Other Software – Self-explanatory
- The License must Be Technology-neutral – Self-explanatory
Open Source vs Free Software
Depending on who you ask, you might get different definitions for open-source software. Some will say it stands for free software, while others focus on the merits or value derived from open-source development.
As it stands, you can have open-source software which is not free, as no payment is required. As well as free software, which is not open source.
The FSF’s free software movement, however, focuses on the user’s freedom with the software. This is often referred to as “freedom as in free speech”, not as in “free beer”. This should allow anyone interested to copy, modify, and distribute the software.
In general, you will often find the term “FOSS” (Free & Open Source Software) being used. This works as an umbrella definition for programs that meet the four freedoms of the FSF, and they are:
- The freedom to run the program as you like and for any purpose.
- The freedom to study how it works and modify it. This needs access to the source code.
- The freedom to redistribute the software to whoever you want to.
- The freedom to redistribute your modified version to others.
Advantages of Open-source software
The open-source approach has its advantages and disadvantages. But the former has proven to outweigh the latter over the years, prompting more people, organizations, and governments to join the movement.
Here are some of the major advantages of open-source software:
- More eyes studying and modifying the code lead to better-quality software in the end
- More testers find and report more bugs
- Open-source offers a great learning resource for new programmers
- Better security in the long term, as everyone joins in to fix issues
- Actively maintained open-source software features less bugs
- It allows continuity of projects, even after the original author retires
- Open source fights monopoly and other unethical behavior of software vendors
The disadvantages of open-source software
Open-source software also has a few disadvantages, such as:
- It can be difficult to get commercial-grade support
- Being open-source potentially creates security vulnerabilities, as hackers also study the code
- Hardware compatibility issues with unsupported systems
- Less-frequently maintained packages often feature bugs and security challenges
Open source vs Proprietary software
- Lower or no cost – Most open-source programs are either free or very fairly priced. This makes it possible for a wider range of people and businesses to afford it.
- Freedom – Open-source software offers more customization possibilities, more options for privacy, and overall more freedom to do what you like.
- Security – You will often find intentional back doors in proprietary software, which often result in security loopholes. Open-source software is easily scrutinized and all security issues eradicated.
- Better Efficiency – Open-source software is generally designed for its users and not for profit, as is the case with proprietary software. This makes it more efficient in terms of the value created.
- Start Small – Many businesses can start small using free open-source software. Then, they can upgrade to enterprise versions when they are ready.
Notable Open-Source projects
The list of open-source projects out there is vast, with more and more being developed and released. Here, however, is a list of some notable ones.
- Linux – World’s most popular open-source OS.
- LibreOffice – Productivity suite, forked from OpenOffice. Includes spreadsheet, writer, and database management.
- Mozilla Firefox – Popular and safe web browser that respects your privacy.
- Android OS – Linux-based mobile OS that has taken over the world.
- Joomla & Drupal – Content management systems
- WordPress – Most popular CMS and blogging platform
- PHP – Server-side scripting language
- Apache HTTP Server – The Internet’s most popular web server
- Asterix – Open-source PBX and VoIP platform
- Squid – Scalable caching, DNS, and web proxy platform
- CloudStack & OpenStack – Platforms for creating and managing computer clouds
Open-source software licenses
Many organizations have come up with different licenses that embody the open-source philosophy. Most projects also use these licenses, instead of coming up with an entirely new one.
You can read more about these licenses here. The most popular are:
- The GNU General Public License (GPL)
- MIT License
- Apache License
- BSD License
- Mozilla Public License
Many governments and government agencies around the world have adopted open-source software in one form or the other over the years. For some like the Bavarian city of Munich in Germany, it means cost savings in the millions of Euros. While security, propaganda, and cultural integrity are more important for others.
Here is a list of notable adoptions around the world:
- China – Ubuntu Kylin is a co-creation of Canonical and the Chinese government, designed for Chinese users and its armed forces.
- Russia – Astra Linux is developed to meet the needs of the Russian army, including “Top Secret” data management features. It is used by Gazprom, Russian Railways, and in Russian and Chinese nuclear plants.
- The Netherlands – The Internet Research and Investigation Network of the Dutch Police runs 2,200 Ubuntu workstations and has used only FOSS since 2013.
- Romania – The country’s public libraries run on IOSSPL (Integrated Open Source System for Public Libraries).
- United States – The U.S. White House moved its website to Linux servers in 2009. It is also maintained using Drupal. Plus a 2016 policy mandates a 20% open-source software policy for government projects.
- France – The French Gendarmerie national force switched to OpenOffice in 2005 and has continued its migration activities with its GendBuntu Linux, influencing other government agencies along the way.
- Germany – The City of Munich started its conversion of 15,000 machines to the Debian-based LiMux in 2013. Schwäbisch Hall also migrated 400 stations in 2002 and the federal employment office runs openSUSE Linux.
- Brazil – Brazilian state and federal agencies run mostly on open-source software.
- Italy – The Italian military started a transition of over 6,000 machines to LibreOffice in 2015.
- Peru – The Peruvian government voted in 2005 to adopt open-source software entirely.
It is plain to see how far the free software and open-source movements have come, and how much they have enriched our lives.
Still, this could be just the beginning. As more market disruptions may be on the way, powered in one way or the other, by free or open-source software.