22

Elastic built the tool, AWS redistributed it and is dominating the market. Elastic is probably going to struggle and slowly die because they are bad at business. However, they built a great tool and should probably be rewarded for that.

Here's what I'm thinking:

  • $tool is open source
  • users can modify $tool for private use
  • users can ship $tool as part of their business and earn money with it
  • users can provide $tool as a service but are required to donate a tiny fraction of the revenue

examples: $tool = redis

  • you've got an e-commerce that uses redis as part of the infrastructure, no required contributions
  • you've created a hosting/cloud provider/professional tools and you charge your customers for your redis hosting, so you are required to make small contributions

Without getting into the problem of what contributions are (man-hours/donations/% revenue) and how to quantify it. Is that ethical, or possible in open source? Is there a license for that?

Thank you all for your opinions!

11
  • 1
    If you think they should be rewarded, donate money to them. Same as any open source program.
    – user253751
    Feb 3, 2021 at 22:28
  • The license is probably possible but would not be considered open source, even though I like the idea of requiring people to give away some revenue only if they get revenue themselves.
    – user253751
    Feb 3, 2021 at 22:29
  • 1
    And here's a good reason why it shouldn't be considered open source: What if I can't find the right person who I need to pay? Or what if I want to get a cut as well, from my modified version?
    – user253751
    Feb 3, 2021 at 22:31
  • 1
    @Magus, would that mean my Iranian or North-Korean companies can't offer a hosting solution with your software, because they are unable to transfer the required fee into your US bank account? Feb 4, 2021 at 8:36
  • 8
    Seriously, how much money does Elastic throw Lucenes way, out of interest? Because thats what ElasticSearch is based on. Its turtles all the way down - not just AWS.
    – Moo
    Feb 5, 2021 at 2:32

1 Answer 1

38

There are many reasons why people and companies are involved with open source. Often, these conflicts occur because a business running a project is using a license written by people with totally different goals. Suggestions for more “fairness” also tend to misunderstand how the Open Source ecosystem is a massive network, and it's difficult to ascribe a clear value to single nodes in that network. There is not and cannot be an Open Source license that charges a fee for certain uses.

History and Values of Open Source

The Free Software / Open Source community draws from distinct but closely related roots which I have to briefly cover here.

  • A kind of primordial open source culture developed around Unix and especially BSD. The original Unix was never open source, just source-available. However, it was common in this academic culture to share programs in source form and to modify them further. At this time, the programs itself were not generally seen as valuable. The BSD project eventually rewrote the proprietary Unix parts. Licenses from this time include the BSD license, and the MIT/X11 license, all very permissive.

  • In the context of this culture, Stallman developed the concept of Free Software. The focus of this concept is that everyone including end users should have the freedom to inspect and modify their software, to use it for any purpose, and to share these modifications. This requires restriction of intermediaries so that they can't strip away rights. This is achieved via a copyleft mechanism in licenses. In this tradition the GPL license was drafted, with later variants such as the AGPL. Free Software was surprisingly successful, e.g. see Linux.

  • It turns out that creating and using Free Software is not just good to individuals, but for businesses as well, for example by building upon publicly available components and by collaborating shared software. The term Open Source is a business-friendly rebranding of the Free Software concept. This line of thought was also widely successful, e.g. Firefox/Mozilla was an open sourcing of Netscape software. Foundations like Apache or Eclipse also create massive value across the industry by getting multiple companies to collaborate on “neutral ground”. Without NPM, there wouldn't be today's web development industry.

Within this success of open source, there are two economically important consequences:

  • For a sufficiently successful and industry-relevant open source project, it's possible for the main developers to earn a living e.g. by selling related consulting services.

  • Selling proprietary software is difficult when there is so much gratis Open Source software around.

Why some companies offer Open Source projects and then stop

For both of these reasons, there have been a number of companies that had an open source project as their main product. Elastic and Redis are some great examples of companies that were formed to provide an economic basis for the main project developers. MongoDB was also formed around Open Source as its business plan.

All of these mentioned projects were very successful, and the companies running these projects were definitely not starving. An Open Source product means they had a massively wide conversion funnel towards their paid offerings, though they would only be able to capture a tiny sliver of the available market share. This is fine! Open Source is not a zero-sum game, but a scenario in which everyone can succeed.

But that tiny sliver leads to envy, especially when another company is able to capture much more value of the project without contributing to it. This isn't a problem for a company that just wants to feed the main project developers, but it is a problem for a startup that needs more growth in order to satisfy investors.

Some companies like MongoDB tried asymmetric licensing: they would receive all rights to project contributions, but others would only receive the more restrictive AGPL license. The idea was that the conditions of the AGPL would be unattractive to business users especially in a cloud context, thus funneling them towards MongoDB's paid offerings. But this plan was partially flawed. Indeed, the cloud giants like Amazon never did use MongoDB's AGPL code. However, the AGPL is written to maximize end user's Software Freedom, not to discourage commercial use. The use of asymmetric licensing is also an indication that MongoDB never cared about the value from collaborating on Open Source, only about the potential of Open Source to fill their conversion funnel.

To their credit, Elastic did not use the AGPL but the very permissive Apache License. This allowed pretty much any use by anyone else, including by Amazon. Instead, Elastic used an Open Core business model where extension modules were kept proprietary. However, Elastic is a publicly traded company with an about USD 15 billion valuation. They have a product that's massively successful in the enterprise space, but need to grow further. Stockholders don't like it when a company gives away a large slice of their value to a competitor. Thus, Elastic had to find a way to deny future value to Amazon. To be clear: Elastic was not struggling with paying the bills. Elastic was and will be successful because it's product is so popular, in part also thanks to AWS. This relicensing was necessary for Elastic in order to accelerate future growth.

Even small payments would undermine Open Source

I want to circle back to the point that Open Source is not a zero-sum game. Ideally, everyone wins. Requiring service providers to pass on some of their earnings to the projects that enable these earnings runs against all of the open source roots.

  • From the academic root, the value I derive from a software is independent from the value anyone else derives. If I open-source software, I can do that because I have already benefited from creating the software, and my benefit is not diminished if others benefit as well. Actually, other's improvements could be a benefit in of itself. And if no one else contributes, that's fine as well.

  • From the software freedom root, the focus lies on end user freedom. For this, it is essential that the software can be used for any purpose without restriction. Users should be able to run the software without needing a lawyer and an accountant. Also, users should be able to participate anonymously, without having to hand out payment details.

  • From the open source root, both of the above concerns apply. Collaboration is valuable, and bureaucracy to keep track of fees would impede mutually beneficial collaboration.

If the Apache web server had required web hosters to pay license fees, we probably wouldn't have the massively valuable internet we enjoy today. If hosters funded further development of Apache, it would be because it was immanently valuable for them, not because they were forced by licensing. The same considerations could apply to ElasticSearch today, except that this project is controlled by a single enterprise and is not maintained by a collaboration of multiple interested parties.

While charging for software is not in contradiction with Software Freedom or Open Source principles, this is only unproblematic when the charge is attached to a particular distribution event. If recipients further downstream would also be required to pay up, this would be a bureaucratic nightmare impeding collaboration and value creation for all involved, except those at the top of the pyramid. It's worth pointing out that ElasticSearch was not created in a vacuum, but is based upon loads of other open source software such as Apache Lucene. Does Elastic contribute a “fair share” of its $15B valuation to the Apache Foundation? Probably not. And would Apache be required to forward this income to its hundreds of contributors? What if a contributor changed their email address, would the money be instead saved in a custodial account? Who would maintain that?

Extending Open Source

There have been many attempts to extend or redefine Open Source to address some of these concerns. E.g. MongoDB developed the SSPL license, but it's clearly just intended to harass certain users into buying a commercial license. Some people such as Kyle Mitchell tried solving the payment problem with more tech, but couldn't achieve network effects. There have also been extensions for suggestions towards more “ethical” licensing, to prevent certain undesirable uses.

But all of these attempts misunderstand why the Open Source ecosystem is successful as a whole. The ecosystem of fairly standard licenses provides a level playing field that allows collaboration with low friction, and produces massive value for everyone involved – both to those that contribute and to those that don't. It is not without problems (there are many essential but unsexy projects that are struggling with funding), but introducing more friction won't improve the success of this ecosystem – it will just lead to some parts of the ecosystem to break off.

13
  • 3
    @Magus: Sticking with the example of Linux, several large Linux companies gifted shares to Linus Torvalds when they went public. He did never ask for any of that, they just gave them to him. He is not "entrepreneur" rich by any means, but he'll never need to worry either. All because he accidentally formatted the wrong disk and thus was forced to either reinstall Minix or finish his own OS. Feb 4, 2021 at 19:14
  • 1
    @Magus I personally think there is a great space for "very cheap open software that you can modify" even though it's technically not open source. Feel free to try and get a movement going... There are a hundred other Linus Torvaldses who didn't create their own Linuxes projects because they wouldn't even get paid one cent.
    – user253751
    Feb 5, 2021 at 5:48
  • 1
    "Source Available Open Collaboration (SAOC)" is perhaps a more fitting term vs Open Source which many perceive and understand as Free (as in air)
    – Hames
    Feb 6, 2021 at 19:48
  • 1
    @Magus: Part I - "...real contribution is the permanent addition to the tools available to humanity..." - that is the real value, that (contrary to money), a developer can take with him to the "world to come". That is religious perspective on open-source. In this sense Linus is reacher than Gates, Bezos and Musk together. Btw. pay attention that our money is becoming less and less materialistic. Gold/Silver -> Cupper -> Paper -> Cashless transaction/Credit Cards -> Crypto currencies... Feb 7, 2021 at 15:00
  • 1
    @Magus: Part II - ... The day will come and the economy will be driven by non-monetary values. We all just need to realize what really matters in life and collectively acknowledge it. It is really not more abstract than Bitcoin... Feb 7, 2021 at 15:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.