ZicoChan 2014-05-20
开源技术基础知识:什么是开源软件
1997春天,自由软件社团的一些领导者聚集到加利福尼亚州。这个社团包括EricRaymond,TimO'Rerlly,VA Research的总裁Larry Augustin等人,他们所关心的是一种寻找方式,来向以前躲避自由软件思想的人们推广这种思想。他们担心,自由软件基金会的反商业信条会让人们对自由软件敬而远之。
在Eric Raymond的坚持下,这群人同意他们所缺乏的是市场营销活动,这个活动的目的是赢得思想,而不仅仅是市场份额。最后讨论的结果产生了一个新的术语来描述他们所推进的软件:Open Source(开烦扰软件)。他们制定了一系列的指导原则,用来描述哪些软件可以有资格被称为开源软件。
Bruce Perens 为制定开源软件的定义做了很多基础性的工作。GNU工程的正式目标之一就是创造一个自由可用的操作系统,以作为平台来运行GNU软件。从软件引导(softwera boottstrapping)的传统观点来看,Linux已经成为那个平台,L inux是在GNU工具的帮助下创造出来的。Perens曾经是Debian工程的领导者,它所管理的Linux发行版本,只包括那些符合GNU精神的软件。Perens已经在“Debian社会契约”(Debian Social Contract)中明确地阐明了这一立场。开源软件的定义是“Debian社会契约”的直接产物,因此开源软件是与GNU的精神一脉相承的。
与GPL相比,开源软件的定义允许更大授权自由。特别是当软件中混合了专有软件和开源软件时,开源软件的定义允许在它们的基础上生成更大的混合。
结果是,开源软件许可证能令人信服地允许使用和再分开开源软件,而不必考虑补偿或者信用问题。举例来讲,你可以得到伟大的Netscape浏览器的源代码,并且把它作为连同另一个软件(可能是专有软件)一起发布出去,而用不着去通知网景(Netscape)公司。
网景为什么会希望如此呢?原因很多,最引人注目的是,这样做可以为他们的客户端代码赢得更大的市场份额。这些代码与他们的商业软件一起工作得的非常好。从这个角度来说,奉送源代码是建立平台的一个很好的方式。这也是网景的人不使用GPL的原因之一。
这在社团中可不是小事一桩。1998年下半年,曾经有一场重要的争论对Linux威胁极大,几乎Linux社团破裂。郑州牛皮癣医院裂痕是因出现了两个软件系统 GNOME和KDE而引发的,它们两者都试图建立一个面向对象的桌面界面。一方面,KDE利用了Troll Technology公司的Qt库,其中的一部分属于专有代码,但是很稳定、很成熟。另一方面,GNOME决定使用GTK+库,尽管它不如Qt成熟,但是它是完全自由的库。
过去,Troll Technology不得不在使用GPL和维持他们的专有软件立场之间进行选择。GNOME和KDE的裂痕本来会持续下去。然而,在开源软件出现后,虽然Troll仍然控制他们想要的技术,但是Troll可以为希望Qt符合开源软件定义的人改变他们的许可证。Linux社团两个重要部分的裂痕看来要弥合了。
开源软件的意义
在AMD追赶英特尔的漫漫长途中,一句广为流传的话是这样说的:“AMD的存在,不仅深受AMD客户的拥护,也是英特尔用户的福气,因为它打压了英特尔的高价垄断。”同样,开源软件相对于商业软件也是同样的道理,尤其是对那些具有垄断性质的软件来说,开源软件更显其深远意义。
君不见在IBM、Sun等公司推动OpenOffice系统成为业界标准的进逼下,顽固如微软者也不得不把MS Office拿出来充公。显然,随着开源软件的流行,商业软件不仅被压缩了发展空间,同时也促使软件商们不断地降低软件价格,给消费者带来了显而易见的利益。
身兼开放源代码应用基金会(OSAF)总裁和以及Mozilla基金会的Kapor先生就表示,郑州牛皮癣专科医院这两个基金会并不是要创建新的杀手程序,而是要利用开源软件的模式削弱微软在网络浏览器和电子邮件软件领域的垄断地位。
事实上,对一些发展中国家,或者说那些软件业欠发达国家来说,开源软件还为他们制造了后发优势,提供了追赶和超越发达国家软件业的机会。毕竟,对于像中国这样的发展中国家,软件业的发展严重滞后,完全依靠国内的资金和人才要想赶超像美国这样的软件大国,几乎是没有机会的,充其量只能是一种理想。但是,如果能在基于开源软件的基础上加大投入的话,这种理想就有了实现的可能。
当然,不得不提的是,业界也有人怀疑,开源软件是否会扼杀国内软件人士的努力。就像AMD前段时间向我们提供X86技术一样,有人担心会使国人失去研究龙芯的兴致。还有人认为,像MS Office这样的软件如果都开源的话,那么微软们就不可能再投入大量的资金进行开发和升级,从而也会间接地阻碍软件业的发展。这些言论有一定道理,但开源的意义就是为了挖掘新的产业模式,这种探索精神正是我们世代所鼓励的。
赢利模式是开源软件发展的根本
8月3日上午,以火狐(Firefox)浏览器闻名于世的Mozilla基金会,宣布成立一家子公司Mozilla Corporation,以便投入可创造收益的商业活动。作为一家着名的开源软件组织,Mozilla的行为招致大量质疑。人们之所以有这样的反应,就是因为认定开源软件出现的初衷就是免费和开放源代码,Mozilla的行为看起来无疑是违背了二大法条之一的免费。
但是,开源软件的免费说至少就目前看来,可能是人们的一种误解。让我们简单地扫描一下当前开源软件的运营模式:第一种,软件完全免费,后续服务收费。像当前的Red Hat Linux就是使用这样的模式。但是,这种模式并不是每一家开源企业都能使用的,也只有像Red Hat这样的行业领先者才有这样的资本。第二种,软件免费,没有售后服务,在软件市场成熟后,靠出售专利谋生。这种方式的代表是Foxmail。第三种,应用服务提供模式。在这种模式下,软件和服务都是免费,企业按时间交纳使用费。最主要的运营模式也就是这几种,其他种类的模式其实都是这几种模式的演化和变种。从中我们可以看出,开源软件本身的确是免费的,但开发者最初的意图其实是为了通过后续服务或出售专利等方式获利。从这个层面来说,天下的确没有免费的误餐。
当然,不排除一些真正的免费的开源软件,不过这只能是一些小型的软件。这些软件不需要集中太多人的就能开发出来,后续也不需要太多人的来维护和升级。而对一些大型软件诸如操作系统等,当前不可能成为免费的开源软件。因此说,如果开源软件找不到自己的赢利模式的话,就很难生存下去,更别提发展了。上海中标软件有限公司常务副总经理秦勇就表示,“在中国国内Linux市场上,虽然现在起得很快,但是整个市场容量、整个市场还不够大,还不足以养活号称国内有9家企业的庞大的Linux家族。”这句话背后的潜台词,很显然企业还是要靠Linux赢利的。
在笔者看来,开源软件的意义就在意源代码的开源,免费只能说是它的一种说法,并不代表实质性意义。因此说,开源软件企业要想生存和发展下去,肯定得寻找自己的赢利模式。然而,就目前来说,能通过开源软件赢利的太少了,即使像Red Hat这样的业界巨头,2004年才实现2亿美金的营业额,别的企业业绩如何可想而知。
事实上,当前无论是国际还是国内的开源软件组织和企业都是少之又少,原因何在,就是因为这些组织和企业没有找到可行的赢利模式,从而没有足够的资金支持企业持续发展下去。
高级人才是开源软件发展的瓶颈
就像本文开篇时说的那样,国内外开源软件业都存在缺乏高级人才的问题。当前,开源软件业的一致观点就是:人才数量不缺,缺的是质量。实际上这句话更准确地表示应该是:人数不缺,缺的是人才。据业内人士分析,开源软件目前能够想到的赢利模式都是为企业服务的。但是,目前的开源企业总体上规模很小,由几个人到几十人公司都有,然而,大型企业对这样的小企业,包括几百人的软件企业,都会持不信任的态度。Novell中国区市场与渠道总监罗威就表示,在两年前,Novell之所以收购SUSE,一方面当然是业务发展的需要,另一方面其实也有扩大规模的动机。当前,Novell公司在全球已有数千人。 Novell通过这种扩张,就是想把非常好的技术放到坚实的企业平台上,两者结合,探索出新的,为企业级支撑提供好的方法的盈利的比较好的道路。
然而,开源软件虽然发展几乎与商业软件同步,甚至可以说更早,但其真正以产业的形式问世,不过几十年时间。在这么短的时间里,又受限于规模的制约,不可能培养大批的开源软件人才,而缺乏开源软件人才又进一步制约着开源软件的发展,这就形成了开源软件当前面临的恶性循环。同时,由于开源软件本身的免费,对于刚起步的企业来说,就存在资金的瓶颈,在没有投资者注资的情况下,企业就很难持续提供高薪给企业员工,这实际上也是制约开源软件发展的重要原因。毕竟,高级管理人才是从普通员工培养而来的,没有大批的后备队伍,高级管理人才从何而来啊?
就目前来说,虽然开源软件的高级管理人才工资很高,但这只不过是极少数的人,对普通员工来说,工资其实并不高。所以说,从行业的角度分析,开源软件缺的可能不是人才,而是资金。大丈夫何患无妻,开源软件业有钱了又何患无人呢。