Funding an open source project and maintaining an organization to sustain that project is a challenge. We've chosen an open-core model which means we have an MIT licensed open core, GitLab Community Edition (CE), and an extended GitLab Enterprise Edition (EE) for which we sell a license key to use. In this post we will look at the Fair Source license.
One of the key issues with commercializing open source software is licensing. There are great examples of open source licenses which allow code to be viewable and modifiable. There are many examples of proprietary licenses which protect intellectual property and don't even allow users to view the source code. However, what license is appropriate for a project like GitLab in which users can view the EE code, but pay to use it?
The Fair Source license aims to address that. On Fair.io the license is summarized:
"The Fair Source License allows everyone to see the source code and makes the software free to use for a limited number of users in your organization. It offers some of the benefits of open source while preserving the ability to charge for the software."
Recently my colleague, Sytse met Quinn Slack, co-founder and CEO of Sourcegraph which pioneered the Fair Source license. He suggested we should review this.
At GitLab we have taken a close look at the Fair Source license to determine if it could apply to our situation. We are very supportive of the Fair Source license and business model and believe that it will have broad acceptance into the market.
We evaluated the Fair Source license for use with our Enterprise offering. In this case there could be an application of the Fair Use license - i.e. allow up to a certain number of users to use the product for free and then charging users once they exceed a threshold. We already have a CE version that is used by more than 100,000 organizations, in many cases with thousands of users. Given that we already have a CE product, a free evaluation period and a free GitLab.com offering we felt that introducing yet another model for using GitLab would create too much confusion in the market.
In other aspects of licensing we have embraced the principles of the Fair Source license through allowing users to modify and publish patch releases both as fully licensed customers which includes those users covered by an evaluation license. We are open to suggestions on how we can do better on our Enterprise Edition Source License.