The Open Source Business Model is Under Siege
https://www.influxdata.com/blog/the-open-source-database-business-model-is-under-siege/
A few weeks ago I gave the Day 2 opening keynote at PerconaLive, a conference focused on Open Source Databases. My talk, titled “The Open Source Business Model is Under Siege,” is about the existential threat that Open Source Database companies, or any open source software infrastructure, are facing from cloud vendors like Amazon Web Services, Google Cloud, and Microsoft Azure. The talk is based on my own experience building a business around open source over the last three and a half years with InfluxDB and our other projects. Here’s the video of the talk along with a summary of my points and my thoughts after the reaction from conference attendees. I touch on a few things in the talk that I won’t cover here and have a few incendiary words for some vendors, but you’ll have to watch for t
The first thing I acknowledge in the talk is that open source isn’t a business model. It’s a way of developing and delivering software. I would argue that it’s a vastly superior method in all facets to closed source development save but one: making money (and with it being able to continue to invest in further development). The development of open source software is always subsidized. Either through programmers’ free time when they’d be doing something else, investor dollars, donations, or some other successful business, like a search advertising business, for example.
The question we must answer as developers attempting to turn open source into a sustainable business is: Where will our subsidy come from? Some of the more common methods are consulting & professional services, support & training, production tooling & monitoring, open core, and Software as a Service (SaaS). Each of these has their problems.
Consulting doesn’t make sense because you end up having many of your consultants working non-billable hours while they write open source software. In a normal consulting company you’d like to have everyone billing hours to clients 90% of the time or more. If you have half of your developers writing open source software instead of billing, the best utilization you can hope for is 50%! You’d be better off starting a consulting practice around some already successful and large open source project. Then you can be the experts and bill hours while only contributing back patch fixes that your customers pay for directly. That’s definitely not ideal since we’d like to find a way to spend the majority of our time writing open source directly.
Support is difficult to sustain because it doesn’t provide a forcing function for people to buy. This was certainly our experience with InfluxData. We offered support for nearly a year before moving to open core, and in that time, we signed up only a few customers. Further, support creates perverse incentives between you and your community and users. Ideally, your software should be easy to use and run in production. You want others in the world to become experts on your project. However, both of those goals make it more difficult to sell support. Finally, the renewal rates on support contracts is abysmal. After a few years, your customers will get a level of expertise and comfort with the project and start to question why they’re paying for support in the first place.
I think production tooling and monitoring is what most open source software vendors over the last 15 years have been holding out as their business model. The problem with this model is that you’re now competing against other monitoring vendors and, more importantly, you’re now competing with the cloud vendors that offer to host your freely available software. Take AWS’ hosting of Elastic for example. They have no commercial relationship, and for customers running ElasticSearch on AWS, they have no reason to buy support or monitoring software from Elastic.
These dynamics led us to go with the open core model last year. That is, we have an open source project at the core and a closed source commercial fork of it that adds more functionality (in our case HA, clustering, and advanced security). A few years ago the concept of open core made me cringe. It goes against what I love about open source software. Free code to do with as you want: build a business, learn, add and modify, and generally advance things without writing everything from scratch yourself. It was a difficult decision and one I still struggle with to this day. The fact that we’ve always developed everything out in the open until this point made it more difficult because it meant we were taking something away from the community that we had worked so hard to develop and embrace.
However, immediately following our decision to go open core, we had inbound commercial interest. People were contacting us and offering to pay for our software. This time last year was critical for us as a company. One of the motivating factors to be more aggressive on the commercial aspect was that I knew we’d have to go raise our series B round of funding within a few months. Put simply, we needed to have a reasonable story for how we would turn this project into a sustainable business that could return an investment. Even though it was a tough call, I’m certain that if we hadn’t made that decision, we wouldn’t be around as a company today and thus not contributing any open source software of any kind.
The last model I haven’t touched on yet is SaaS. I think this is where the future of open source software lies. But the successful SaaS model more closely resembles open core if it is to be successful. Take Databricks or Redis Labs. Both have significant investments in closed source software for their managed SaaS platforms. These represent real moats and hurdles to would-be competitors in the cloud that would take either Spark or Redis and host them.
The cloud vendors’ aim is to make infrastructure software easy. First you didn’t need to worry about servers and network gear. Then you didn’t need to worry about managing your database or a scalable object store. The age of companies running their own infrastructure is in structural decline, just like buildings running their own electricity a hundred years ago. As the cloud vendors mature they’re going more horizontal AND more vertical. They’re targeting infrastructure software of all kinds while rolling out software in verticals like collaboration, analytics, monitoring and countless other areas. And they’re using open source as their building blocks.
This means that companies attempting to build businesses off open source infrastructure software must find new methods for making money. Support and tooling won’t cut it. Consulting isn’t an investible business. Open core and the SaaS flavored version of open core are the only viable options I see here. A more restrictive license is one option, but that doesn’t target the open source ideal: that others can freely modify and use your code without restriction. This kind of free use is exactly what is driving the innovation we’re seeing in cloud and infrastructure software. Twenty years ago, no single vendor could hope to provide all of the services that the current vendors support because of the sheer volume of code and investment required. The open source dream is that we enable others and ourselves to stand on the shoulders of giants to move the state of the art forward.
Don’t get me wrong, I don’t hate the cloud vendors. Quite the contrary, I’ve built exclusively on cloud platforms for the last ten years of my career. Before that time, I was firmly ensconced in the Microsoft camp in the old days when they considered open source a dangerous virus. I’m happy building in the cloud on Open Source Platforms. But given cloud vendors’ large and obvious ambitions, open source developers looking to build a long-term sustainable business must have a clear plan for making money while continuing to invest in open source software.
I see more companies going the open core and SaaS route. InfluxData, Mongo, DataStax, Elastic, Databricks, RedisLabs, Pivotal (Cloud Foundry), Hashicorp, Docker, and many more. Even Confluent, the company behind Kafka, launched their cloud offering earlier this week. It’s where the industry has decided to go. The problem we’ll continue to grapple with is where to draw the line. What should be open source and free and what should be closed and commercial? At Influx we continue to put more than 75% of our development effort into open source software. We invest heavily in open source, and it continues to be a point of pride for myself and the entire company. Last week we launched the first official version of Chronograf, an entirely open source project that is the UI for our entire stack.
After giving the talk I had many people at the conference came up to me. I was quite nervous delivering it because I knew that many in the audience had spent more than a decade building open source projects and companies around them. Many people from different projects said that they had also had the same struggles over the course of their development. I talked to many developers from MySQL, some of whom had been there for 15 years. They said they went through each of these phases and even tried some other crazy ideas that didn’t stick (like selling advertising on docs pages and selling branded gear).
It was great to hear that we’re not the only ones working through these issues. I came away from the conference more energized than ever and bullish on the outlook of open source software, despite the dire click-baity title of my talk. At InfluxData, we’ll continue to invest heavily in open source while making sure that we have a real business model behind the project to ensure its longevity.
The Open Source Business Model is Under Siege的更多相关文章
- How Open Source Became The Default Business Model For Software
https://www.forbes.com/sites/forbestechcouncil/2018/07/16/how-open-source-became-the-default-busines ...
- Open Source Isn't A Business Model, It's A Market Strategy
https://www.forbes.com/sites/quora/2017/09/29/open-source-isnt-a-business-model-its-a-market-strateg ...
- Refactoring open source business models
https://opensource.com/business/16/4/refactoring-open-source-business-models They say you never forg ...
- 11 open source business models
https://www.zdnet.com/article/11-open-source-business-models/ Critics are always claiming open sourc ...
- How to: Create a Business Model in the XPO Data Model Designer
How to: Create a Business Model in the XPO Data Model Designer This topic provides step-by-step inst ...
- [转]Business Model Canvas(商业模式画布):创业公司做头脑风暴和可行性测试的一大利器
本文转自:http://www.36kr.com/p/214438.html 本文来自First Round Review,他们准备的文章既讲故事,还同时向创业者提供可操作的建议,以助力打造优秀的公司 ...
- How to: Create a Business Model in the XPO Data Model Designer 如何:在 XPO 数据模型设计器中创建业务模型
This topic provides step-by-step instructions on how to use the XPO Data Model Designer in XAF appli ...
- Business Model Design 业务模型设计
Note This section is split into two parts, which describe the use of two different Object-relational ...
- [书籍分享]0-008.商业模式新生代[Business Model Generation]
封面 内容简介 <商业模式新生代>内容简介:当你愉快的看完第一章:商业模式画布,赫然发现这些构成要素全都交织成一幅清晰的图像在脑海中呈现,它们如何互相影响.如何交互作用全都历历在目.利用商 ...
随机推荐
- springboot底层原理简述
1.maven 子父依赖关系,快速整合第三方框架 2.无配置文件 省略了web.xml,spring.xml,springmvc.xml.mybatis.xml. spring3.0以上提供注解,sp ...
- Java 中成员变量被局部变量所隐藏
Java 中局部变量与成员变量同名时,局部变量会隐藏成员变量.如果我们想访问成员变量,可以使用 this 关键字. class Test { private int value = 10; void ...
- 【题解】Luogu P5290 [十二省联考2019]春节十二响
原题传送门 每个点维护一个堆,表示这个点及其子树所需的每段内存的空间 搜索时从下向上做启发式合并堆中信息,最后根节点堆中所有内存空间之和就是答案 #include <bits/stdc++.h& ...
- jupyter notebook在 mac 使用
1. 查看当前 conda 所拥有的环境列表 conda env list 2. 选择要进入的环境 source activate your_env_name 3. 启动 jupyter jupyte ...
- Drools7 Hello Wrold 入门详细步骤--系列01课
一.什么叫规则引擎?规则--->写在文档上引擎--->在java代码上,引用这个文档上的规则 二.drools规则引擎有什么用?简单来说就是将多变的规则,从业务代码中剥离出来(当规则变了之 ...
- ImportError: cannot import name Namespace
运行socketServer报错. 解决: pip uninstall python-socketio pip install python-socketio
- 2019 讯飞java面试笔试题 (含面试题解析)
本人5年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.讯飞等公司offer,岗位是Java后端开发,因为发展原因最终选择去了讯飞,入职一年时间了,也成为了面试官,之 ...
- Laravel入门及实践,快速上手ThinkSNS+二次开发
温馨提示: l 本文纯干货,文字和代码居多,且适合零基础Laravel学习者: l 本文会新建一个名为 blog 的 Laravel 程序,这是一个非常简单的博客. l 欢迎随时关注ThinkSNS ...
- 报错:failed to get the task for process XXX(解决方案)
引文: iOS真机调试程序,报如下错误信息: 原因: 证书问题,project和targets的证书都必须是开发证书,ADHOC的证书会出现此问题. 解决方案: project和targets的证书使 ...
- python私有工具库小结
1.一些试用py工具清单 https://www.zhihu.com/question/60402355/answer/752917744?utm_source=wechat_session& ...