tl;dr
It’s going as well as I could have hoped, and the challenges are as expected.
Let’s start by looking at the OSMF event timeline for this year:
-
02/26 - I announced the Open Source Maintenance Fee.
-
04/07 - WiX Toolset v6.0 released as the first Open Source project to require an Open Source Maintenance Fee.
-
04/14 - I chatted with Carl and Richard for .NET Rocks.
-
05/01 - .NET Rocks #1948 - The Open Source Maintenance Fee with Rob Mensching is released.
Aside: If you haven’t listened to the .NET Rocks show, do that. Carl and Richard are great.
In just two and a half months of interactions, I’ve seen some consistent threads appearing in my discussions about the Open Source Maintenance Fee.
Education over enforcement
First, my focus right now is “education over enforcement”. Early on, several skeptics suggested that draconian measures would be necessary to get consumers to adhere to the license terms. Those skeptics may be proven right in the end. But, for now, I’ve found that once consumers are informed they need to pay the Open Source Maintenance Fee, they try to do so.
I think this comment from the .NET Rocks show is pretty representative:
Thanks for your time Rob. We are a user of WiX and I was concerned that WiX was going commercial (like the others). We use numerous OS projects and subscribe to several of them. The fee is more than reasonable and we will be subscribing today. — jimiscott
So far, no one has argued the fee isn’t fair. Like jimiscott said, “The fee is more than reasonable…”
But there is still a lot more education to do.
I had high hopes that the .NET team would help out by fixing dotnet tool install
and dotnet add package
to respect the requireLicenseAcceptance
element in NuGet packages. Unfortunately, (at the time of this writing) they chose to shirk their responsibility1 and leave it to end-users to evaluate the license terms without displaying the guidance NuGet package developers (like myself) provide. Be warned, given the current behavior of the .NET tool, you need to evaluate the license of every package before you dotnet tool install
or dotnet add package
it.
Note that installing packages via Visual Studio correctly displays a prompt to accept the license terms when installing/upgrading NuGet packages. That’s the correct behavior.
However, while education is important, the greatest challenge to the Open Source Maintenance Fee has arrived. It is my focus now. I knew this day would come and I am eager to tackle it.
Procurement problems
For decades, we’ve heard, “Oh, I’d love to sponsor/pay/support your project, but it’s so hard to get my company to pay anything. The procurement team has so many forms and people that have to sign off. It just isn’t possible.” Those employees were not wrong. The bureaucracy can be daunting and more often than not if you didn’t have to pay for something the company’s procurement team wasn’t going to let you pay for it.
Well. Now you actually do have to pay for it.
It was 25’ish years ago when corporate lawyers were challenged to understand and adapt to the realities of Open Source licensing. Now it’s time for corporate procurement teams to understand and adapt to the realities of Open Source sustainability. I know it is uncomfortable but we will be stronger when we get to the other side.
Let me know if I can be of assistance to help your team understand the Open Source Maintenance Fee requirements. I’m still collecting feedback and will integrate best practices into https://www.opensourcemaintenancefee.org/. Also, the GitHub Sponsors team has been very responsive to the feedback I’ve gleaned while implementing the Open Source Maintenance Fee. That makes me very bullish on the future of the OSMF.
Which brings me to my conclusion.
Does the Open Source Maintenance Fee work?
It’s too early to declare victory yet (I want to address some direct feedback from procurement teams first), but everything points to: Yes.
I mean, Microsoft paid the WiX Toolset’s Open Source Maintenance Fee this weekend2.
So, if you’re a maintainer considering implementing the Open Source Maintenance Fee in your project, feel free to reach out. I can go into more depth about all the little things I’ve learned and help apply them to your project. And, if I can help resolve the issues these corporate procurement teams are reporting, then I’ll be 100% confident the Open Source Maintenance Fee is a viable sustainability mechanism for Open Source Projects that choose it.
In the meantime, keep coding. You know I am.
Footnotes
-
As a setup developer, ensuring that license terms can be displayed and accepted during the installation of new software is table stakes. I’d argue that
dotnet tool install
anddotnet add package
both serve the same role as standard software installation packages, and should respect the requirement to have end-users accept license terms. ↩