Linux启示录之二

——Linux的守望者

作者:杨华

[返回]

  Michael Corleone:雇佣兵为了钱去打仗,可叛逆者不是。

  Hyman Roth:这又说明了什么?

  Michael Corleone:这给我一个启发,叛逆者将赢得胜利。

  ———引自《教父》剧本,第二幕

引言

  曾几何时,自由软件的倡导者们给人留下的印象就像是GNU那只凶猛的牛羚一样,是一群头上长角的叛逆者,在他们所堆起的象征自由的街垒里挥舞着愤怒的拳头。然而,随着Linux的发展,自由软件阵营发生了分化,一部分骨干另打旗号,组成开放源代码组织,试图赋予自由软件精神以新的诠释。

  与此同时,有些厂商开始意识到Linux的商业应用前景,其中,RedHat、S.u.S.E等公司成功地将Linux打上了不同的商标,进而开展商业运作,此举与当年早期UNIX版本的商业化过程极为相似。近日,Intel和Netscape购买了RedHat的部分股权,用注资的方式来表示对其所从事的Linux商业化模式的认同,而自由软件思想的创始人Stallman则怒斥RedHat为自由软件的寄生虫。

  显然,Linux及其代表的自由软件正在面临抉择:是继续坚持自由精神与商业环境的对抗,还是退而求其次,去固守源代码开放的原则。眼下,源代码开放的原则似乎更为现实,并已经开始为商业软件社会所接纳。这一变化标志着,思想先驱和传道士的时代已经过去,现在更需要的是在Linux麦田里的守望者和采摘者,他们随时关注Linux的“长势”,提供相应的产品和技术服务,从而在商业与自由开放的原则之间,架起一座沟通的桥梁。

  拥有近千万的用户群是Linux引人注目的标志,然而,Linux在成为能够与NT、NetWare、UNIX等操作系统相匹敌的主流产品之前,还有很长的一段路要走。眼下,跳出技术发烧友的圈子,进入到大企业的信息架构中,这是Linux最为迫切的目标,从这点意义上说,Linux必须进行商业化。当前国内推广Linux的问题之一,就是要去探讨Linux对于软件企业乃至软件产业的经济意义,并着力去发掘其商业上的价值,而只要有商业利益的驱动,就会有企业自觉自愿地介入Linux,充当Linux的守望者。

教堂与集市

  我们知道,众多开发者的加盟是操作系统生命力的重要保证,因此,开发者应该属于Linux守望者中的一员。Linux基于源代码公开的开放的开发模式,吸引了大量开发者的参与。

  传统软件工程的思想,是要将一个复杂的软件系统分块、分层,以降低单个开发过程的难度,而且在实施过程中要遵循精确定义开发目标和范围、组织精干的开发小组、严格进行过程控制等等原则。而BUG则被认为是开发过程中出现的意外情况,需要通过严格的隔离措施,减少BUG的传递。应该说,绝大多数软件开发者都是这种软件开发方式的信徒。

  但是,Linux的出现却对传统软件工程的思想提出了挑战,同样是追求复杂系统的稳定性目标,Linux使用的策略却是要扩大开发者的范围,其背后的指导思想是认为BUG就像是影子一样,只会出现在阳光照不到的角落中,因而软件开发要以公开源代码为手段,吸引尽可能多的开发者参与软件的查错与改进(peering)。在开发协调人的控制下,源代码开放的软件,其新版本的公布、反馈、更新等过程也是完全开放的。

  这两种软件开发模式在经济上的意义,在于它们会形成不同的软件产业组织结构。比如,从传统软件工程的思想出发,将引申出目前通行的软件产业二次开发体系,即底层软件开发商为上一层的用户提供有限的软件开发接口,但软件的源代码是封闭的。随着技术的发展,应用层软件开发者理论上只需要根据用户需求,构造相应的用户界面,选择并“组装”有关的底层软件构件即可。说一句冒犯神灵的话,这种组织结构有点儿像教堂,基础软件就仿佛是圣经,其最终的解释权完全掌握在二次开发体系中的神甫———底层软件开发商手中,而应用软件开发商和用户只是被传道的对象,最多也只相当于教堂里的唱诗班。显然,在软件的控制力上,不同软件层次的开发商有很大的区别。

  如果底层软件和应用软件的开发商都在国内,那么这种软件产业组织结构其实也无可厚非,至少二次开发体系在提高软件生产效率上,还是具有相当的价值;但是,如果底层软件开发商来自国外,那问题就有所不同,完全采用二次开发体系会使国内软件产业的基础过于脆弱,国外厂商有可能利用其掌握的市场权利,控制并影响国内软件产业的发展方向。近年来,一些国外厂商已经通过他们越来越出色的认证开发商组织工作,有针对性地选择合作伙伴,从而在潜移默化中改变国内市场的竞争格局。

  说到底,如果没有制约力量的出现,应用软件开发商有可能会沦为底层软件开发商的“佣工”,由此不仅使应用软件开发企业丧失市场的主动权,还会直接影响到他们切身的利益。从垂直市场上来看,利益在底层与应用层软件开发商之间的分配是不平衡的,底层软件的技术附加值更高,这就存在一种潜在的危险,就像目前国内PC硬件厂商遇到的情况一样,如果厂家只是做一些类似CKD散件组装或是SKD整机组装的工作,在市场的高速发展期企业的业绩尚可,但只要市场饱和,企业产品技术含量过低的弊病就必然会显露出来。

  相对而言,底层软件源代码开放能够避免技术、市场以及资源的过度集中,虽然软件企业水平仍然是参差不齐,但再不会轻易出现市场的绝对垄断者,这种软件产业组织方式,权且称之为集市式。应该说,两种软件产业组织方式没有绝对的优劣之分,只是在国内具体的环境中,由于现在有太多的基础软件产品的包装盒上漏掉了一项,那就是“Made in USA”;而Linux恰好也有一个特性被人忽视,那就是采用了集市开发模式,并且还是“Made in Internet”。因此,从软件开发模式出发,去关注国内的软件产业现状,是Linux给我们的又一个启示。

软件经济学

  直至1965年,IBM还在把开放源代码的软件作为硬件产品的促销手段,这时的软件只是硬件产品的附属物,并没有真正独立出来。后来,软件的发展正如大家看到的那样,已经成为一种很赚钱的商品,由于软件与硬件在产品形态上的不同,企业把源代码封闭起来,把软件这种无形的知识产品有形化,以保护其商业价值。再后来又出现了自由软件思潮,发展至今已经积累了100多个Gb的自由软件资源。

  源代码开放则不同,它的产生来自于Linux开发模式的成功实践,来自于Netscape受Linux影响而公开Internet客户端软件源代码的举动,自由软件思想者们正是从中找到了自由思想与商业气氛的结合点。迄今为止,源代码开放形成一个完整思想体系的时间还不到半年。

  严格说来,源代码开放应该算是商业软件与自由软件折衷后的产物。由于自由软件的思想基础“free”,与商业软件行销手段中的“free”之间很容易混淆,比如微软免费提供IE,从用户角度就看不出有什么明显的区别,但其实质上只是一种财务上的处理手段,作为操作系统产品的一项“或有负债”,与产品升级服务、技术支持等费用合并在一起,大约要占到产品售价的20%。

  为了进一步说明,我们不妨对比一下Linux与GNU在内在精神上的差异。GNU的标志是一只牛羚,有着卷曲的角和桀骜不逊的眼神;而Linux的象征则是一只企鹅,企鹅属于翅膀退化的鸟,心可能还幻想着在天空中飞翔,但脚却一直踩在地上。从中,我们可以体会一种在理想主义与现实精神之间取得的微妙的平衡,以下从源代码开放的经济意义上,做一些粗浅的分析。

  1.软件的商业价值

  软件的商业价值可以细分为使用(Use)、市场(Market)和垄断(Monopoly)三个层面。其中,使用价值指的是软件作为一种信息工具的功能和效用,它构成了软件商业价值的主体,而其他两个层面均属于它的衍生物。市场价值指的是软件作为商品批量销售时的价值,垄断价值指的是软件产品本身用作打击竞争者手段时的价值。

  源代码开放以后,显然,用户和开发商都会更加看重软件的使用价值,而软件的市场价值则还有待企业去挖掘、整理,比如RedHat等公司所进行的Linux品牌化,就可算作一个较为成功的案例。需要指出,即使在源代码开放的前提下,软件的垄断价值仍然有可能存在,只是垄断的形成方式有所变化,比如利用产品的事实标准、更新周期、应用资源丰富程度等等,关于这一点,我们可以参照UNIX的发展历程。

  当前阶段,我们更关心的是从商业软件向源代码开放转变的条件,它将取决于软件企业的外部竞争环境和内部的经营状况。

  以PC游戏软件Doom为例。五年前,Doom率先采用的三维实时动画技术,在当时这几乎是独一无二的,因此,作为一种自然的选择,企业会把它当作企业的核心机密封闭起来,以保护以前技术创新中的投入;然而,IT行业没有长久的技术秘密,现在三维实时动画技术已经有了多种可供选择的实现手段,其中还有一些是免费的。在这种情况下,把代码公开,通过集市式的开发方式,来实现产品的稳定性,就成为一种可行的选择。

  当然,企业已经从技术获得了足够的利润也是源代码开放的前提。企业经营的软件产品在达到盈亏平衡点以后,原则上都有开放源代码的可能性。至于达到盈亏平衡点所需要的时间,这里给出一个参考数据。在财务处理上,微软把与技术支持等因素相关的产品或有负债摊销期设为18个月,因此,可以估计类似软件产品达到盈亏平衡的时间,应该不超过18个月。

  2.软件的商业模式

  长期以来,软件行业按照生产型企业的商业模式经营,这时产品的研发、生产和销售是利润的具体实现过程,因此软件企业从盈利最大化的经营原则出发,就会把企业资源的精华配备在这些环节中。

  附表中,微软生产成本(软件载体的生产费用)逐渐下降,这是受光盘替代磁盘和OEM等因素的影响;而软件研发费用则稳步上升,软件的销售费用一直居高不下。

  这就产生一个问题,软件的服务怎么办?用户经常会抱怨,作为消费者,上帝的感觉只在付款之前,其实这道理很简单,因为生产型企业的利润中心是生产和销售,服务则是一个费用中心,让企业掏钱,当然没有让它挣钱那么痛快。

  实际上,按软件工程的观点,在软件的生命周期中,软件的生产过程与软件的服务、升级和维护等环节相比,其工作量相对较小,因而软件企业在本质上,应该是一种信息服务类企业,而企业最大的利润来源,应该是它的服务环节。像Red Hat出售Linux拷贝时(5.0版),其要价只有50美元,但其提供一次技术服务的费用,却要60美元。不过国内目前软件服务收费上还存在问题,在这一点上,四通系统集成提出了新的思路,就是把Linux的产品和服务融入到系统集成中,做Linux的系统集成服务商LISP。

  举个例子,比如一个果园,常规下的经营之道,无外乎靠卖果品谋取利润,特别在一个果品稀缺的市场环境中,利润导向会促使企业采用这种经营方式;但在市场趋于饱和时,企业的经营策略就会出现分化,有的企业就可能会把果园办成一个观光农业,推出个采摘节什么的,也就是说,从销售转向服务;更进一步,如果有成熟的资本市场的配合,果园甚至还可以做出其他的花样,比方说搞个庄园投资项目等等,诸如此类。总之,在成熟的市场中,企业的经营模式会趋于多样化,软件企业的经营也大抵如此。

  看来,Linux的引入,为发展不同形式的软件服务业提供了一次契机。而软件从生产、销售转向服务的思路,则是Linux给我们的另一个启示。

  1990 1992 1994 1996 1998
生产成本 21.3% 16.9% 16.4% 13.5% 8.3%
研发费用 15.3% 12.7% 13.1% 16.5% 17.3%
销售费用 26.8% 30.9% 29.8% 30.6% 23.5%

微软主要经营费用的构成与走势

数据来源:微软财务报告,各项费用折算为占当年销售收入的百分比

[返回]