MongoDB’s shift away from the Affero GPL to its homegrown Server-Side Public License (SSPL) can be cast as a way to clarify what open source means in the cloud or, rather, what it should mean. But it’s also very clearly an attempt to push Chinese cloud providers into paying up in cash or code if they want to strip-mine an open source project for cash while giving nothing back, as a recent interview with MongoDB CEO Dev Ittycheria makes clear.
It is one thing to square up with China’s Alibaba or Tencent, however, and quite another to actually get satisfaction. Or, as Gartner analyst Nick Heudecker has stated, “It’s one thing to have a license. Defending it in court is another thing entirely.”
The open source money problem
Popularity is the blessing and curse of commercial open source projects. For community-driven projects, it’s perhaps aggravating to have an Amazon Web Services or Microsoft Azure embrace your project (Postgres is an example), turn it into a cloud service, and contribute little to nothing back—but no money is lost by the community in consequence. Sure, some community members may struggle, but arguably such behavior doesn’t threaten the project’s very existence.
Commercial open source is different.
For example, in its press release announcing the license change, MongoDB repeatedly stressed how much it directly invests in R&D for the database: “We have invested approximately $300 million in R&D over the past decade to offer a modern, general-purpose, open source database for everyone. With the added protection of the SSPL, we can continue to invest in R&D and further drive innovation and value for the community.”
This is great, but it calls out the Achilles heel of commercial open source projects: They’re heavily reliant on a single vendor. A community can likely withstand a cloud provider taking without giving. A company? Not so much.
For example, while MySQL had a great exit as a company, selling to Sun for $1 billion (on roughly $100 million in revenue), AWS has made orders of magnitude more money than either company (or new owner Oracle) ever has. Google and others have contributed back to MySQL, but to this day most investment comes from Oracle, its owner. MySQL is a great database, but think of how much better it would be if the web giants gave back even 10 percent of the value they derive from it.
And so it’s understandable that MongoDB and others would seek to prevent the megaclouds from strip-mining their projects, particularly in China, where loose interpretations of open source licensing have already opened the door to Alibaba, Tencent, and Yandex offering MongoDB as a service without contributing any code back.
Not that this new license will stop them.
Big in China, bit by China
As recent court cases in China suggest, Chinese companies tend to equate “open source” with “free.” That “free” means something different in China, as Markus Deck and Phillipe Heinzke wrote: In recent court cases litigating open source licenses, “the defendants believed that when software contains code licensed as open source, the software automatically becomes open source and can be freely used. This represents the most common misunderstanding about open-source licenses, particularly the GPL and ‘copyleft’ concept,” in China. While Chinese courts haven’t necessarily enforced this laissez-faire view, it’s not hard to imagine the cloud providers feeling justified in using MongoDB or other AGPL-licensed software—in fact, feeling entitled to do so—without in turn open-sourcing derivative works.
It’s also not surprising they feel somewhat insulated from New York-based MongoDB. I would imagine their response to MongoDB’s outreach over potential license violations would go something like this: “來吧,起訴我。我會在北京見到你.” Loosely translated: “Go ahead and sue me. I’ll see you in court … in Beijing.”
Or as database developer Paul Ramsey notes, “MongoDB’s going to drag Alibaba into court in China and get satisfaction when they violate this new license? You know, we just got a new bridge in Victoria, and I’m willing to sell you the old one for a song.” Loosely translated: “Good luck with that.”
Having the open source license on your side doesn’t mean it’s going to help much in China, which hasn’t traditionally cared much for Western conceptions of intellectual property (though this has been changing).
Any upside is limited
MongoDB attempts to curtail Chinese siphoning of its code for cloud services without giving back code may prove futile. In North America and Western Europe, however, it’s likely to have a more chilling effect on the clouds’ attempts to use its software. But even that may not result in additional code.
Which may, of course, be the point. As much I want to see more infrastructure code shared as a result, I imagine the public clouds in the West will keep building their alternatives and eschew MongoDB. That works fine for MongoDB’s revenue model—and it is fine for the cloud providers, too.
The real loser in the licensing kerfuffle is the industry that could get better infrastructure for running popular open source projects at scale. That’s a miss. It’s not MongoDB’s fault, as it didn’t invent the problem, but it’s still a miss.
Cloud Native Computing Foundation executive Chris Aniszczyk believes “you solve open source sustainability in the long term by having companies give back by hiring maintainers, not tip jars.”
While open source has never been stronger, it’s likely that we’ll see less commercial open source, even if we do get the “exhaust” of the Microsofts, Facebooks, etc. of the world that can afford to give code away without need for cash in return. This is a great source of code, but it will be a miss if we don’t also find ways to ensure commercial open source can thrive, too, without worrying about the big cloud providers sucking out all value without any R&D contribution back.