In open source, we feel strongly that to really do something well, you have to get a lot of people involved.

-Linus Torvalds

You may not have noticed, but something seismic in the technology world was announced on June 4, 2018: Microsoft – the second biggest closed source software company in the world – announced the acquisition of GitHub, the world’s largest open source software platform. 

Stack41 had just completed preparing this article advocating on behalf of open source software for posting on our blog, and while Microsoft’s announcement doesn’t change our sentiments, it shows that maybe we know what we’re talking about.

Since its inception Stack41 has been an advocate for open source software, and we believe that you should be too – irrespective of the industry you are in. The main reasons in favor of open source are:

  • It has very straightforward licensing, and the people who build it usually care about the software and its community.
  • It avoids lock-in. Because the programs are free, anyone can see how they store data, and can build software to interoperate with each other.
  • It doesn’t have copy protection or run-time restrictions, so it is easy to develop for, and popular free software projects usually have great documentation.
  • Due to open documentation, free software is usually very quick to start using.

At Stack41, the hypervisor we typically utilize is KVM and the database software is usually PostgreSQL or MongoDB depending on application. The logic behind our selections on a high level revolves around cost (why pay license fees for something if there’s a free alternative that is every bit as good, if not better), and it’s in the best interest of our customers (pretty compelling and easy to justify).

Using proprietary hypervisor software or database software is counter-intuitive. These companies actually design complexity INTO their software to “protect” their intellectual property, or put another way, to make sure you have to keep on paying them for something that realistically they can get elsewhere.

From a developer’s point of view, free software allows them to build intercommunicating systems with ease. Since free software allows the developer to inspect the code, they can see exactly how it works without hidden tricks or time-consuming reverse engineering.

From a decision maker’s point of view, free software shortens the time to market because part of it has already been written, has no licensing fees, and may benefit from continuing development by the software’s community. When patents or copy protection mechanisms encumber software, it becomes inextensible and ultimately prone to atrophy. Why spend time developing for a platform that is difficult to develop for or only benefits a single organization? 

Some people are less certain about the wisdom of open source software. Some say with open source no one is directly responsible for support, which is true, but in the real world community support is quicker to respond to problems and more likely to diagnose problems faster because the software is simpler. Red Hat and CentOS have effectively created a paid support model for open source software to address this criticism. 

Others are leery of the fact that everyone can see source code, so they can exploit vulnerabilities or introduce new ones. In response, it’s pretty logical that all software is vulnerable to attack, and it is preferable to have many people working to overcome such a problem than to have to rely on the few who would have to address such a problem in closed source software. 

And finally, there is the fear of infringing intellectual property rights. Open Source licenses typically require a user to publish newly developed source code and it must remain free. In the real world there are no guarantees that any software will remain unencumbered, nor that anything will not be litigated, but open source is no different from closed source software in these respects. 

Whatever the arguments against open source, Microsoft just spent $7.5 billion on betting that the future lies in open source software development and the days of proprietary complexity are numbered.