closed source
Technical insights

Four questions about open source vs closed source

Author:

Let's start with the difference between open source and closed source:

Open source is software or hardware on which you are allowed to see the source code/building drawings and build freely on them. Most known examples are Wordpress, Linux, Raspberry Pi but also for example Wikipedia.

Closed source is software or hardware from which you are not allowed to see the source code/building drawings. By means of a vendor lock you are obliged to stay with the supplier. Think for example of iOS (software that runs iPhones) but also Windows is a good example.

1. Why choose for opensource?

There are several reasons to choose for open source. We have listed the most important ones for you. Nice to know is that you can't really ignore open source anymore. Practically all packages nowadays use open source frameworks and techniques.

  • No need to reinvent the wheel. Using existing open source frameworks and modules saves time and money.
  • Access the source code. Because there is insight into the source code, security leaks can be detected sooner and it is also possible to make a demerger. This sounds technical, but it comes down to the fact that a group of developers can decide to continue with certain source code, but take a completely different path.
  • No vendor lock-in. You may not be able to imagine it now, but what if your supplier goes bankrupt or gets into a disagreement with you as a customer. What do you do then? If you have opted for closed source, you are stuck with your supplier's system. Opensource software provides more flexibility. However, it should be noted that the actual flexibility depends on the amount of customization.

Recently we had a client who wanted to take all blog posts and images from a closed source CMS to an open source CMS (Neos). After a short inventory there were two options: copy/paste everything manually or request a database & file export at a high price.  

2. What is the long term continuity of Opensoftware?

In critical business processes, continuity is essential. Imagine that the software of your webshop, platform or website is no longer updated. That is unthinkable. What are the chances of this happening and what can you do if it does?

What are the chances? 

When we use open source software or modules we always look extensively at the heartbeat. The heartbeat is a combination of changes (pull requests), developers who make changes (contributors) and the age of the code. Based on the heartbeat we can reliably assess whether the source code is maintained in the longer term. Often closed source packages also make use of open source modules. Indirectly you can also deal with closed source software.

What can you do if it does happen?

Often there is an important reason that the further development stops. Think of a replacement and better module. By joining the community and exchanging the old module for a new one, continuity is ensured and you often get new functionality. But what if there is no alternative or the alternative does not meet your wishes / requirements? Then you can "fork" the module or software, which is a technical term for making a demerger and then develop it yourself or with a group of developers.

3. What about security?

Because everyone has access to the source code, even malicious parties can find errors more easily and exploit them if necessary. But how big is this risk really and how does it relate to closed-source alternatives? Everything can be hacked and encryption protocols are becoming obsolete faster and faster due to increasing computer power. Opensource initiatives therefore release patches on a monthly or weekly basis. In the descriptions of these patches you can see the potential leakage. When opting for open source it is essential to have a good SLA. With this SLA your site will be monitored and actively provided with patches. However, these vulnerabilities are often also found in closed source software. Think for example of the OV-chipkaart, the hack on Sony, etc. Security is determined by the motivation of the community or supplier to actively close holes in the code. The only advantage of open source in this respect is that it is easier to hire external parties such as HackerOne to check the security at that time.

4. Who is behind the open source software?

That is a question to which more than one answer can be given. Within the open source software you have different solutions. Below I have divided them in two:

  • Community driven. Opensource software can be community driven. In practice, this means that there is a foundation behind the software with the aim of developing and promoting the software. The foundation earns money through donations or merchandise. Community driven open source has no commercial interests and will always go for the best solution. An example of community driven open source is Neos CMS.
  • Company driven. A commercial company makes a piece of code or software open source available. There can be several reasons for this. For example, Apple Swift created open source in order to ensure a broader support base. But the entry-level model is also popular. Magento has an open source community version that can be used free of charge and is a paid version. By using the free version as a stepping stone to the paid version they have a great lead tool. Many parties do not need the extra features of the paid version and thus benefit from a reliable and stable platform. A disadvantage of this form is that the company deliberately does not or only later brings new functionality to the community version. After all, there must be an advantage to choosing the paid version.

To conclude

As you have read there are indeed a number of points to pay attention to when selecting open source software. When you do that the chances of having to deal with the above mentioned points are almost nil and you will reap the benefits of open source. Need help choosing the right open source platforms? Click on the button and we will be happy to take a look with you.

Contact us