When it comes to terminologies in software, there are always facts, and then there are perspectives (and ideologies).
Some might argue the usage of a term, but you might have a justification for using it. In some cases, you may not be using it to describe a software, but others believe that you should.
In a nutshell, some terminology use-cases can be either right or wrong, and there can also be some usage in the gray area.
That's how you might feel when it comes "Open Source" and "Source-available" software.
Confusing But Important...
At first look, both the terms sound like a software where the source-code is available, right?
So, some might even think that open-source and source-available are the same thing, where we can access/view the code of the software.
But, it gets interesting here.
While both the terms affirm transparency for any software in question, source-available is a subset of what open-source means.
Source-available: This refers to when the source-code is publicly accessible and available, irrespective of the software license, and modification or re-distribution rights.
Licenses like CC BY-NC-SA 4.0 (Creative Commons Attribution-NonCommercial-ShareAlike 4.0) restrict commercial use are considered to make the software source-available.
Open-source: This tells you that the entire software code is publicly available for review, can be forked for modifications, and can be re-distributed in any manner possible. It gives you the right for commercial use as well. The licenses that follow the true open-source definition are OSI (Open-Source Initiative)-approved.
Licenses like MIT, GPL-3.0, and Apache 2.0 are some examples of it.
So, Why Do These Exist?
You might be wondering if it would be easier or better to have an open-source software, why have a source-available software?
In short, it is necessary for some developers and companies through a business perspective.
For example, it is easy for a malicious actor to re-distribute an open-source software with malware hidden in it. Of course, unless someone examines the software, a user will have no way to know that for sure.
This would hurt the original software in terms of its trustworthiness, even if the actual product is malware-free.
Considering they made the software available with an open-source compatible license, they are not entitled to take down any malicious forks nor can restrict anyone not to attempt that.
Sure, the open-source license gives the freedom, but it could have some negative impacts like the one mentioned above.
In some cases, the software might be modified/improved and made commercially available. One might argue that having the ability to improve the software gives And, this would impact any business model that the original software had.
In contrast, when there is a software with a license incompatible with the Open-Source Initiative, the developers/company get the ability to take down malicious forks and restrict any redistribution that they do not like.
Source-available license also restricts commercial usage of the software. So, the developers (or the company), can make sure that no one else profits off their work and at the same time can use any way they want for personal use.
What is Better? Open-Source or Source-Available?
There is no clear winner here. It really depends on the perspective of developers and the users who choose to use a software with any associated license.
Some may believe that anything that deviates from the true open-source philosophy is evil. While others may not have a problem using a software that is source-available.
Personally, I understand both sides of things, and I think it would be wise to consider both advantages and drawbacks to everything. Nothing is 100% beneficial, everything has a flaw.
✅ I believe both the licenses promote transparency in software code when compared to a proprietary software.
So, we should encourage anything that utilizes any of these licenses as per their vision/plan to develop the software.
Suggested Read 📖
An Example of Source-Available Product
A recent example of a source-available product would be Anytype, the local-first, and privacy-focused Notion alternative.
You can take a peek at the source code, and understand the core of it. However, you are not allowed for any commercial usage of the code but limited to personal use.
They opt for a custom license "Any Source Available License 1.0" to protect their creation from being re-used to make money, which would hurt their business. In some cases, products utilize CC BY-NC-SA 4.0 license, like now-defunct Skiff Mail.
Yes, some find that it is wrong to use the term "open-source" in marketing materials for such products and services. Sure, it is not accurate and correct. For Anytype, they simply use the term "Open" and mention that it is source-available.
So, they are not misleading, but we have to learn the differences between the two as they also have an “open-source” video on the same page.
Not to forget, the nostalgic media player Winamp is also doing something similar:
We'll only find out if it's open-source or source-available when they make their repository available.
I believe not every netizen will immediately know the meaning of "source-available", which could be the reason some products end up using the open-source term for describing their product.
💬 What do you think about the differences between both? What would you choose and why? Let me know your thoughts in the comments down below!
More from It's FOSS...
- Support us by opting for It's FOSS Plus membership.
- Join our community forum.
- 📩 Stay updated with the latest on Linux and Open Source. Get our weekly Newsletter.