都在开源 国内开源软件还有什么卖点可鼓吹

互联网 | 编辑: 杨剑锋 2006-07-31 15:25:00转载 一键看全文

 

在开源的世界里,研究与开发是分离的,二者由不同的实体完成。社区或志愿者进行研究活动,发布研究成果——源代码,而商业公司根据公开的源代码继续开发,将源代码转变为软件产品、服务,从而获利。这样,既促进了知识的共享,同时又能确保知识转化为可靠的商品。

“开源软件”的由来

2005年8月3日,以Firefox浏览器而闻名的开源软件领军组织之一Mozilla基金会,宣布成立一家名为Mozilla Corporation的全资子公司,希望通过这一盈利机构推动开源软件的发展。此消息一经传出,立即在全球开源社区引发了不小的震动。

不少开源社区成员表示愤慨,认为这是对开源精神的玷污。然而,仔细追溯开源软件运动的来龙去脉后,可以肯定的是,Mozilla基金会既不是第一家,也肯定不是最后一家投入到资本和商业怀抱的开源组织。

20年前,由于无法忍受商业软件对知识分享和创新的压制与扼杀,里查德·斯托尔曼(Richard Stallman)率领一帮技术高手揭杆而起,向以微软为代表的商业软件组织发动了一场浩浩荡荡的挑战——自由软件运动。

自由软件运动高举“自由、共享”的旗帜,大力揭露并批判传统商业软件组织封闭软件源代码,利用知识霸权扼杀创新的行径。它掀开了软件发展史上崭新的一页,越来越多的人积极投身到这一历史洪流中,而以Linux为代表的自由软件也如同雨后春笋一般涌现出来。

斯托尔曼本人被尊为“自由软件之父”。

然而,在打倒商业软件知识霸权这样一个极端的同时,自由软件运动似乎在打造另外一个极端。斯托尔曼在批判资本的同时,却忽视或有意忽略了资本及商业运作对软件产业的促进作用,将“自由软件”与“商业运作”刻意对立起来。

自由软件的授权许可协议GPL中就生动地体现了这种对立:你一旦使用了以GPL协议发布的软件,就必须在后续开发中永远使用GPL协议,不得用于商业目的。这种对立在一定程度上阻碍了自由软件的发展。

幸运的是,在对“自由软件运动”以及斯托尔曼的一片狂热追捧中,另一位著名人士终于对这种狂热和极端说“不”了。他就是《大教堂与市集》一书的作者、“自由软件运动”的理论家艾瑞克·雷蒙德(Eric Raymond)。

1998年,雷蒙德和Debian工程的创始人Bruce Perens一道,号召用“开放源代码软件”(简称“开源软件”)代替“自由软件”。虽然这一举动被斯托尔曼斥责,但越来越多的人接受了雷蒙德的提法。研究表明,“开源软件”一词的使用频率已经远远超过了“自由软件”。

深层解读开源软件

从自由软件到开源软件,雷蒙德从概念和理论上清除了“开源”和“商业”之间的障碍,“开源软件”可以进行商业化运作,“商业软件”同样也可以选择“开源”。

“开源”的目的是方便知识共享,而商业化运作则是为了将停留在“知识”层面的软件代码与文档转变为“软件商品”,从而使知识转化为现实生产力。

对于个人用户而言,他们更喜欢那些源码开放的自由软件,并不在乎软件背后是否有正规的企业提供升级、打补丁等服务,但是企业用户却不会为了便宜就信任一家随时可能消失的软件组织,享受免费的服务。

而要想深入理解自由软件和开源软件之间的区别,以及为什么开源软件也可以进行商业化运作,就必须从软件生产的本质——“知识创新”谈起。

知识创新可以分为两个阶段:研究与开发。研究阶段的产物是纯粹的知识,不是直接提供给用户应用,而是提供给研究人员自己,作为继续开发的基础。开发阶段则是将研究成果加以商业化应用,将其转变为用户可以直接使用的产品。

那么,按照这种划分标准,软件的源代码应该是研究阶段的产物,因为它们本身不能被用户直接应用,还必须对源代码进行编译、连接、打包、部署,并辅以齐全的质量保证措施与售后服务,才转变为用户可以直接使用的软件产品。

由此,构思和编写源代码的过程可以看作是软件的研究阶段,而将源代码转变为软件包并提交给用户的过程可以看作是软件的开发阶段。

传统的商业软件公司将软件的研究与开发完全置于内部的创新模式之下,包括以下步骤:

编写源代码——申请软件专利——将专利转变为软件产品、服务。

而“自由软件”则完全与之相反,软件的研究与开发过程完全由松散的社区完成。

不难看出,传统商业软件和自由软件是两个极端。前者对知识的共享和相互借鉴有一定的妨碍作用,而后者则无法保证将知识转化为商品。

而开源软件则采取了折中方式,它将研究活动与开发活动进行分离,由不同的实体加以完成:由社区或志愿者进行研究活动,发布研究成果——源代码。而商业公司继续开发公开的源代码,将源代码转变为软件产品与服务,从中获利。

这样,既促进了知识的共享,同时又确保知识转化为可靠的商品。社区成员可以借鉴并利用他人的研究成果,每个人都只需要贡献自己微薄的力量便可产生“众人拾柴火焰高”的累积效应。而企业将社区的研究成果转变为产品,促进了社区的研究成果的应用,反过来又可以为社区提供大量资金。社区与企业相互促进,形成了开源软件不断发展、创新的良性循环。

提示:试试键盘 “← →” 可以实现快速翻页 

总共 3 页123
一键看全文

本文导航

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑