Recently Docker announced changes to the policy on DockerHub. It says —
We're introducing a new product subscription, Docker Business, for organizations using Docker at scale for application development and require features like secure software supply chain management, single sign-on (SSO), container registry access controls, and more.
Docker is an open source container engine that essentially helped many organizations in their application modernization efforts. Infact, for many developers, Docker became a household name.
However, Docker Inc could not sustain itself as an organization. So first, the company sold its enterprise business in 2019. Then, Docker in August 2020 made changes to its container registry called DockerHub, a popular place where most organizations store their containerized software. And now, on August 31st, 2021, it made changes to another product Docker Desktop, to monetize further.
What do you see in all these decisions?
Some say, "Oh! they have become a monopoly and hence trying to switch their business model so that they can make boat loads of money!", "Docker should've not monetized their container registry and desktop products, instead monetize their core platform via enterprise subscriptions!"
Well, I see the opposite. I see the desperation in saving themselves so that the Docker project could survive and continue to innovate. I see a lost opportunity for a great open source project, due which the leadership is trying to monetize the remaining user base.
I'll stop here; otherwise, this would be a blog post on Docker's business. In this blog, I want to talk about —
- What do I think Open source is also about?
- Why is sustainability so crucial for an Open source project?
- Actions that we can take!
The movement of Free and Open Source Software (FOSS) is heavily oriented on Free(F), but in fact, what students/devs should think about is Learning (L) & Collaboration (C), which is hidden in the acronym.
The free and Open Source software (FOSS) movement is pivotal in bringing the concept of Open source to the world. This primarily helped avoid getting into a vendor lock with a specific software by putting the user first.
But also massively brought the best brains from all over the world to collaborate and build robust systems, aided innovation. Ex: Linux Kernel.
However, over some time, most of the users attributed FOSS to only FREE and forgot it is also about Collaboration and Learning.
As a student from tier-2 city college, Open source has aided me in my learnings and helped me learn "How to collaborate?" - a critical soft skill in today's remote work world!
Open source does not mean free or vice-versa. Anyone who doesn’t understand this doesn’t get open source.— Nick Craver (@Nick_Craver) July 1, 2021
Complaining that you pay for software and think it should all be free, as a software developer, is incredibly hypocritical. https://t.co/M4f9P7sAcD
Similarly, successful OSS projects would be getting many requests for new features, code contributions, bug fixes, or even security disclosures. So the developers, maintainers of the OSS projects would need to spend more and more time, and earn bread while providing free value.
Then, how will the OSS projects' developers and maintainers continue to add good value and earn for their livelihood?
- Many could suggest donating the project to a foundation, which is run by a few sponsors. The sponsors' organizations interested in developing the project could invest or fund the project directly.
- Building a sustainable business on top of the OSS project like offering consulting services, selling additional premium features, having a SaaS service!
Not every project can be donated to a foundation, so the sustainability of that project could very well depend on how well you do on #2. You need to have a viable business model for a happy user community.
The moral of the story is, success at one layer doesn't guarantee success at another, or a viable business model.— Kelsey Hightower (@kelseyhightower) September 7, 2021
The focus on what went wrong overshadows all the things that went right. https://t.co/AnXOJ8OF4x
As a developer, what else could we do to help an Open source project, apart from contributing to the community via code, docs, being an ambassador?
These are two ways I figured out:
- Consume services from the creators of project. If you are looking for a consultant, hire from the organization which is developing this project. If you are looking to deploy the OSS project on a cloud platform, try to leverage the official SaaS service from the creators. Alternatively, check if they are available or Cloud vendor's marketplace.
- Some organizations choose to remain independent and raise funds via platforms like Open Collective or Github Sponsors. Do support them via your organization.
If you don't find the prices reasonable or some other services in the same space offering much better prices for the same OSS project, try to share the feedback to the Open source org.
If you know a founder building an OSS project, talk to them about building a business model. There are many exciting examples of Open source business models. If you are interested in the subject, you can look at my colleague Philipp Krenn's talk on Open source as a business: Strategy, Success, and Struggle.
Finally, as an Open source lover, I'd like to see Open source succeed.