开源简史

【猎云网(微信号:)】10月8日报道(编译:葛兰东) 编者注:开源软件(OSS)运动已经创造了一些对

【猎云网(微信号:)】10月8日报道(编译:葛兰东)

编者注:开源软件(OSS)运动已经创造了一些对我们来说至关重要,且被广泛使用的技术,包括操作系统、Web浏览器和数据库。如果没有开源软件,我们的世界将无法运转,或者至少无法像如今这样运转。

虽然开源带来了惊人的技术创新,但商业创新(尤其是最近“软件即服务”的兴起)对这场运动的成功同样至关重要。由于开源软件的定义是一个任何人都可以免费使用、修改和分发的软件,因此,与其他类型的软件公司相比,开源企业需要不同的模式和不同的市场定位。

Peter Levine作为一名开源的开发人员、企业家和投资者,已经工作了30多年。他最近做了一个名为“开源:从社区到商业化”的演讲,这个演讲借鉴了他自己的经验以及对几十位开源专家的采访。下面是该演示文稿的书面版本,Peter在其中跟踪了开源软件的兴起,并提供了一个实用的端到端框架,用于将开源项目转变为成功的业务。

开源最初是一个边缘活动,但后来成为了软件开发的中心。在开源的早期(当时还没有被称为开源,而是免费软件),有一个轶事是关于Linux/Unix的命令[~}$BIFF,它可以在收到新邮件时通知用户。这个命令以伯克利某个嬉皮士的狗命名,这条狗会跑出来对着邮递员吠叫。我喜欢这个轶事,因为早期的开源是如此的边缘,以至于一个重要的命令是以开发人员的狗的名字命名的。

我从事开源工作已有几十年了,最初是作为麻省理工学院Athena项目和开放软件基金会(Open Software Foundation)的一名开发人员,后来是开源公司XenSource的首席执行官。在过去的10年里,我一直在一些与开源有关的公司董事会工作。从开发人员到董事会成员,我见证了开源的演变,见证了建立在开源项目基础上的大公司。

我真的认为现在是建立开源企业的最佳时机。商业创新对开源运动至关重要,这里我提供了一个将开源产品推向市场的框架。

开源复兴进行时

过去的十年是开源的复兴。过去的30年里,大约有200家公司是以开源为核心技术的。这些公司总共筹集了超过100亿美元的资本,在过去10年里,它们的交易规模越来越大。事实上,四分之三的公司和80%的融资都是在2005年后完成的。我认为我们正处在这一复兴的开端。

这些投资正在带来更大规模的IPO和更大规模的并购交易。

有趣的是,在2008年,mySQL被甲骨文以10亿美元的价格收购。当时,我确信10亿美元是任何开源公司所能获得的最高限额。这是多年来难以逾越的障碍,因为软件行业将开源视为一种商品,10亿美元是它们能给的最高价格。

但看看最近几年发生了什么。我们有Cloudera、MunGoDB、MuleSoFT、Help和Github,它们是数十亿美元IPO或并购交易的一部分。当然,还有红帽。1999年,它以36亿美元的价格上市,而今年,它以340亿美元的价格卖给了IBM。在未来,我很高兴看到是否会有新的标杆出现。

开源还扩展到了软件的更多领域。传统上,开源软件主要是围绕企业基础架构开发的,如数据库和操作系统(如Linux和MySQL)。随着当前的复兴,几乎所有行业都在积极发展开源软件,例如金融科技、电子商务、教育、网络安全等等。

那么,复兴的背后是什么?为了理解这一点,让我走访记忆的巷子,来探寻开源的历史。

从免费到SaaS

开源0.0——“免费软件”时代

开源始于70年代中期,作为一名程序员,我把这个时代称为0.0——“免费软件”时代。学者和业余爱好者开发了软件,整个风气是“免费提供软件”。随着阿帕网让位于互联网,网络使得协作和交换代码变得更加容易。

我记得在麻省理工学院,以及在开放软件基金会工作的时候,我不知道工资是从哪里来的。当时还没有商业模式的概念,“免费软件”开发背后的资金(如果有的话)是以大学或企业研究资助的形式提供的。

开源1.0——支持和服务时代

随着Linux在1991年的到来,开源对于企业来说变得越来越重要,并被证明是开发核心软件技术的更好、更快的方法。随着越来越多的基础性开源技术,开源社区和企业开始尝试商业化。

在1998年,开放软件计划(Open Software Initiative)创造了“开源”这个术语,大约在那个时候,第一个真正的商业模式出现了,它与红帽和MySQL,以及许多其他在免费软件之上提供付费支持和服务的软件一起出现。这是我们第一次看到一个可行的经济模式来支持这些组织的发展。

当时值得注意的另一件事是,与专利公司相比,开源公司的价值显得微不足道。当我对比红帽和微软、MySQL与甲骨文、XenSource与VMWare时,我发现封闭源码公司的价值远远大于开源公司。业内人士认为,开源软件这种商品,永远不可能去接近于一家专利公司潜在的经济价值。

开源2.0——软件即服务(SaaS)和开放核心时代

到本世纪头十年中期,这些估值开始发生变化。云计算打开了这个缝隙,它允许公司开放运行软件即服务。一旦我可以在云端设置一个开源服务,用户就不知道也不关心是否有开源或专利软件,从而导致开源具有和专利公司类似的估值,这表明开源确实具有真正的经济和战略价值。

一系列的收购,包括Citrix对我自己的创业公司XenSource的收购,也使开源成为大型科技公司的关键组成部分。2001年,微软首席执行官Steve Ballmer称Linux是“癌症”。现在,就连微软也在其技术堆栈中使用开源软件,并在开源项目上投入巨资。因此,下一家开源初创公司很可能会从一家大型科技公司中分拆出来,就像从学术研究实验室或开发人员的车库中分拆出来一样。

开源的良性循环

开源的历史表明,它的兴起是由于技术和商业创新的良性循环。在技术方面,开源是创建软件的最佳方式,因为它加速了产品反馈和创新,提高了软件的可靠性,扩大了支持范围,推动了采用,并汇集了技术人才。开源是一种技术驱动的模型,这些特性从“免费软件”时代就已经存在了。

然而,只有在技术创新与商业创新相结合的情况下,才能充分发挥开源的潜力。如果没有商业模式,比如付费支持、开放核心和软件即服务模式,就不会有开源的复兴。

经济利益创造了一个良性循环。我们拥有的商业创新越多,开发人员的社区就越大,从而刺激了更多的技术创新,继而也增加了开源的经济激励。在演讲的最后,我将谈谈我认为3.0中开源的未来,并指出目前在技术和业务方面正在发生的一些有趣创新。

但首先,让我们谈谈如何建立开源业务。

商业成功的三大支柱

开源企业的成功有赖于三大支柱。它们最初以阶段的形式展开,一个阶段通向下一个阶段。在一个成熟的公司,它们就成了需要维持和平衡业务可持续发展的支柱:

项目社区契合度,指你的开源项目创建了一个开发人员社区,他们积极地为开源代码库做出贡献。这可以通过GitHub的星级、提交、拉取请求或贡献者增长来衡量。

产品市场契合度,指用户使用开源软件。这是通过下载和使用量来衡量的。 价值市场契合度,指你找到了客户愿意为之付费的价值主张。这方面的成功是以收入来衡量的。 这三个支柱必须贯穿公司的整个生命周期,并且每个支柱都有一个可衡量的目标。

项目社区契合度

项目社区契合度是第一个支柱,它对开发人员来说,关系到至关重要的社区质量以及项目的吸引力。尽管开源软件社区的规模各不相同,但是强大的追随者和不断增长的人气是一个开源软件项目激发一群开发者强烈兴趣的关键指标。这些指标包括GitHub的星级、协作者的数量和拉取请求的数量。

开源项目可以在许多地方启动,包括大公司或学术界。但是项目在哪里开始并不重要,重要的是有一个项目负责人来推动工作,并且这个项目负责人通常会成为商业实体的首席执行官。

实现项目社区契合度需要高度接触的参与性,以及对开发人员社区的持续性认可。最好的项目领导者将在包容和果断之间达成微妙的平衡——做出明确的决定来提供项目方向,同时确保每个人的声音都被听到,贡献被认可。当实现这种平衡时,这个项目将会保持健康的发展,并吸引更多的人来贡献和分担这个项目。

作为投资者,我们强烈倾向于为开源软件项目的领导者提供资金,因为他们了解代码库的输入和输出,是维系开发者社区精神和愿景的守护者。

产品市场契合度

一旦你有了一个项目领导者和一群活跃的合作者,下一个阶段就是理解和衡量产品市场契合度。在这个过程中,项目负责人需要明确:开源软件帮助解决的问题是什么?它是为谁解决那个问题的?市场上还有什么其他选择?如果没有对用户及其用例的清晰理解,项目可能会被引导到多个方向并失去动力。

当以上问题得到回答时,你将观察到通过下载数量衡量的有效采纳。产品市场契合度是未来保证销售的先兆。理想的情况下,开源软件用户会成为增值产品或服务渠道的引导者(这一点我们将在“上市”一节中详细介绍)。

在研究产品市场契合度时,重要的是要考虑如何描述你的商业产品,以及你将如何提供人们愿意为之付费的价值。我想指出的一个常见陷阱是,有时候开源软件产品可能太好了。产品市场契合度可能非常好,因此不需要价值与市场相契合,这意味着没有自然延伸来驱动收入。因此,当你在推动有效采用时,你和你的社区应该仔细考虑你将来可能会将什么商业化。

价值市场契合度

最后的阶段,往往是最困难的,是寻找价值市场契合度并产生收入。当产品与市场相适应时,往往考虑到的是个人用户;而当价值与市场想契合时,通常以部门和企业购买者为中心。价值与市场契合的秘诀是专注于顾客关心和愿意支付的东西,而不是你能赚钱的东西。

价值市场契合度通常与产品的功能关系不大,而更多地与产品如何被采用以及它所驱动的价值类型有关。开源软件提供的价值不仅在于它的功能,还在于它的操作优势和规模特性。因此,在考虑商业产品时,需要考虑以下问题:你的产品是否解决了核心业务问题或提供了明确的运营收益?是否很难复制或找到替代品?在开源软件中没有实现的规模化能力,是否需要团队或组织?

虽然不是一个详尽的清单,但开源公司已经发现了价值市场契合度的特征,例如:

RAS(可靠性、可用性、安全性) 工具,附加组件 性能 审计 服务 选择商业模式

你选择什么样的商业模式取决于你能为客户提供什么样的价值,以及如何最好地提供这种价值。需要注意的是,这些商业模式并不是排他的,并且可以使用多个模型的元素构建混合业务。

支持和服务是开源1.0时代的模式,而红帽确实在这方面垄断了市场并实现了规模化。如果你决定沿着这条路走下去,你可能最终会与红帽竞争。

开放核心模型是开源软件一个很好的模型,它在开源软件的基础上增加了专有代码。如果你拥有超级有价值的组件(如安全性或集成),并且这些组件可以保持专有性而不会损害开源的采用,那么开放核心将是一个很好的模型。需要注意的是:在开放核心环境下,当决定哪些特性属于哪个代码时,社区内的疏离可能会成为一个问题。我在自己的公司看到了这一点,与社区找到正确的校准是非常重要的。最终的陷阱可能是,你的社区决定他们不喜欢你在专利方面的行为,他们会撇开这个项目,或者在同一个代码库周围启动一个新项目。

在软件即服务模型中,你可以提供完整的托管软件。如果你的价值和竞争优势在于软件的卓越运营,那么软件即服务是一个不错的选择。然而,由于软件即服务通常基于云托管,因此公共云可能会选择接受你的开源代码并与之竞争。

云与竞争的矛盾共生

一旦开源业务达到一定的成熟程度,公共云的威胁和许可的话题就有可能出现。许可证是一个备受争议的话题,虽然它很重要,但我看到公司在早期花了太多时间讨论授权许可。

我还认为,我们过度关注了来自公共云供应商的威胁。虽然这些供应商可能会提供开源项目,但迄今为止,据我所知,没有一家开源公司完全被云提供商取代。

对于开源公司来说,更重要的问题是:如果代码不是一个有竞争力的东西,那么什么才是呢?

答案回到了最初关于开源为何强大的讨论:社区和你对开发的看法。独立的开源公司有三大竞争优势:

1.企业客户不希望被供应商锁定。 2.他们想从编写代码的人那里购买。 3.大公司没有你的专长。

当你把这三件事结合起来时,我认为这会形成一个真正具有竞争力的附加值,也是为什么我们还没有看到大型云完全取代独立的开源公司。

既然我们已经讨论了这三个支柱,那让我们看看如何围绕它们构建一个组织。

开源公司要回答的一个更重要的问题是:如果代码不是一个竞争性的东西,那是什么?答案是社区。

上市:开源是渠道的顶端

开源社区是由开发人员驱动的渠道活动的顶层。建立一个业务就是将这个开源的渠道顶部,连接到一个强大由价值驱动的商业产品上。渠道的概念并不新鲜,但对于开源公司来说,它的表现确实有所不同。在这一节中,我想谈谈开源工作是如何出于商业考量,来整合和编织渠道的不同阶段,以及如何使每个阶段与其他阶段和谐地工作。

开源市场的渠道分为四个阶段,每个阶段具有关键的组织功能。

开发者社区的管理驱动你对开源产品的意识与兴趣。 有效的产品管理为你的免费开源产品带来了用户基础。 领先地位的生成和业务发展,用以评估这些用户的意图,来识别企业中的潜在价值和销售机会。 自助服务(自下而上)和销售服务(自上而下)可以向企业交付和扩大付费产品与服务的价值。

让我们更详细地看一下每个阶段及其功能。

第1阶段:意识和兴趣——开发者社区管理

通过用户注册和下载量来衡量开发人员的口碑,对渠道后期的成功至关重要。在公司成立初期,创始人往往是公司成立初期的第一批传道者。随着公司的发展,拥有一支由开发人员组成的专门团队是非常重要的。虽然这通常是一种罕见的组合,但也很容易发现某人在技术和沟通技巧上所具备的双重能力。一旦你这样做了,雇佣那些开发人员,让他们参加会议,利用社交媒体,与开发人员社区展开接触,并解释你的项目的重要性和价值。

虽然你需要调整你的销售和开发人员的宣传信息,但你不希望你的社区经理是真的在“销售”。他们应该引起人们对产品的兴趣,并让人们了解产品,任何对销售的强调都可能会损害他们在社区中的信誉。

在你启动业务时,你还需要决定它是否与开源项目的名称和品牌相符。公司在这两方面都取得了成功,而且各有利弊。独立的名称,如Databricks和Spark,可以防止品牌稀释并提供许可灵活性,而相同的名称通常可以为开源软件项目提供更多的动力,但如果他们认为自己被用于牟利,则可能会疏远开源社区。

最后,用户注册和下载是衡量开源软件和专利软件的常用标准,所以秘诀不在于你测量的是什么,而在于测量的精度。在XenSource,我们一度得到了不准确的数字,因为我们的下载度量包含了大量已经启动但尚未完成的下载。你通过何种方式去衡量用户的注册与兴趣将防止下载成为一个虚荣的指标,这种虚荣并不会带来下一个阶段。

第2阶段:斟酌——产品管理

接下来是“斟酌”。一旦你开发了一个开发者社区,你的目标就是最大化开发者和用户的喜爱、采纳和价值。开源渠道的第二阶段通常是通过产品管理来完成的。

有效的产品管理将执行许多功能来支持这个阶段:管理封闭的和开源的路线图,将决策传达给开发人员和用户,在产品中构建分析以收集更多关于使用模式的信息并预测销售机会。

与专利软件不同,开源企业通常需要管理两个路线图。开源软件的首席执行官和创始人通常把大部分时间花在管理这些路线图,以及让其中一个满足另一个。我喜欢在一个单独的页面上展示这些交错和关联的方式,以及每种方式都有哪些可用的功能。

最成功的公司和创始人都有一个框架或指导方针,帮助他们描述和沟通什么是付费的,什么是免费的。例如,PlanetScale致力于保留任何能够被供应商锁定的开源项目,这种价值观可以维护开源社区和企业客户的良好意愿。有一个功能比较表是很有帮助的,这样客户和你的社区就能理解免费软件和付费软件所提供的不同价值。

研究和开发的透明度以及将社区反馈纳入您的产品路线图对于维护社区信任尤为重要。许多成功的开源公司在这方面仍然很活跃,并且常常是相应开源项目的主要贡献者。例如,Databricks对Spark的贡献是其他公司的10倍。

说到产品本身,你应该建立分析,来帮助你了解你的用户,并预测开源软件用户转化为买家的百分比。一旦用户拥有了产品,产品使用分析将帮助识别产品市场适合度和价值市场适合度,以及从免费用户转向付费用户,以预测销售机会的人数。例如,如果每100个用户中有5个始终如一地转换为付费用户,那么你可以使用5%作为一个估计值来构建你的财务模型。

这将是一个复杂的过程,你应该试验产品包装,用以识别免费和付费之间的最佳路线。对于许多开源创建者来说,这个产品实验是一个永无止境的旅程,他们进入市场的成功取决于紧密的产品反馈周期。

第3阶段:评估和意图——潜在客户开发和业务发展

评估和意图作为渠道的下一个阶段,是通过潜在客户开发和销售开发来验证和完善这些理论的。目标是找到从用户到企业买家的路径,通过销售领域中合格的潜在客户(SQLs)来衡量成功与否。

第一部分是对外营销。基于开发者在渠道顶端所设定的那些众所周知的模式,对外营销应该优先关注特定的细分市场。关注你的开源用户,你将了解哪些角色和部门正在使用产品,以及他们的兴趣是什么。然后,你可以将你的对外营销目标定位于那些认为你的产品有价值的工程经理、开发人员或IT部门。

接下来是销售开发工作。销售开发代表(SDRs)应该成功获得客户,而不是采用过度销售的方法,并且对用户的需求和他们使用产品的情况永远保持好奇。

当你的活动已经与客户有了有效交流时,有两个主要的筛选条件来限定它们:1)开发者或用户代表什么组织?2)他们是否下载或参与了你的项目,以获取与更大的企业目标相关的东西?

第4阶段:采购与扩张——内部和现场销售

一旦你有合格的潜在客户,你可能有两个企业销售议案。第一种可能是自下而上的方式,其中企业内的用户有组织地采用并为产品付费。一般来说,这个产品是为个人设计的。第二个是销售-服务方式,它使用更传统的自上而下来在部门层面上达成交易,或者扩大企业间的使用。

成功和失败是什么样子

正如我的同事Martin Casado在他的《增长、销售和B2B的新时代》中指出的那样,协调持续性的增长和企业销售,可能会导致开源业务中几种常见的失败模式。首先,你的开源用户不会带来买家。在这种情况下,你有很好的产品市场契合度,但没有价值市场契合度。

在第二种失败模式下,你的开源软件项目增长落后于你的企业销售。在这里,你的产品市场契合度可能并不那么好。在第三,你的商业产品会破坏开发者的信誉。可能有太多的私有资源而没有足够的开源资源,你的开源项目就会枯萎。

渠道的顶部为接下来的所有内容提供了关键,所以首先在开发者社区、开源项目和用户面前进行正式的市场营销和销售。永远不要忽视这三个核心问题:谁是你的用户?谁是你的买家?你的开源和商业产品如何为每个人提供价值?

如果成功,你可能会看到类似这样的图表。Y轴是每个客户的收入,X轴是时间。这是我作为GitHub的前董事会成员直接观察到的,它显示了自下向上和自上向下的销售,因为它们在收入上是一致的。这里的要点是:如果你的收入看起来像一块蛋糕,这是一个好迹象。其中的一条线是来自个人的自下而上的收入,通常,这是一条收入线。下一个收入线可能是销售给部门的买家,但这是自上而下的,通常使用内部销售。蛋糕的下一部分是现场销售,或直接销售,它们销售或扩大了整个企业的帐户。为了优化每一条收入线,不要让销售行为就这么发生;一定要找到一个拥有特定功能并有目的地推动工作的人。

最后,根据你的产品,你可能只有自助服务或只有内部销售。这是可以的,这取决于产品的复杂性,以及在哪里和如何最好地使用它。我确实发现大多数开源公司都有一些自上而下和自下而上行动的组合,它们往往从自下而上开始,然后在其上构建一个收入扩展功能。

开源3.0——开源是每个软件公司的一部分

随着软件席卷全球,开源正在吞噬软件世界。

如今,从Facebook到谷歌,几乎所有的大型科技公司都是在开源软件的基础上开发的。越来越多的公司也在建立自己的开源项目——例如Airbnb有30多个开源项目,谷歌有2000多个!

今后,这种良性循环将继续下去。在技术上,人工智能、开源数据和区块链是一些新兴创新的例子。下一代商业模式可能包括:广告支持的开源软件,比如大型私有企业支持开源项目;数据驱动的收入;以及加密货币,这些货币可以使区块链货币化。

我相信开源3.0将扩展我们对开源业务的看法和定义。开源不再是红帽、Elastic、Databricks和Cloudera;它将至少部分地成为Facebook、Airbnb、谷歌,以及其他任何将开源作为其堆栈的那种企业。当我们以这种方式看待开源时,正在进行中的复兴可能仅仅是在它的初级阶段。开源软件的市场和可能性比我们所意识到的要大得多。

打开APP阅读更多精彩内容