在开源的世界里,研究与开发是分离的,二者由不同的实体完成。社区或志愿者进行研究活动,发布研究成果——源代码,而商业公司根据公开的源代码继续开发,将源代码转变为软件产品、服务,从而获利。这样,既促进了知识的共享,同时又能确保知识转化为可靠的商品。
“开源软件”的由来
2005年8月3日,以Firefox浏览器而闻名的开源软件领军组织之一Mozilla基金会,宣布成立一家名为Mozilla Corporation的全资子公司,希望通过这一盈利机构推动开源软件的发展。此消息一经传出,立即在全球开源社区引发了不小的震动。
不少开源社区成员表示愤慨,认为这是对开源精神的玷污。然而,仔细追溯开源软件运动的来龙去脉后,可以肯定的是,Mozilla基金会既不是第一家,也肯定不是最后一家投入到资本和商业怀抱的开源组织。
20年前,由于无法忍受商业软件对知识分享和创新的压制与扼杀,里查德·斯托尔曼(Richard Stallman)率领一帮技术高手揭杆而起,向以微软为代表的商业软件组织发动了一场浩浩荡荡的挑战——自由软件运动。
自由软件运动高举“自由、共享”的旗帜,大力揭露并批判传统商业软件组织封闭软件源代码,利用知识霸权扼杀创新的行径。它掀开了软件发展史上崭新的一页,越来越多的人积极投身到这一历史洪流中,而以Linux为代表的自由软件也如同雨后春笋一般涌现出来。
斯托尔曼本人被尊为“自由软件之父”。
然而,在打倒商业软件知识霸权这样一个极端的同时,自由软件运动似乎在打造另外一个极端。斯托尔曼在批判资本的同时,却忽视或有意忽略了资本及商业运作对软件产业的促进作用,将“自由软件”与“商业运作”刻意对立起来。
自由软件的授权许可协议GPL中就生动地体现了这种对立:你一旦使用了以GPL协议发布的软件,就必须在后续开发中永远使用GPL协议,不得用于商业目的。这种对立在一定程度上阻碍了自由软件的发展。
幸运的是,在对“自由软件运动”以及斯托尔曼的一片狂热追捧中,另一位著名人士终于对这种狂热和极端说“不”了。他就是《大教堂与市集》一书的作者、“自由软件运动”的理论家艾瑞克·雷蒙德(Eric Raymond)。
1998年,雷蒙德和Debian工程的创始人Bruce Perens一道,号召用“开放源代码软件”(简称“开源软件”)代替“自由软件”。虽然这一举动被斯托尔曼斥责,但越来越多的人接受了雷蒙德的提法。研究表明,“开源软件”一词的使用频率已经远远超过了“自由软件”。
深层解读开源软件
从自由软件到开源软件,雷蒙德从概念和理论上清除了“开源”和“商业”之间的障碍,“开源软件”可以进行商业化运作,“商业软件”同样也可以选择“开源”。
“开源”的目的是方便知识共享,而商业化运作则是为了将停留在“知识”层面的软件代码与文档转变为“软件商品”,从而使知识转化为现实生产力。
对于个人用户而言,他们更喜欢那些源码开放的自由软件,并不在乎软件背后是否有正规的企业提供升级、打补丁等服务,但是企业用户却不会为了便宜就信任一家随时可能消失的软件组织,享受免费的服务。
而要想深入理解自由软件和开源软件之间的区别,以及为什么开源软件也可以进行商业化运作,就必须从软件生产的本质——“知识创新”谈起。
知识创新可以分为两个阶段:研究与开发。研究阶段的产物是纯粹的知识,不是直接提供给用户应用,而是提供给研究人员自己,作为继续开发的基础。开发阶段则是将研究成果加以商业化应用,将其转变为用户可以直接使用的产品。
那么,按照这种划分标准,软件的源代码应该是研究阶段的产物,因为它们本身不能被用户直接应用,还必须对源代码进行编译、连接、打包、部署,并辅以齐全的质量保证措施与售后服务,才转变为用户可以直接使用的软件产品。
由此,构思和编写源代码的过程可以看作是软件的研究阶段,而将源代码转变为软件包并提交给用户的过程可以看作是软件的开发阶段。
传统的商业软件公司将软件的研究与开发完全置于内部的创新模式之下,包括以下步骤:
编写源代码——申请软件专利——将专利转变为软件产品、服务。
而“自由软件”则完全与之相反,软件的研究与开发过程完全由松散的社区完成。
不难看出,传统商业软件和自由软件是两个极端。前者对知识的共享和相互借鉴有一定的妨碍作用,而后者则无法保证将知识转化为商品。
而开源软件则采取了折中方式,它将研究活动与开发活动进行分离,由不同的实体加以完成:由社区或志愿者进行研究活动,发布研究成果——源代码。而商业公司继续开发公开的源代码,将源代码转变为软件产品与服务,从中获利。
这样,既促进了知识的共享,同时又确保知识转化为可靠的商品。社区成员可以借鉴并利用他人的研究成果,每个人都只需要贡献自己微薄的力量便可产生“众人拾柴火焰高”的累积效应。而企业将社区的研究成果转变为产品,促进了社区的研究成果的应用,反过来又可以为社区提供大量资金。社区与企业相互促进,形成了开源软件不断发展、创新的良性循环。
开源软件的商业化历程
开源软件的商业化历程大致经历了以下几个阶段:
萌芽阶段(1995年以前)
在1995年红帽软件公司正式成立以前,开源社区基本上没有考虑过商业化运作的问题。大家都在热火朝天地探讨各种技术问题,在社区中发布各种很酷的开源软件新版本,几乎没人想到从开源软件中赚钱。
与开源软件有关的商业活动仅限于出售开源软件安装盘及书籍、印有开源软件标志的文化衫等小玩意。
但是这种商业行为当时并没有获得开源社区的尊重,从事这些活动的人也被社区的成员嗤为小商贩。
当初谁也没有想到是,就在这群毫不起眼的小商贩中,竟然走出了两位后来在开源界赫赫有名的大人物,他们就是红帽软件公司的两位创始人Young和Marc Ewing。
探索阶段(1995~2001年)
1995年,Young购买了Ewing的股份,把新公司命名为红帽软件,同时发布Redhat Linux2.0。红帽公司的成立,拉开了开源软件探索商业运作的序幕。
在红帽的率领和激励下,越来越多的人从开源软件身上嗅到了商机,各种从事开源软件事业的商业机构蓬勃发展。在中国,1999~2000年间,短短两年就涌现出红旗Linux、中软Linux、蓝点Linux、冲浪Linux、TurboLinux、TomLinux等品牌,联想也推出了“幸福Linux”。
不过在这一阶段,开源软件并没有找到真正的商业模式,大部分只停留在概念炒作层面。因此,当潮流退去后,一些当年大出风头的开源厂商也销声匿迹了。
发展阶段(2001~2003年)
2002年前后,随着网络泡沫的破灭,开源软件的神话也随之被打破。大量缺乏真正商业模式的开源软件企业面临尴尬境地,要么倒闭,要么退出开源软件市场。剩下几家经受住了市场锤炼的开源软件厂商慢慢冷静下来,潜心寻找适合自己的商业模式。
在寻找的过程中,一些较早探索出商业模式的开源企业,挺过了IT行业的寒冬,发展迅速,如红帽、JBoss、MySQL等。
融合阶段(2004~2006年)
2003年11月,曾叱咤风云的软件巨头Novell收购了排名全球第二的Linux发行商Suse,借助Linux实现战略转型。
Novell的做法为开源软件的商业运作提供了全新思路,产生了深远影响。
在Novell的推动下,开源软件开始与商业软件和平共处,开源软件不再停留在小打小闹阶段,而是走进金融、电信等行业大户的视野,刷新了在企业用户心目中的形象。
与此同时,原来在幕后支持开源软件的IT巨头也开始更直接地介入开源软件的发展。如IBM于2005年5月收购开源软件Gluecode,2005年11月率众成立开源文档基金会;SUN公司从2005年6月开始,逐步开放Solaris等多款软件的源代码。
困惑软件界许久的“保护知识产权”与“促进知识共享及创新”之争逐渐平息,现在关注的焦点转换为:开放到哪一程度以及以什么方式开源。
欧盟委员会曾于2004年3月以滥用市场垄断地位,违反欧盟公平竞争法为由,要求微软向其竞争对手公布必要的技术信息,并处以微软处5亿欧元罚款。2006年初,微软终于作出让步,开放Windows部分源代码。
这表明,自由软件和传统商业软件所代表的两个极端终于各让一步,初步达成妥协,妥协达成的折中点是就是“开源软件”。斯托尔曼所希望的自由软件战胜商业软件的结局并没出现,还是雷蒙德笑到了最后。
开源软件的商业模式
经过研究与归纳,开源软件的商业模式大致包括以下几种:
1.免费软件+收费硬件
IBM、SUN、惠普等公司,在开源软件领域投入巨大,但这一切并非是做善事,它们可以从配置了开源软件的硬件中获取巨额回报。
.免费知识+收费书籍(培训)
开源软件出版商O'Reilly公司组织各种开源软件会议,推进开源理念和开源软件技术的传播与发展,以出售书籍赢利。中国的即时科研集团目前也在大力开展Linux培训,其赢利模式如出一辄。
3.免费程序+收费实施
一些开源软件厂商免费提供系统的程序代码,靠提供技术服务赚钱。JBoss就是这种模式的典型代表。JBoss应用服务器软件程序完全免费,而技术文档、培训、二次开发支持等技术服务则是收费的。
4.免费社区版+收费企业版
对于一些通用软件,如操作系统和数据库软件,开源软件厂商一般采用针对不同用户,提供不同版本的方式。在这种模式中,利用免费版本软件为赢利的收费版本创造或维持一种市场地位。这种模式较为普遍。
例如,MySQL产品就同时推出面向个人和企业的两种版本,即开源版本和专业版本,分别采用不同的授权方式。开源版本完全免费以便更好的推广,公司通过专业版的许可销售和支持服务获得收入。
5.开源软件+商业软件
将免费的开源软件与可赢利的商业软件捆绑销售,以开源软件带动商业软件的销售,这也是不错的商业模式。
比如Novell就将自己原来丰富的中间软件和应用软件迁移到Linux平台上,通过与Linux捆绑,为客户提供高价值的综合解决方案。红旗和Turbolinux也在积极加强与应用软件厂商的联系或自己开发商业软件,通过附加更多的商业软件来增加收入。
6.免费软件+收费专业服务
这种模式的典型代表是SourceLabs公司和SpikeSource公司。这些公司并不主推自己的产品品牌,而是与多方开源软件厂商或社区合作,利用他人提供的开源软件,提供技术测试、集成、维护等服务。
这种模式中,公司的角色跟原来的系统集成商有点类似。他们把开源软件打包到事先经过鉴定、并且受支持的标准化堆栈中。为了让各种各样的软件组件正常地协同工作,他们帮助客户配置及测试这些软件组件,而预先设计并经过鉴定的堆栈有助于缩短配置与测试时间。
结语
目前在中国,对于开源软件的商业运作问题存在两个严重问题:一是依然按照传统商业软件的模式来运作开源软件,从国际开源社区那里免费地获取源代码,稍作修改后变成自己的产品,然后出售软件许可。
二是紧抱“自由软件”的陈旧概念,认为软件产品就应该“自由”(其实是免费)地使用,低估了软件产品和服务的价值,与全球正在积极推进的知识产权保护做法背道而驰。
“开源软件”强调的是“开源”,可不少人和公司依然简单地把它理解为另一款或另一种产品,这是十分危险的。现在,IBM在开源,SUN在开源,甲骨文在开源,微软也在开源。等到某一天,微软完全开源了,国内的这些“开源软件”企业还有什么卖点可以鼓吹呢?