For the last couple of days, there is a heated discussion going on HN about Commons Clause. As per https://commonsclause.com/:<p>>> For purposes of the foregoing, “Sell” means practicing any or all of the rights granted to you under the License to provide to third parties, for a fee or other consideration (including without limitation fees for hosting or consulting/ support services related to the Software), a product or service whose value derives, entirely or substantially, from the functionality of the Software.<p>Though as a user I don't like Commons Clause, it made me think why some companies are opting for it.<p>For Open Source Infrastructure Projects like Databases, there are very few revenue models. Here are the ones I can think about:<p>1. Keep certain features Enterprise only
2. Enterprise Support
3. Hosted PaaS platform<p>If one goes with option 1, then it can become an adoption hinderance. For example, I have never seriously looked into Influx DB, as they kept Clustering a paid only feature. If I am making something a core piece of my infrastructure then I want to be able to scale it without paying enormous fees. I may choose to do it if my business model allows it, but I don't want to be forced into that option.<p>So to encourage adoption, I wouldn't want to go with option 1.<p>That leaves options 2 and 3. Enterprise Support model is very hard to scale to billions of USD scale. As it needs expertly trained humans to scale. But still, it can lead to substantial revenues. However, with open source core, it can take decades to reach the billion dollars scale with just enterprise support.<p>[Ran out of space. Please see the comment below: https://news.ycombinator.com/item?id=17829847]