开源软件怎么赚钱?



说实话,即使从全球的角度来看,商业上成功的开源项目也不是特别多。首先,开源本身并不是商业模式,就像所谓的互联网模式,用户免费下载和使用服务并不是商业模式,从广告主、卖家收取佣金才是商业模式。开源也是快速获取用户的方式,只不过用户的类别有所差异,开源项目大多数是功能软件,其用户也大多是B端企业类用户(工作需要),而非C端消费类用户。由于开源项目早在PC时代就诞生了,而互联网模式是移动时代的产物,但他们的本质是一样的(如何快速获取用户),应该说开源是互联网模式的鼻祖。
虽说开源项目赚钱并获取商业上的成功不容易,但还是有的,比如耳熟能详的Red Hat、MySQL,也有小而美的Mirantis、Cloudera、MongoDB,他们的成功有一些共性。

  • 从项目开始的时候就对商业模式问题有考虑。这不是废话么,做项目怎么能不考虑赚钱,但很多人起码在项目最初期是没有想过的,直到项目开始被大量下载,才琢磨是不是能从项目上赚点钱。其实开源项目典型的收费模式就那几个,一个常见的是向大B企业卖企业版软件,大B客户有很多的预算,不像中小企业在IT上的预算很少,而企业版软件往往在安全性和管理功能方面更加完备。另外一种常见的收费方式是提供SaaS服务,我认为此类模式是瞄着中小企业而非大B企业,因为SaaS的稳定性和服务等级还是不满足大B客户需求的。

举个例子,红帽公司从一开始就对商业模式有清晰的思考,他们一开始即在书中夹带Linux安装盘促进社区用户的发展,也在推动出售企业版软件的业务。公司管理层在这两者之间划了清晰的边界,社区免费版叫Fedora,企业版叫RHEL(Red Hat Enterprise Linux)。他们敏锐的体察到大企业的CIO们更在乎软件的稳定性而非功能性,他们需要企业级产品来支撑核心Linux应用。红帽公司一方面积极维护社区版Fedora,每六个月升级一次并时不时增加新功能,一方面积极推销基于标准Intel架构的企业版产品。公司在创造10亿营收的同时,也推动Linux成为服务器端统治地位的操作系统。

另外一个具有商业前瞻性的开源公司是Cloudera,基于开源项目Hadoop提供大数据软件产品。和红帽一样,他也把一些安全、性能优化和商业分析方面的功能打包在一起形成企业版产品——Enterprise Data Hub。可以对照的是,Cloudera的竞品之一Hortonworks,则采取技术支持付费的方式,这种方式要更艰难一些。为什么更艰难?可以拿服务器软件Apache来说明,很多供应商基于它给大B客户提供技术服务,大B客户往往担心基于开源软件的产品不够稳定,愿意在交付初期支付技术服务费,就像买保险一样,但一段时间过后,客户逐渐对软件使用习惯,技术服务的价值很难体现,客户也就停止付费了。因此从长期看,技术支持的商业模式缺乏可持续性。

  • 选择适合的开源协议以配合你的商业模式。别人基于你的开源项目所打造的产品属于谁,这是开源协议决定的。有些开源协议很松(比如Apache),无论谁都可以基于你的项目打造自己的闭源产品,有的开源协议比较严格(比如GPL),只有开源项目的拥有者才能进行商业化运作。

更松的协议当然会吸引更多人参与到开源项目中,方便你的项目被其他开源项目引用或集成,更有利于生态系统的建立和项目的普及,产品功能的迭代也更依赖群众的力量而非单个弱小的创业公司,客户也会觉得更放心。然而,无论谁都可以在你的项目上加些功能就往外卖,会让你自己的商业化之路非常困难,因为很难在竞争中保持产品的差异化,也会让市场非常的碎片化。比如云计算非常流行的OpenStack,这个项目由OpenStack基金会运营,早期很多硬件大厂比如Intel、HP、Dell、Juniper都参与进来,PayPal、沃尔玛、Symantec这样的大客户也因为这些大厂才敢于试用。但是随后问题出现了,这些硬件大厂都有自己的算盘,相互之间竞争,导致产品之间不兼容,此时红帽和Mirantis站出来宣称自己是中立的,创造了一点生存空间。

MongoDB尽管采用AGPL紧协议,仍然非常流行,很大程度上还是产品确实过硬,很多开发者发现这款文档型数据库非常简单灵活,比传统关系型数据库好用很多。不到两年的时间,MongoDB就积累了几百万的下载量,现在用户几千万。可以说,如果你对自己的产品足够有信心,不需要依托其他项目,那采用严格的开源协议更利于商业拓展,不过在早期需要投入比较大的精力来经营社区。

  • 技术支持服务是必要的,但不要指着它实现收入。开源软件确实在企业IT架构中颠覆了很多传统软件,比如MongoDB和Cassandra对Oracle,OpenStack和Docker对VMware,Linux对Solaris和Windows Server,然而驱使它们成功的并不是技术支持和在站服务。当然,一开始确实需要软件提供商手把手教客户如何部署产品,尤其是如何将新系统与旧系统适配,无论Hadoop、OpenStack还是Cloud Foundry,这些开源项目早期都依赖专业团队为他们的标杆客户提供技术支持。

但如果把商业模式建立在技术咨询或在站支持就比较麻烦了,首先这种模式的毛利非常低,只有20~30%,而卖产品的毛利一般能达到90%,而且这种模式的持续性差。即便你非常成功,有几百万用户,充其量也只能服务几百家。并且,卖服务还可能会与埃森哲、IBM这样的IT咨询巨头竞争,他们本来可以成为你的合作伙伴,为你带来客户。所以,好的、可持续的商业模式应当是对核心产品的订阅,技术支持服务是用来确保用户、和合作伙伴能用好你的产品,而不是收入的来源。事实上,我们应该不断得改善产品的易用性,培训合作伙伴,削减自己的技术支持团队,尽量让别人来接手。

  • 关注已有客户满意度远比开发新客户重要。开源软件的销售周期与传统企业软件非常不同,传统2B软件说服客户使用产品和说服他们付费往往是一个连贯过程。开源软件的这两个过程是分离的,说服客户使用你的产品不难,毕竟免费,但说服他们付费是一个完全不同的过程。对习惯了销售传统软件的人而言,做开源软件销售可能会比较迷茫,因为他们花很大精力说服客户使用软件之后,并不会马上带来销售业绩。对于一个早期公司来说这不是什么问题,因为扩大用户基数是最重要的,但随着公司进入成长期,开始关注业绩数据。这个时候你就要提醒销售,不要急着寻觅新客户,而要持续关注并改善现有客户的满意度,他们才是收入大户,满意的客户会买更多,会买更贵的产品,这才能有健康的收入保障研发,这与传统企业软件的销售是不一样的,传统销售的工作就是不断寻觅新客户。

销售人员应该根据订阅收入来评价业绩,同时应该另有一个团队专注于开源社区的维护和用户的增长,这很可能是两类不同的人。开源软件的销售不一定要精通软件,MongoDB有非常成功销售以前是开运动服装店的,也有以前是清理排水沟的,他们的共同点是对提升客户满意度非常执着。

开源软件是能即吸引用户又赚钱的,要点是:1.在一开始就规划合适的协议,2.选择合适的服务/产品模式,3.建立合适的销售团队。

本文翻译自TechCrunch 2016年的文章《The Money In Open-Source Software》,作者Max Schireson和Dharmesh Thakker,前者曾是MongoDB的CEO,后者曾任Intel Capital执行总监,目前都在Battery Venture。

“开源软件怎么赚钱?”的一个回复

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注