开源商业模式正遭受围攻
作者:Paul Dix / 用例, 开发者
2017 年 5 月 12 日
导航至
几周前,我在 PerconaLive(一个专注于开源数据库的会议)上发表了第二天开幕主题演讲。我的演讲题目是“开源商业模式正遭受围攻”,内容是关于开源数据库公司或任何开源软件基础设施正在面临的来自亚马逊网络服务、谷歌云和微软 Azure 等云供应商的存在威胁。这次演讲基于我过去三年半以来围绕 InfluxDB 和我们的其他项目构建开源业务的个人经验。这是演讲的视频以及我的观点摘要和会议参与者反响后的想法。我在演讲中谈到了一些我在这里不会涉及的事情,并对一些供应商说了一些煽动性的话,但您必须观看才能了解。
我在演讲中承认的第一件事是,开源不是一种商业模式。它是一种开发和交付软件的方式。我认为,在所有方面,它都远胜于闭源开发,但只有一个例外:赚钱(以及随之而来的能够继续投资于进一步开发的能力)。开源软件的开发始终是受到补贴的。无论是通过程序员在做其他事情时的空闲时间、投资者资金、捐款还是其他成功的业务(例如,搜索广告业务)来补贴。
作为试图将开源转化为可持续业务的开发者,我们必须回答的问题是:我们的补贴将来自哪里?一些更常见的方法是咨询和专业服务、支持和培训、生产工具和监控、开放核心以及软件即服务 (SaaS)。每一种方法都有其问题。
咨询没有意义,因为您最终会让许多顾问在编写开源软件时从事非计费工时。在一家普通的咨询公司中,您希望每个人 90% 或更多的时间都为客户计费。如果您一半的开发人员在编写开源软件而不是计费,那么您能期望的最佳利用率是 50%!您最好围绕一些已经成功且大型的开源项目开展咨询业务。然后您可以成为专家并按小时计费,同时只贡献客户直接付费的补丁修复程序。这绝对不是理想的,因为我们希望找到一种方法来花费大部分时间直接编写开源代码。
支持难以维持,因为它没有为人们购买提供强制功能。这当然是我们 InfluxData 的经验。在转向开放核心之前,我们提供了将近一年的支持,在那段时间里,我们只签约了少数客户。此外,支持会在您和您的社区及用户之间产生不正当的激励。理想情况下,您的软件应该易于使用并在生产环境中运行。您希望世界上其他人成为您项目的专家。但是,这两个目标都使销售支持变得更加困难。最后,支持合同的续订率非常糟糕。几年后,您的客户将获得一定程度的专业知识和对项目的熟悉度,并开始质疑他们最初为什么要为支持付费。
我认为生产工具和监控是过去 15 年来大多数开源软件供应商一直坚持的商业模式。这种模式的问题在于,您现在正在与其他监控供应商竞争,更重要的是,您现在正在与云供应商竞争,这些供应商提供托管您的免费软件。以 AWS 托管 Elastic 为例。他们没有商业关系,对于在 AWS 上运行 ElasticSearch 的客户,他们没有理由从 Elastic 购买支持或监控软件。
这些动态促使我们在去年采用开放核心模式。也就是说,我们有一个核心的开源项目,以及一个闭源的商业分支,它增加了更多功能(在我们的例子中是 HA、集群和高级安全性)。几年前,开放核心的概念让我感到畏缩。它违背了我对开源软件的热爱。免费代码,您可以随意使用:建立业务、学习、添加和修改,并大致推进事物,而无需从头开始编写所有内容。这是一个艰难的决定,也是我至今仍在挣扎的决定。事实上,直到此刻我们一直在公开地开发所有内容,这使得它更加困难,因为它意味着我们正在从社区中拿走一些我们努力开发和拥抱的东西。
然而,在我们决定采用开放核心之后,我们立即获得了商业兴趣。人们联系我们并表示愿意为我们的软件付费。去年这个时候对我们公司来说至关重要。在商业方面更加积极主动的动机之一是,我知道我们必须在几个月内进行 B 轮融资。简而言之,我们需要有一个合理的故事来讲述我们将如何将这个项目转变为可以回报投资的可持续业务。即使这是一个艰难的决定,我仍然确信,如果我们没有做出那个决定,我们今天就不会作为一家公司存在,因此也不会贡献任何类型的开源软件。
我还没有谈到的最后一个模型是 SaaS。我认为这是开源软件的未来所在。但如果 SaaS 模型要取得成功,它更接近于开放核心。以 Databricks 或 Redis Labs 为例。两者都在其托管 SaaS 平台的闭源软件上进行了大量投资。这些代表了真正的护城河和障碍,可以阻止云中潜在的竞争对手采用 Spark 或 Redis 并托管它们。
云供应商的目标是使基础设施软件变得容易。首先,您不需要担心服务器和网络设备。然后,您不需要担心管理数据库或可扩展的对象存储。公司运营自己的基础设施的时代正在结构性衰落,就像一百年前建筑物运营自己的电力一样。随着云供应商的成熟,它们变得更加横向和更加纵向。它们的目标是各种基础设施软件,同时在协作、分析、监控和无数其他垂直领域推出软件。并且他们正在使用开源作为他们的构建块。
这意味着试图从开源基础设施软件中建立业务的公司必须找到新的赚钱方法。支持和工具是行不通的。咨询不是一项值得投资的业务。开放核心和 SaaS 风格的开放核心是我在这里看到的唯一可行的选择。更严格的许可是一种选择,但这并没有针对开源理想:其他人可以自由修改和使用您的代码而没有限制。这种免费使用正是推动我们在云和基础设施软件中看到的创新的原因。二十年前,由于所需的代码量和投资量巨大,没有哪个供应商能够希望提供当前供应商支持的所有服务。开源的梦想是我们使他人和我们自己能够站在巨人的肩膀上,推动技术进步。
不要误会我的意思,我不讨厌云供应商。恰恰相反,在我的职业生涯的过去十年中,我完全基于云平台构建。在那之前,我坚定地扎根于微软阵营,在过去的日子里,他们认为开源是一种危险的病毒。我很高兴在开源平台上在云中构建。但是,鉴于云供应商的巨大而明显的野心,希望建立长期可持续业务的开源开发人员必须制定明确的赚钱计划,同时继续投资于开源软件。
我看到越来越多的公司走开放核心和 SaaS 路线。InfluxData、Mongo、DataStax、Elastic、Databricks、RedisLabs、Pivotal (Cloud Foundry)、Hashicorp、Docker 等等。甚至 Kafka 背后的公司 Confluent,也在本周早些时候推出了他们的云产品。这是行业决定前进的方向。我们将继续努力解决的问题是,在哪里划清界限。哪些应该是开源和免费的,哪些应该是封闭和商业的?在 Influx,我们继续将超过 75% 的开发工作投入到开源软件中。我们大力投资开源,这仍然是我自己和整个公司的骄傲。上周,我们发布了 Chronograf 的第一个正式版本,这是一个完全开源的项目,它是我们整个堆栈的 UI。
在发表演讲后,会议上很多人都来找我。我演讲时非常紧张,因为我知道观众中许多人花了十多年的时间来构建开源项目和围绕这些项目的公司。来自不同项目的许多人说,他们在开发过程中也遇到了同样的挣扎。我与来自 MySQL 的许多开发人员进行了交谈,其中一些人在那里工作了 15 年。他们说他们经历了所有这些阶段,甚至尝试了一些其他没有奏效的疯狂想法(例如在文档页面上销售广告和销售品牌装备)。
很高兴听到我们不是唯一经历这些问题的人。尽管我的演讲标题带有耸人听闻的点击诱饵性质,但我还是比以往任何时候都更有活力,并且对开源软件的前景持乐观态度。在 InfluxData,我们将继续大力投资开源,同时确保我们的项目背后有一个真正的商业模式,以确保其长久发展。