The author discusses different business models of open source along with history in this article. This article is based on the talk presented by the author during Open Source India 2019.
There are three components in the open-source models, They are:
- Development and
History of open source and how it all began?:
The sharing culture has been there already. Universities and research organisation people used to share their code and all the code is mostly available in public domains. Previously people thought that “the software is needed to keep the lights on” that’s why they used to share the code but now software is a key part in every aspect of human life.
Open Source timeline:
You can see in the timeline that in 70s Emacs, which is a first opensource tool for editing the codes and text files.
In the 80s, new projects started the GNU project, GPL, GCC, PERL and X-Windows and The GPL, a license that came along with so many open-source projects. Linux kernel and GCC are licensed under the GPL.
In the 90s, we got several projects like Linux, Python, PHP, FreeBSD, NetBSD, Samba, Apache and In 2000, LLVM, Firefox which is a well-known browser, Git is one of the most used tools for VCs, Chromium, Android operating system which runs on almost 80% of the smartphones today.
In 2010, There are some additional languages has been introduced like Bootstrap, Kotlin which is an alternative programming language for android app development, Linaro, Rust and GoLang from google.
As we can in Figure 1, the open-source initially started with small scale editors, tools and moved into operating systems, firmware etc and went into high-level infrastructure like bootstrap. So, as you can see opensource is evolving, there is more and more software that has been opened and that also proves the fact, the opensource is there to thrive and it really thriving as we move.
Open Source business model
Commonly confused concepts are Free and open source, those are two different things. Free was started because there were a lot of abstractions happening in the past, there was a lot of proprietary software was created. So, Richard Stallman started a free software foundation. Open Source generally including free software, it is about doing things openly. It doesn’t mean that it’s all free. You can still charge for the services.
Support is one of the very common business models in open source like Redhat Linux. Dual Licensing, There are several projects are based on dual licensing like commercial use and non-commercial use. If you want to experiment or try the open-source software they are freely available but if you want to commercialise using that open source software you need to get a license. Free data business model: you get free apps and free software in AppStore or any other platforms. You download them and they use your data so, that’s the price you pay. The data on how you interact with the services that the app provides. Then this users data had been shared to commercial businesses. Restricted licenses model which means you can do some of the things with it and if you want to do additional activities then you have to pay for those additional activities.
Last but on least open-source enablement code or tight core, In this business model the core of the software is open but if you want to do additional plugins or additional services built around it then you need to buy or pay. However, these business models moving into another direction which is called a lose-core business model. It means where the projects are becoming more mature where they don’t want to run any of these models, all development will happen in open including the plugins and everything open. So, they will seek financial support from the community. It comes more important from the communities to support them and thereby have the freedom to use that software. For example, Cady project, recently they were announced that they want to change all the proprietary plugins to opensource.
Why corporates consider OSS:
According to the survey on why corporates consider OSS? from Black Duck in 2016.
- Better quality- This is one of the main reasons that corporations are considering the OSS. Why quality is good? Because these people or community who want to do that, they get together, they do their best and they put the code out there. It’s the passion combined with talent that shows up that’s why the quality comes out from the community is better.
- Features- Open sources have a lot of features built-in.
- Customizability- This is most important when you adopt a piece of software and you might have a different kind of needs this OSS gives that freedom of customization because you have access to source code.
More than 60% of companies consider OSS before the closed source alternatives.
The same survey in 2017 by Black Duck
- 60% of companies increased OSS use or invest in OSS.
- One of the main reasons is the low cost
- Freedom to make changes
Now, you can see that almost nothing in the 2000s but in 2019 almost 70% of the companies are considering the open-source is important for their businesses.
As per the Redhat OSS survey in 2019 on How important is OSS for a business.
From the charts (Refer figure 2), we can see that only 10% say somewhat important and 1% is not at all, Everything else is very heavy on open source. So you can easily say that 90% of the companies say that OSS is important in their line of business. The reasons were almost the same as the black duck survey like Low cost of development, access to the latest innovations, better security, 26% of companies say OSS is a high-quality software and then access to enterprise-level support that companies like Redhat, Suse, IBM provides enterprise-level services to users mostly on Linux. Also, companies state that OSS provides a lot of applications the ability to drive the companies businesses.
Opensource Program Offices
The companies which are using OSS and producing open source software have separate departments like Open Source program offices (OSPO). They are like a central point in the company that helps other external open source communities and internal communities. Some main things they do
- They leverage external projects bring in from the other communities to know how they operate, what kind of policies they have and etc.
- Internal education transformation
- Advocates for internal developers communities.
- Do not reinvent the wheel. So do not rewrite the software that already available there, use it for enhancement of other software.
- Developer onboarding- helps a lot of other developers to get onboard on their companies and become contributors.
- Also helps to generate Goodwill for the company with these all open source communities.
So, OSPOs are very common in large companies, they always watch the other communities to see what projects are out there and what projects make sense which is critical and essential to their business and they come up with policies supporting them and help them in contributions or by other means. One of the things with open source is often ignored is that they do all the software, they have licenses and licenses have obligations when you use them when you distributed. It is a knowledge that you have when you utilise open source. So, the open-source program office helps you with defining those policies and how you will be able to leverage it. Internally inside businesses. They also help you to create an open-source culture within the company.
What OSS users value
- Stability- It is important that a particular piece of software or code should be stable
- Security- As you can in the survey of Redhat the security is a common reason why they choose open source.
- Documentation- which helps to new users or new developers to understand more about the software the community is trying to build.
- Does not count on a few things like lack of response like if somebody asks a question and there is no response then it really bad. So, it’s very important from the community aspect is that always respond it, Negative response- you have to be inclusive, be nice to them. Avoid conflicts in communication, Don’t reject without reason, rudeness is not welcome
- License Terms
Users are the biggest number in an open-source community, Contributors will be a small number and maintainers will be a few people. For a sustainable community, there should be a constant flow from users to the contributors and contributors to the maintainer. Always measure, find your communities and see how it is doing in terms of these roles.
The fabric of Community
Open Source project participants
- Authors- who were originally contributed the code
- Owners- It could be a company or it could be an individual.
- Maintainers- Who are significant contributors.
- Users- Who uses the software and provides feedbacks and bugs of the software.
Sustain the sustainability
- It is very important to take care of contributors
- Always think about bringing new contributors
- Community over code
- Create and document the contribution process and guidelines
- Have regular releases both software and document.
- Establish clear communication channels- IRC, mailing lists, forums
- Analytics- always provide data about how people onboard
- Mentorship- helps the users
- Nudge towards helping-culture.
- Brittle digital infrastructure
- Support the individual open-source developer
- Always support the project
- Adopt a “give-back” culture
You Don’t have to be coder:
People think opensource is all about code but that’s not really true. Normal people can contribute to open source like
- Event planning
- Design websites, logo
- Help people in general
- Providing feedback and bugs report
How does OSS leadership work? When you look at community they might be doing their own things its chaos and but if you see in a different perspective those all the communities going somewhere together and that’s the viewpoint. This how opensource projects organically move.
How old was the youngest kernel contributor? 4 years, It was Maisa, a girl who contributed a documentation fix. So, the fact is not how big the contribution is? The important thing is a contribution from a 4-year-old girl.
OSS models are going everywhere
- Open Hardware
- Arduino- development board
- Open chips
- RISC-V architecture
- Open Data
- Open Energy Data Initiative
Earlier innovations were restricted to proprietary software, there were features in proprietary software and those had been implemented to OSS in different ways and at a certain point, it happened these innovations are happening in OSS engines. It also means earlier there was somebody else to blame now you have no one to blame if something goes wrong. So, more responsible programming, more responsible community behaviour is required in all the open-source communities.
Note: This talk session of the author has been transcribed by Vinay Prabhakar Minj and Surya Teja