根本就没有什么所谓的开源商业模式

开源,商业,与商业模式,是有着重要区别的,开源是软件开发生产的一种方式,当然你可以利用来进行商业活动,至于这个商业活动的模式是什么全凭创始人自己定夺。你要做的是将他们三者分清楚了。但是要记得:开源不会一统天下,它的初衷就是多样性!

Thu Jul 20, 2017 | 4400 Words | 大约需要阅读 9 分钟 | |

题记

开源之道的主要作者适兕在LC3中国的会议上拜会了知名的社区人物:Stephen Walli, 并表达了自己心中的崇拜之情。Stephen Walli先生不仅对于开源有着切身的理解和认识,也希望能够让更多的人知道他的想法,于是开源之道经过Stephen Walli先生的允许,将陆续的将他的文章翻译为中文,将他对于开源和商业的思考介绍给本土的读者。

前言

在这里我首先要提醒大家的是,撰写此文并非是要说明开源是“肮脏的商业主义”或“天下根本没有利他主义”。我的主张是经济学是关于行为而不是金钱,我是德鲁克的追随者(一家公司的存在是因为解决问题而创造了市场),我反对弗里德曼的观点(一家公司就是为股东提供回报而存在)。我信奉慷慨的人,我深信拉帕波特的解决方案对于囚徒困境是有效的,即始终以最慷慨的选择开始。我也坚信我们知道社区运行的意义,即如果你有一把篝火,是不介意我坐下来的。

我曾有幸观看了Bob Young“All things open” 上的演讲,Bob Young 在演讲中重申了一家成功的公司应是聚焦于其客户的成功。我以为这就是红帽创立之初所种下的DNA,直到今天红帽仍然以客户的成功为己任,不断的前进。我相信分享好的软件是使我们所有人成功的唯一途径,就像我们可以作为一个部落一样。我亦坚信软件没有规矩难成气候。

这并非是利他的行为,而是工程经济

开源的定义和出现已经有20多年的历史了,红帽在成立了22年之后成为了一家超过20亿美元的公司,MySQL和JBoss被以不错的价格所收购,Cloudera和Hortonworks正在成为下一个十亿美元的软件公司,但是我想要撰文表达的是,尽管上述这些公司取得了一定经济上的成功,他们和开源商业模式没有关系,根本就没有什么所谓的开源商业模式。

我坚定的相信自由许可下、协同开发的软件的经济价值,我们从一开始开发软件就在分享着软件,这要一直追溯到上世纪40年代末和50年代初,这是因为编写好的软件本质上是一项非常艰难的工作。经事实证明,软件的代码审核要比测试本身发现的缺陷更有效,所以构建软件开发的代码审查文化来创建更加优秀的软件。在软件工程和编程系统中很多的发明来自于代码的重用,或者是精简已有的代码以生产更好的软件。软件若是没有在如何构建和部署方面拥有严谨的规则,就不可能得到发展,软件本质上是动态的,而互联网所连接的世界让此动态更加的清晰。运行良好、规则清晰、自由许可的协同社区能够解决软件的这些属性,而且相比其它的开发方式能够开发、演进、维护更优秀的软件。而这点就是开源软件背后的工程经济原理。

案例——Interix

我要讲的这个使用开源的案例,真实的反映了没有开源商业模式这样一个事实。

Interix 是上世纪90年代后期的一款产品,旨在提供在Windows NT环境下运行Unix程序。其涵盖了约300多个软件包,许可证涉及到25个,以及微软 POSIX子系统的衍生开发,当然了还有Interix自身开发的代码。这些都是在开源软件定义之前的内容。开始的时候使用的是4.4BSD-Lite分发的,因为AT&T/USL的律师们建议这么做。这其中gcc编译器套件为我们的工具链提供关键支持,相当于一个SDK的作用,gcc保证了客户可以将他们的UNIX应用程序移植到Windows NT中。

此项目关于GCC移植到Interix环境中就让一位高级编译器工程师花了6~8个月的时间,然后在算上测试、集成等,项目则达到了10万美元,当时的gcc套件大约有75万行代码,COCOMO的计算结果表明,价值在1000万到2000万美元之间,这个取决于工程师们具体的赚取。也正由于此,我们最终的选择不是去自行编写一套编译器套件,这个成本的节约可是两个数量级。gcc是一款维护良好、健壮、稳定的编译器套件,即使凭空从零开始编写一个新的,未必有它优秀。而这就是使用开源的益处所在。我们同样可以看到红帽为Linux内核作贡献,然后交付Fedoar和RHEL的年净收益达到10%。Interix 当然也是基于开源上游项目,但是它现在自己搞了一个分支,这也就意味着Interix无法获得gcc主干上的新功能和新的bug修复。

经实践评估,gcc每更新一次大版本,我们需要6个月的时间重新集成,但是如果我们始终将自己的修复和提交在主干上进行的话,仅仅需要一个月的时间来测试和集成。所以成本是从10万美元,降到了1万~2万美元,这就是上面提到的节省数量级的证据。我们也尝试和Cygnus接触过,根据他们的解决方案,他们拥有主要的gcc的工程团队,即多个gcc的贡献者,但是他们要的价格也贵点,需要12万美元,但是要知道其它团队接手这个项目,大约需要14个月才能开工。另外Ada Core技术公司则承诺仅需要4万美元,而且声称第二月就可以开工。看起来这是一个十分明显的结果,决定是不言而喻的。(我们无法直接参与gcc项目下的五个子项目,尽管有些项目会非常尊重并接受我们的贡献,但是有些项目却对我们嗤之以鼻,只因为我们要往微软的平台移植,这对于一些人是勉为其难的。)

这里并不是说往上游贡献就是利他主义,这只是说这是一项工程经济学。这是正确的行径,而且增强了我们自己使用的编译器。这也是开源项目能够运转良好的秘诀所在。我以为个人作出为社区贡献的决定是明智的,因为在开源世界的关键贡献里有你的名字,这在某种程度上是最好的广告,这是最佳的简历:能够胜任项目中的工作,可以有效的和他人协作,并展示出对于技术的理解,这对于面试是绝佳的优势。当然了,它还非常的有意思。它不仅有趣而且很具挑战性。如果读者你是一名开发者的话,或者渴望改进自己的技能,那么为什么不去参与到上游社区?从而实现自己的价值并增强技能。

运转良好的开源软件社区对于技术是良性的促进。社区发展到一定的阶段,就是成为产品、服务(支持、咨询、培训)、书籍以及其它周边相关内容的生态系统。使用有机的模型的话,将开源比喻为一颗大树的话,有人可以从中获得木材,另外一些则可以取得其它如树叶、树枝、树根,进而构建很多其它衍生产品。

案例——红帽公司

红帽是一家典型的基于开源的公司,可以说是一类公司的典型代表。当我深度观察红帽的时候,我发现的并非是单单的开源。我看到的是一家专注于客户的软件公司,在发展的过程中历经三位不同的首席执行官,针对的是三个截然不同的市场环境,这三位首席执行官均在自己的任期内作出了最佳决策。

  1. Bob Young 以制作Linux发行版而创立了公司,他致力于亨氏番茄酱的品牌模式,试图让人们一提到Linux,就立马想到红帽。而此时红帽初期的成长恰逢互联网早期阶段,也经历了整个的互联网泡沫阶段,红帽的策略几乎都是品牌管理,红帽成功的融到了资金,并在1999年公开上市。红帽的股票一度飙升。
  2. Matt Szulick 接棒的时候,可谓是临危受命,没过几年互联网的泡沫破碎了,红帽的发行价从每股$140跌倒了每股$3.5,就这样艰难的行进着,经过几年不懈的努力,红帽成功的将自己的定位转型为服务,RHEL(红帽企业版Linux)诞生了,不久之后,红帽又推出了针对开发者的社区版本Fedora,让活跃的用户有施展才华,而红帽则去专门维护企业级的版本RHEL,更加厉害的是红帽在金融服务业中成功的跨越了摩尔鸿沟,然后,红帽花了$350M 收购了JBoss,并以此再提供企业级的中间件。正当其它家Linux发行版还处在安乐窝的时候,红帽已经将自己定位于Unix的独立软件开发商上行列了,准备吃掉Unix的份额。
  3. 时间转到2008年,Jim Whitehurst 开始掌舵,Jim Whitehurst拥有航空公司的背景,经过大刀阔斧的变革之后,可谓是成功的将红帽带上了又一个顶端。Jim Whitehurst 深刻懂得如何培养和维护员工的士气,且有着管理成本的背景,将竞争激烈的航空公司的理念带给了红帽:保证用户满意。要知道,Whitehurst执掌红帽的时间是2008年,那是经济衰退的一年,不过,事实证明Jim Whitehurst完胜,自从那以后,红帽的股价可谓是节节升高。

纵观红帽的整个历史,红帽始终致力于解决用户的问题。哈佛经济学家Theodore Levitt曾经论说过:“客户不想要一个四分之一英寸的钻头,他们想要的是一个四分之一英寸的洞。” 绝大多数的Linux发行版公司都希望自己成为最好的Linux发行版,红帽却反其道而行之,并没有去单纯的追求成为最好的Linux发行版,而是注重企业级的质量,以更加廉价的方式替代运行在数据中心中的昂贵的SPARC机器上的Solaris。

毫无疑问,红帽所构建的产品和服务是基于开源的技术,但是红帽的商业模式既和DEC Ultrix 不一样,也和 BSD 世界的Sun公司的Sun OS不同,没有照搬DEC Ultrix 和 IBM AIX 协同创建的OSF/1,也没有像Sun对Solaris 的发展是基于System V的许可,也没有像微软那样为Windows NT增加成千上万的第三方许可协议(比如伯克利Socket技术)。

技术的粘性

当一家公司根据自己的产品和服务,对外提供源代码时,并尝试发展自己的协作社区,那么这家公司就可以获得很多的益处。其技术会对客户以及未来潜在的客户具有一定的粘性,他们会进一步增设布道师和专家团队,并围绕技术更进一步的培养用户的习惯,那么技术就随之稳固的在客户中间流传。取决于技术栈和产品的依赖关系,它们可以源源不断的发展自己的业务。

工程经济效应或许没有直接从技术栈中选取那么明显,但是其开发者效应能够以控制和拥有社区来弥补。这也是诸如IBM、Intel、微软以及Oracle等公司为开发者网络狠下血本的原因,无论其与开源许可是否有关联。它们在制造粘性。红帽从其对Linux的工程投资中、其在Fedora社区的开发、以及收购Jboss的技术、专家和客户中获得了诸多的益处。

结语

我坚定的相信开源,其拥有许可授权、并有着自我的规则和约束、有着通力合作的开发社区,将会被证明:“长久以来,这是最好的软件开发和维护方法。” 开源已经创造了无数的强大的、适应能力超强的模块,开源软件已经成为这个世界的核心,伴随着人们的日常生活。但是,人们不应该将这些软件的创建与在市场中解决客户问题的基础业务相混淆。因为并没有什么所谓的“开源商业模式”。

作者介绍

Stephen R. Walli 是一名技术主管、创业者、咨询顾问、作家、国际商务人士、系统开发者、软件架构Geek、典型的外交官。热爱构建让客户欣喜若狂的团队和产品。自1980年以来,我一直在IT行业担任客户和供应商。曾是Hewlett Packard Enterprise的杰出技术专家。目前在Docker公司担任顾问。

特别说明: 作者多次在重要会议上就“没有所谓的开源商业模式”进行了分享,其演示文稿slide可从这里下载。