免费增值的商业模式

我在《企业实践开源的动机》《如何应对云厂商的“搭便车”行为》两篇文章中对这种商业模式已经有详细的介绍和议论。鉴于最近企业服务领域的创业公司以源代码可读为卖点,并大肆渲染“开源 vs. 云厂商”的对抗氛围,我从其中希望和 OSI 定义的开源区分开来的观点出发,尝试为这种模式做一个定义和说明。

其实,这种模式无需再另寻名字,MongoDB Inc. 的 CEO 提出的免费增值(Freemium)就是最确切的。当然,或许还会有其他更有利于传播的名字。

简单说来,免费增值的模式有两个要点。其之一是禁止其他企业组织商业竞争,其之二是允许不竞争的用户在某些情形下免费使用。

首先需要承认一些事实。MongoDB 改变协议以后,仍然有大量免费用户将自己的业务架设在 MEAN Stack 上。Airbyte 虽然打脸永远使用 MIT 的承诺,但是不少用户在免费内部使用的情形下都有很好的体验。CockroachDB、ElasticSearch 和 StarRocks 也有自己的拥趸,在不竞争的前提下愉快的免费使用。

我说这些,是为了说明免费增值的商业模式尽管不是 OSI 定义下的开源,但是它们也为用户带来了价值,它们并不是邪恶的。

我对这种商业模式并不反感,只是认为他们不应该也没必要假借“开源”的名号来扭曲自己。既然他们都认为 OSI 跟不上时代了,那么用免费增值模式来替代正好。

再来看到这种模式诞生的背景。不同于以个人爱好者为主体的开源项目,面临云厂商挑战且感受到切身利益受损的,往往是起初就指望制造一个高质量软件并销售赚钱的公司。这些公司从创立伊始就进行融资,投入了大量的人力物力制造出复杂的高质量软件,这是一定要取得经济上的回报的。

翻阅任何一本技术创业的书籍,其中介绍的在这种技术研发模式下取得回报的久经考验的方式,就是通过专利保护获得相对垄断地位,并以此收获垄断利益。因此,在有人开创性的想出其他高效的盈利模式,或者技术商业化的格局发生变化之前,企业总是不得不考虑实现垄断来盈利的手段,尤其是当它真的有这样的能力的时候。

我们可以看看那些没有选择这条路的项目。

Vue.js 的维护者不都是亿万富翁,他们通过接受捐赠、举办活动和提供咨询和支持等方式获得收入。不是每个项目发起人都要靠这个项目做一个百亿美金的公司,只是让自己活得不错并不需要和云厂商对抗。例如,项目核心成员可以选择加入云厂商工作并挣得高收入。

Pulsar 的核心成员创办了 StreamNative 公司,Cassandra 的核心成员创办了 Datastax 公司,RedHat 招募 Linux 专家提供技术咨询、支持和定制。这些企业的核心共同点有两个。第一个是依托的社群项目并不是自己的知识产权,项目初创的阶段在公司开展商业化之前就已经完成。第二个是能够招募到形成事实相对垄断的技术团队,并在社群运营方面能够做到避免分裂。

我们再看到那些选择免费增值的公司。

MongoDB Inc. 早期竞争不过云厂商,其实还有他们根本没怎么做云服务的原因在。当他们全力上云的时候,迫使云厂商进行商业合作而不是直接售卖 MongoDB 同时被提上日程。由于 MongoDB Inc. 确实有改协议的能力,于是这种手段就被采用。

Elastic 的情况类似,主要也是应对 AWS 的竞争。不过这里值得一提的是,SSPLv1 其实是 MongoDB Inc. 在提告 AGPLv3 违反无果以后沿着 Copyleft 框架在法律上的变通;而 ELv2 则是彻头彻尾的禁止竞争协议。

到了 CockroachDB 和 Airbyte 的年代,情况又发生了变化。它们面临的商业对手,不只是云厂商,还有同样做云服务的技术提供商。

实际上,随着云服务越来越深入人心,利用云服务越来越便捷,越来越多创业公司并不跟云厂商直接竞争,反而能够轻松地用上云厂商提供的 PaaS 和 IaaS 设施构建自己的服务。

同时,由于大型云厂商自己技术布局日渐完善,内部直接对标的产品早已有之,即使是竞争也不是 fork 型的竞争,自然也就触碰不到被“搭便车”的敏感神经。

这种情况下,其他同类公司才是最大的竞争对手。CockroachLabs 和 AirbyteHQ 选择禁止竞争的免费增值模式,很大程度上也是应对这类竞争。

我们再仔细看看免费增值的商业模式是如何禁止商业竞争的。

  1. MongoDB 选择的 SSPLv1 是 AGPLv3 “可怕的胜利”的延续,通过要求提供同类服务的技术提供商开放整个 MongoDB 的整个技术栈,迫使这些企业由于无法接受这样的条件转而选择签订商业合同获取专有协议。对于用户来说,业务只是搭建在 MongoDB 的基础能力上,并未对外提供同类服务,因此免费使用也就没有负担。
  2. ElasticSearch、Airbyte 和 StarRocks 选择的 ELv2 是一个简单的禁止竞争协议,明确的写出禁止提供同类服务,并且禁止破解密钥锁定的企业级功能。这一协议很好地体现了免费增值模式的要点:禁止商业竞争。项目发起公司可以锁定企业级功能,因此这样开发的软件认知上其实与专有软件无异。只不过如果你只是下游用户,那么使用是无需付费的。同时一些内部系统对接和小修小改也都是允许的。当然,这些项目往往不止一个软件协议,生态连接的部分会选择 Apache License 2.0 或 MIT 这样的宽松协议。我提过,这个硬件闭源,驱动开源有一定的相似之处。
  3. CockroachDB 和 MariaDB 选择的 BSL 1.1 与 ELv2 类似,多了不超过四年以后替换为开源协议的条款,少了密钥相关的条款。不过 CockroachDB 也不是一个协议走天下,有其他协议和补丁评审门槛来实现企业功能排他性的开发。
  4. Materialize 选择的 BSL 1.1 不是限制提供同类服务,而是限制部署集群。对于一个分布式系统来说,只能部署单机系统显然是非常受限的。这样的条款不仅限制了竞争者,同时还限制了不竞争的免费用户的体验,实际上等同于专有软件。这里需要说明的是,BSL 1.1 对协议提供方做出何种限制并没有具体的要求,因此会出现不同的项目限制条款不一样的情形。

总结一下,免费增值模式一定是禁止商业竞争的。至于还有没有其他的限制条件,则要具体情况具体分析。

可以看到,这显然不同于 OSI 推出的开源定义明确规定最小开放要求的思路,反而是一组最小限制共识的思路。因此我们确实需要将免费增值的模式和开源模式区分开来。

一句话带过免费增值模式下社群运营的策略:关注用户社群,激励生态整合,佛系看待内核贡献。如果还要再浓缩一些,那就是围绕用户打造流畅的生态。

最后,我想说的是免费增值模式作为一种成功的商业模式,为许多用户带来了价值以及众多情形下的免费使用体验,公开的源代码也有助于软件行业整体水平的提升,这都是好的。不过,由此推出的结论,应该是本文当中的免费增值新模式,与开源模式共存,而不是一个取代另一个的关系。

如同我在前文所说的两篇文章中都提到过的,个人爱好者仍然是开源软件绝对多数的组成部分,企业开源内部系统也绵绵不绝,开源运动的发展和高质量开源软件的制造一直在进步,当年不会因为微软等公司的 FUD 攻势消亡,如今也不会因为出现了免费增值模式就自我毁灭。实际上,诸如 Rust 编程语言、Zig 编程语言、Next.js 框架、Apache Ratis 分布式共识系统、Istio 服务网格框架等等等等的新生开源项目,源源不断地一直在诞生,推动着整个行业不断进步。