Chef's New License: A Community Response 2019-04-02
As someone that often speaks up on the behalf of the community, I wanted to draft a quick response to Chef’s new licensing announcement. To lead off, I want to voice my overall support for Chef Software in general and in this change. I think experiments like this are critical to ensuring the sustainability of “open source”-ish (see my previous post for details on the ish) software. And in case this isn’t clear, I do not work for Chef Software, I don’t speak for them, I had no direct advance knowledge of this change, and I was not involved in drafting it.
That said, I think the impact can be summarized like this:
- Chef as a project is going to do its best to keep the contribution culture and aesthetic of Open Source, which it has had since the beginning.
- Chef as a product is no longer intended as a free-as-in-beer, $0, gratis product. If you are a business and want to use Chef, you should expect to pay for it.
Those are two totally consistent things. While as a user I certainly prefer $0 products because I have limited resources, there is nothing inherently wrong with Chef Software asking to be paid for their labor. I think they significantly “buried the lede” on this because going from a $0 product to a paid product is a hard thing to spin. But as spins go, open sourcing literally all their source code is a pretty good one and will have a lot of positive effects on the Chef ecosystem. For better or worse, the tech industry has grown to expect that the vast majority of their software will cost $0, startups especially. I’ve written before about the perils of addiction to gratis stacks, how we’ve spent years depleting The Commons, and how building an industry on open source burnout is both unsustainable and morally wrong. All of that is still true, and that’s why I support these kinds of experiments, even if they fly in the face of the OSD and other community gatekeeping.
So I support the general goals shown above, but the devil is in the details. And I think the details are concerning. I’ve been talking to Chef Software already this morning about getting their legal team to clarify some common use cases, and I am confident they will have those updates for us in the next few days. One side effect of this change is that some users who were only using Chef because it cost $0 will stop using Chef. As a community person, anyone leaving the community makes me sad, but sometimes it’s okay. The cases I care about a lot more are what happens to the community tools and cookbooks developers. As this is a new license that has never been used before, we’re deep into untested territory. I trust the intentions of the Chef Software team are to protect these use cases, preferably even improve them because now they can see the source code for more of Chef Software’s products, but it’s going to take time to clarify things and I think it’s mostly on Chef Software to demonstrate how this new license is safe for us as a community rather than the community doing the work on that front.
And there is always the CentOS option: building a community distribution. The comparisons to RHEL were very specific and apt (rimshot), with the source code being open it’s 100% legal and cool with Chef Software if anyone builds their own installer and posts it to the internet. This is basically the same relationship as RHEL and CentOS. CentOS rebuilds the open-source sources of RHEL packages, so you get the same package under a different license (and no support contract, but that’s always been a paid thing so no change there). Unfortunately I’m concerned that the majority of the people with the knowledge to maintain such a distribution have all already mostly (or entirely) burned out of the community, myself included. This is a place the market can speak, if no one makes a competing distribution, I guess no one wanted it enough. This solution doesn’t sit well with me though.
Speaking of not sitting well, as the owner of a bunch of the software they are now selling as part of their enterprise distribution, that’s not a great feeling. It’s absolutely their right to do it, I gave them permission when I chose to release my software under a permissive license. But on an emotional level, it still stings. You could counter that it’s the same situation as my software being included in RHEL itself, but my code is much larger fraction (though still a small one I’m sure) of the Chef Software distribution, and our community has always been much closer knit than Linux at large. I’ve already mostly moved on from Chef work in favor of other things, but I’m sure this will be a mental factor for others in deciding where to spend their leisure time, on corporate products or something else. Only time will tell how that calculus ends up.
Overall I think it’s important companies try new, sustainable approaches to open source (even if not strictly under that term anymore), and I genuinely hope Chef Software succeeds with this model. But I think it’s going to be a long road to make it a success and it’s far from a certainty.