What success really looks like in open source
Nadia Eghbal
20813

Please don’t take my tweets out of context to make your point. I would appreciate it if you include all of the conversation or none.

There are many kinds of open source projects. I would categorize them as f0llows:

  1. OSS as a product. Here, companies use OSS as part of their core business. For example, a company which offers SDKs to developers may make those SDKs OSS. The SDK is not all of the software, but being OSS reduces sales friction.
  2. OSS as corporate marketing. Here, companies release part of their platforms as OSS like Google with TensorFlow or LinkedIn with Kafka. Often these are used as ways to market the company, either for hiring engineers or trying to influence the community (Facebook React vs Google Angularjs). Sometimes they are done to get more support in maintaining and developing the tools.
  3. OSS as a business. Here, an OSS project is maintained by a company (like Confluence with Kafka) which sells products, services and support around it.
  4. OSS as a community. Here, individual developers release OSS projects or products that interest them. Sometimes these grow and have many contributors and a community around them, but rarely.

You seemed focused on category 4, and rightly so because 1–3 have obvious economics and strategies.

The challenge with #4 is that it’s unclear where the value is being generated. I maintain a popular recommender system library for Node.js called likely.js. I wrote it because I was interested in recommender systems and thought the community would benefit. I have gotten emails from numerous companies that use likely.js to generate revenue which makes me feel good that it’s finding usage.

Do I deserve payment for likely.js? Maybe, but today there are no less than 12 recommender system libraries for Node.js. Do I deserve payment more than the other projects?

And what would they pay me? The effort they put into making use of likely.js is much more than the effort I put into it. No OSS project simply works out of the box to make money for a company, there is work that goes into making it part of a larger system.

I’m also lucky that I have had some people contribute to likely.js. Most OSS projects never get beyond one or two contributors. This, as you mention, is not a bazaar in itself. What you miss is that the bazaar is the entire community. It’s not me working on likely.js, it’s everyone working on recommender systems for Node.js, it’s the NPM team building the module system and the Node.js team for building the language and support. The bazaar is the larger community that helps by releasing software, the same way they help by answering questions on Stack Overflow.

Are there cases where open source projects become so widely used that they generate significant revenue for others (not the maintainers)? Sure, but not many. And, in many of those cases, those projects become category 1–3 and the economics become clear.

In the end, I made a choice to write and publish OSS in likely.js and others. I did it not expecting payment which I confirmed by choosing an OSS license. This is a choice we as developers make to publish OSS, and if we didn’t want to make that choice we would release the software as closed source.