DEV Community

Nikhil
Nikhil

Posted on • Edited on • Originally published at unsungnovelty.org

So what is Open Source Software in a Source Available Software world?

Open Source Software(OSS) has gone through a lot of battles over the years. The recent two of 'em has been from source available software licenses and Large Language Models (LLMs). Source available predates the LLM/AI trend (in it's current form). And source available software has a renewed interest. So many think Source Available Software (SAS) is the answer. The next step for OSS software. So I thought this is a good time to define what OSS is. This is my gentle attempt to explain the what, why and how of OSS. And why it is still important for us to rally for Open Source Software.

So, what is Open Source Software?

The whole point of OSS was to provide software with 4 freedoms:

  1. To run the program
  2. To study and change the program in source code form
  3. To redistribute exact copies
  4. To distribute modified versions.

The idea was to encourage software that can be tinkered. And also be used for any purposes as long as you comply by the very few restrictions which guarantees the freedom mentioned using OSS licenses. The idea behind Open Source wasn't about capitalism vs socialism. Or big corporations vs the small guy. Or making money vs not making money. It was the rejection of proprietary software. So that the developers and the users irrespective of their size can use and make it into what they want. It was a fair system providing equal grounds for everyone involved. It doesn't always work the way it's supposed to be. But that is another problem. And it won't be solved by creating new problems.

Free as in freedom (Open Source) and free as in beer (Source available)

You might've heard of people explaining open source as free as in freedom and not free as in beer. What this means is the "free" in OSS is supposed to be about the freedom it provides to consumer. That is to learn, use, modify and distribute the software/source for any purpose (the free as in freedom). And not whether the software is free or not with respect to monetary value (free as in beer). In fact, there is no need for open source to be free from a price POV. The Free Software Foundation encourages you to make money from OSS. This is why, back in the day, people used to make copies of Ubuntu CDs and sell it for a price. It was all legal to do.

What is Source Available Software?

Source available software means the source of the software is available for you to read. But doesn't provide the freedoms of OSS software. In most cases, the restriction is about forking or redistributing. Essentially, whether it is FUTO, Bear Blog, Terraform or Liquibase, it's always about control or money.

One of the most common Source Available Software license is Business Source License. You can read more about the different types of SAS licenses here.

Why don't you like Source Available software?

I don't have a dislike for Source Available Software. I think we all have the freedom to make software in whatever form we would like. Distribute it the way we would like. I mean, it is our software after all. But I do have a problem with Source Available Software folks source washing OSS. Trying to make it look like OSS is taken advantage off and is weak to solve the problems of the present. It shows clear misunderstanding of what OSS is about. The so called perceived weakness is what makes OSS so strong. It is those "weakness" that has made it flourish.

But Big Tech is taking advantage of the small guys!!

NO. It's OSS working as it is supposed to be. This is one of the freedoms that it provides. The right to redistribute and modify. It was not taking advantage. Amazon or other companies are exercising their right to fork and redistribute. What this shows if not anything is misunderstanding of the OSS licenses. Illiteracy of it. Which is a problem we should be solving cos it is hard to understand. Companies and people using OSS have pikachu faces when they suddenly realise others can fork and redistribute the software. If that was a bother, I would tell you that you didn't want OSS in the first place. Or that you were using the wrong OSS license. Or didn't know what you are getting into. Maybe you didn't expect your software grow this big. Be in a spotlight like it eventually did. But the issue is clearly that you changed. Not OSS. Also, you can track the code smell of it all back to somebody is making money or have used my OSS in ways I don't approve off. It was the same thing with Redis, Elastic and recently with Bear blog. And that is the exact reason why OSS came about. Because proprietary softwares under End User License Agreement (EULA) lecture how a program can be used. This was one of the reasons whay OSS was created. Clearly, with SAS, we are coming back full circle.

Not to mention, it works both ways. You can fork any Amazon's OSS and spin up a SaaS as well. This is literally why Cursor exists. Because they forked VS Code to make it their own. And this is where SAS lacks. If VS Code was licensed using source available licenses, Cursor wouldn't have been possible. The software industry in it's current form exists because of OSS. With SAS, it is only about money and control disguised as limiting "OSS can fork or redistribute" freedom. This means, OpenTofu wouldn't have happened if Terraform was SAS in the first place. MapLibre wouldn't have been possible when Mapbox GL JS became closed source. This is the future so many of the SAS folks are so excited to bring up on to the OSS communities. Listening to these companies using their money and good marketing campaigns about OSS being weak. It is going to make it harder for the small guys to fight against big techs.

Then there is the VC companies crying BIG Tech killing us sob story. Redis and Elastic when they changed to source available licenses had at least a hundred million dollar in funding (This is a humble under cutting. For example, I know it was at least 200M+ in redis's example at the time of license change). So the helpless, weak crippling companies narrative is not true. Both of them has since changed the license back to an Open Source license though. This was the case with HashiCorp as well. But they stuck with Business Source License.

Why is forking and redistributing possible with OSS and why is it important?

The freedoms of OSS which allows you to do the below allows you to fork a software.

  1. To run the program
  2. To study and change the program in source code form
  3. To redistribute exact copies, and
  4. To distribute modified versions.

These freedoms are extremely important. Because without these freedoms, there wouldn't have been forks of popular OSS projects when they went against the OSS community or consumers. If you are bothered about people using your software in ways you don't want to, then you didn't want OSS from the start. At least in Herman's case, I understand the difficulty of this. But I also remember us discussing Mapbox forks which used to crop up regularly in Mapbox slack workspace. New websites cropping up with forks of Mapbox OSS libraries with even the same Mapbox website design. And none of them made it you know. Clearly AI is a different problem altogether. As Herman notes in his post about the license change, free loading is going to increase. But at the same time, that was always possible. And "free loading" (a.k.a right to redistribute) as he puts it is one of the OSS freedoms. Maybe it wasn't possible in the current LLM speeds. But still, it's not a new issue.

Not to mention, software is not the only thing in a business. I don't think a fork alone will allow people to create a competing service. Other than that, I would say people are not always looking for just the functions in a software when they are choosing OSS. While I do agree that SAS has a barely slight advantage of the source being available. You have no idea what the project will become tomorrow. And when it changes, you have zero control over it. It's like investing a huge amount of time on a software project and when they shuts you down (what's up x.org ??), you wouldn't be able to do anything. This is why I don't think SAS can have the level of community involvement OSS always will have.

But if you want good software, you should pay!

Yes. Pay for OSS services. Donate when possible or contribute in ways possible. Majority of the server software which will make it possible for you to read this post runs of OSS. There are many pieces of OSS project which are community based and are from commercial companies as well. Nobody is saying it should be free. Just don't butcher the OSS movement. And let's keep SAS separate and we are all good. If projects are not ready to provide OSS freedoms, you also cannot piggy back on OSS for good PR.

So what is your solution?

The solution is to use the right OSS license depending on the project and business you want to do. And not to mention, doing OSS business is hard. There is no denying it. It has been written about a lot of times. Death of an Open Source Business Model by Joe Morrison is a great piece on that subject. And Drew Devault has written about his POV here. Whcih talks about the pain points Herman and others mentioned about OSS. While I personally don't think it is dead as per the former article, I also don't think OSS model will work for all types of businesses. For certain businesses, OSS can be a boon and for others it is impossible to make a business out of it. SAS can provide confidence by making source available to read. The verifiability of it on backend is the first problem. But also, I don't think it makes sense if it comes at the cost of OSS. It is a very very bad move for the software community. If you want to make money and don't want to share code, I personally think making a proprietary software is better. Then contribute back to OSS communities via donation, contributions or by other means. Creating new problems for OSS and butchering OSS is not the way to go about it.

  • Python is faster because of Microsoft's recent investment.
  • React changed UI library with Facebook money.
  • Linux Foundation and Rust Foundation are run by companies which a lot of OSS folks dislike.

Money is a problem in OSS. There are different ways to solve this. But to most, they want to ignore it. Which is why we have things like SAS. Be Microsoft for Python. Be Jane Street for OCaml. Or do it the community way like Zig foundation, FreeBSD foundation or OpenBSD foundation. But let's keep OSS the way it is. And the way it always has been.


Wrote something wrong? Happy to listen. Drop an email to unsungnovelty at protonmail dot com.

Top comments (0)