从历史来看,科学的发展和人类文明的发展是因为开放,如果几百年、几千年前,人类的科学不开放,那就不会有今天的文明。20年前自由软件之父 Richard Stallman创办了GNU工程,我听过他做过好几次报告,当时他来过中国好几次,我觉得他这个人精神境界很高,某种意义上说是共产主义精神。他跟我们讲,以前软件都是很自由的,随时可以拿来自由修改,后来软件有了版权之后,他觉得,我想做些事情,比如我想驱动一台新的打印机,就没办法,因为它的源代码不开放,所以他基于这种思想就创造了自由软件,希望任何人都可以有自由选择的权力,自由修改,自由发布,所以这种思想很不错。Richard Stallman自己并不富有,他靠自由软件基金会支持工作,尽管他为软件也做出了很多贡献。当然,后来从自由软件到开源软件,雷蒙德从概念和理论上清除了“开源”和“商业”之间的障碍,“开源软件”可以进行商业化运作,“商业软件”同样也可以选择“开源”。
从历史看,科学开始开放,到了200年前左右出现了知识产权保护,然后到20年前软件领域又出现了自由软件,就认为知识产权保护有很多副作用,需要加以平衡,那么我们认为这种趋势,可能也符合了很多事物发展规律。有一位教授叫莱斯格,他说人类的社会发展二方面都需要,即私有领域和公有领域,这两者是不可分离的。举个例子,你去上班,你住的房子是私有的,你驾驶的车是私有的,你去上班经过的道路是公有的,你的停车场是公有的,他的观点就是人类的社会发展需要私有领域和公有领域。我觉得软件行业中也一样,专有软件有版权保护,以及像现在的开源软件,源代码开放,任何人都可以自由使用,自由修改,复制发行。当然你需要遵守他的规则,像现在大部分开源软件选择GPL,在软件的许可证上,也有很多种,作为软件开发者可以选择适合自己的许可证。所以我觉得下面的趋势,在软件领域很清楚,我们将长期看到私有软件和开源软件共同发展,互相影响,互相促进,所以从这种观点去看,开源软件不是一个短期现象,而是一个长期现象,我们相信会长期发展下去。
那么我们具体讲中国,开源软件具有重大的意义。大家都知道美国,作为软件强国,不管在那个领域,都处于绝对的领导地位,全世界主要的软件都是由美国企业领导的,除了比较有名的ERP软件SAP公司是德国企业外,其它的领域基本上都是美国公司所领导。对于美国来讲,也许开源软件并不是那么重要,对于美国狭隘的国家利益来看,可能他可以不要开源软件,他可以排斥开源软件。但是我们看到,自由软件正是由美国Richard Stallman发起的,美国考虑到软件本身发展,也会支持开源软件与之互补。在中国,从2000年以后软件产业在国家政府支持下快速发展,如果没有开源软件,可以想象现在的软件产业会怎么样?最多像印度这样,做一些外包业务。
在软件行业中,微软的垄断是不可动摇的,如果没有国家行政手段,通过市场竞争不可能打破微软的垄断。在美国,IBM、HP、SUN等等公司都加入到开源运动中来,当然他们支持开源都是基于自己公司的利益。他们知道,微软采取的捆绑销售,将自己的浏览器、播放器、即时通信等软件都集成在操作系统中,一起销售,那么再好的应用软件都会被微软打败。有这种垄断,任何公司都无法通过市场来与微软竞争的。因此中国软件业的发展,就应该大力推广开源软件,建立自主的软件体系,我们要创新,建立自己的操作系统,自己的数据库管理系统,自己的中间件系统,自己的应用软件等等。
从信息安全角度来看,使用微软软件很不安全,即使物理上似乎没直接链接,现在无线技术那么好,也可能通过无线连接,系统信息都被微软掌握了。现在微软通过一个间谍件叫WGA,在后台,定时通过网络将PC的信息传给微软总部,这一点对于对信息安全要求较高的部门来说,是非常不利的。任何一个操作系统都会有其后门,Windows也不例外。关于操作系统垄断的严重性问题,我们举个例子。过去 IBM是世界信息产业龙头,IBM发明了PC,但是IBM不去做两件事,一个是不做CPU,一个是不做操作系统,正因为没做这两件事情,所以成就了两个现代的巨头,一个是Intel一个是微软,特别是微软。后来IBM想做OS/2操作系统,和微软合作做,但是当IBM做OS/2的时候,微软已经悄悄在做 Windows了,微软在和IBM合作做OS/2的时候,总是敷衍了事,总是做不好。等到IBM发现的时候微软已经成了气候。记得在94年的一个大会上, IBM同时演示了Windows 3.1和OS/2,同时做一项任务,Windows95没完成,OS/2完成了。我们知道OS/2的技术是抢占式多任务,比Windows好,但是 OS/2拿不出一个应用,一个操作系统没有应用,就没有用户,没有用户,应用软件厂商就不会给你写软件,IBM打不破这个死循环,所以尽管OS/2技术很好,还是失败了。这说明操作系统的垄断很难打破。
99年7月15号,当时信息产业召开了中国软件产业座谈会,支持Linux,后来中国政府很多部门都指示,要积极地推广开源软件。中国软件起步晚,是落后的,那么,我们在进入世界的软件行业里去的时候,中国就没有多大的发展空间了。所以在21世纪,中国就应该基于开源软件来发展我们自己的民族产业。现在很多公司做软件外包,美国包给印度,印度包给中国,我们语言方面就有很大的差距,虽然你有6级8级英语,但是和美国人打交道还是不行,因为人家的是母语,你没法相比,我们是第二外语。另一方面,中国推广自己的软件,有一个很大的市场,我们信息化的需求非常大,每年在信息化方面的投入应该是上千亿的资金,那么我们为什么不把这个市场拿出来推动中国的软件事业呢?因为开源软件能够打破垄断,基于开源软件就能发展起来。我们刚才说IBM这样大的公司,没有打败微软,这个不是技术的问题,是垄断所造成的,美国曾经想把微软分开,这反映了美国也觉得微软的垄断太可怕了。所以我们中国应该开发出自己的操作系统,自己的应用软件,自己的安全软件,中国应该有自己的软件产业。我们知道,不久前吴仪去美国签了很大一笔正版软件定单,如果中国6500万台电脑都要使用正版,包括微软的操作系统和Office,一台电脑算4000块钱,这就要2600亿,而且每年还要更新。实际上中国在正版化方面不可能依靠其他国家软件,主要必须要用国产的,所以,必须要向开源软件靠拢,形成中国自主的版权软件,从这点看,其实中国更需要开源软件。但是很可惜,中国推广开源软件从某种意义上讲,还不如发达国家。欧盟做得很好,像德国法国非常强调开源软件,还有芬兰这些国家非常支持开源软件。美国许多州政府就有这样的意识,他们认为,我不该把纳税人的钱拿去买那么贵的软件,我应该把这些钱拿去买更加廉价实用的开源软件。那从这点来讲,中国就更应该支持开源,如果我们把这些向其他国家购买软件的高额价钱拿来给中国的开源软件公司,那么就可以省下不少一笔钱,而且也支持了国产软件的发展。所以我觉得,中国对于开源软件应该要有特别大的支持。另外一个原因是教学方面,我们看到很多学校,学生从一开始就使用Windows、Office,这一点就是个很大的问题。如果我们学生从一开始就学习开源操作系统,那么你将来去政府企业工作,别人让使用Windows你不会,负责采购软件的人也用的开源软件,这就无形地带动了整个企业或政府都使用开源软件,所以人才培养的走向决定了软件的走向。
现在最大的搜索引擎公司 Google,几乎所有的业务都是建立在开源软件上,它的服务器技术很高,你点击搜索要那么快地响应,这对操作系统和应用软件的要求非常高。那么还有什么事情不能用开源软件做呢?你可以去参观参观Google,他们开源软件做得很好。我们不是说我们自己的人不行,而是因为我们没有掌握Linux,没有掌握开源软件。国内某门户将服务器更换为Linux系统的时候,微软说你不要换,我们可以免费送给你用,国内某门户说,不是钱的问题,而是因为使用Linux 受攻击的比较少。那么Windows和Linux谁高谁底,当然是各有千秋,要根据需求来看。
人才是一个国家软件的根本,是生产力。我们几十万人毕业出来,他们做什么,喜欢做什么,决定了中国今后的发展,包括软件业的发展。我们需要的是一个人的能力,我当年学的无线电现在有用吗?当然不能说完全没用,但主要剩下的是些基础的东西。我们需要基础知识,需要培养学习能力,能学习更新的东西。我看到一个嵌入式系统竞赛,作品应用在很多领域,比如家用电器,机器人等等,竞赛只有三个月时间,它为什么开发得那么快?因为很多作品基本上是基于开源软件来做的,所以它开发迅速。在开源的技术上,我们可以做集成创新,你可以在这上面加一些自己的东西,或者把它和其他的技术结合起来,成为新的产品。我们在做一个软件项目的时候,有时候可能时间要求比较紧张,你从头开始一行一行地去编写,肯定来不及了,但是你会用开源软件,只需要做一些修改,简单调试就可以了,很多开源软件现在已经非常成熟了。所以要善于利用开源软件。什么东西不一定都要从零开始做,要站在巨人的肩膀上创新,牛顿也这样说的。我们有谁比牛顿还要厉害呢?善于吸收前人的成果,把他和自己的知识结合起来,这种能力是非常重要的。给你一个项目,这个项目开源软件里有,那么你把开源软件拿来进行一些改进,就可以成为你所需要的东西。如果你从头开始做这个项目,可能会浪费更多的时间。我们现在写文章,比如需要什么信息,就去网上搜索一下,很方便的,这也是开源的一种思想。但是中国人有一个习惯就是宁做鸡头不做凤尾,没有奉献精神和团队精神,他不知道,我这个事是靠大家一起完成的,不会和大家一起分享完成工作的快乐。当然,开源软件也可以嬴利,比如红帽很成功,他们做开源的商业运作,这也是一种需要,我们也不否认他们对开源做的贡献。不过总的说来,开源发展到现在体现的是一种创新和奉献,做什么不能斤斤计较,要有开源的精神和奉献的精神,将这种精神反馈给社会。在座的各位老师在这方面应该有比我更好的理解和比我更多的经历,我在这里仅仅是说一些自己的想法供大家参考,希望在座的各位老师,能培养出更多的开源人才,我想那时候中国一定能成为开源软件的第一大国。谢谢大家。