Richard Stallman与洪峰谈黑客道培训实录

http://www.sina.com.cn 2005年09月16日 19:03  新浪科技
科技时代_Richard Stallman与洪峰谈黑客道培训实录
图为美国家工程院院士Richard Stallman与自由软件运动倡导者洪峰

  新浪科技讯 9月16日下午4时30分,美国国家工程院院士Richard Stallman与自由软件运动倡导者洪峰做客新浪嘉宾聊天,就自由软件的发展,与黑客道培训与广大网友做出交流,以下为聊天实录:

  嘉宾简介:

    Richard Stallman简介

    美国国家工程院院士, GNU工程以及自由软件基金会的创立者、著名黑客,自由软件运动的精神领袖。他于1984年发起了GNU工程,并为自由软件竖立了法律规范。如今自由软件已经在世界范围内产生了深远的影响,在计算机工业、科学研究、教育等领域,显示出了极大的生命力和价值。

    洪峰简介:

    自由软件运动倡导者,2001 年开创了“一、百、万”工程。“明”操作系统的设计师、职业技术作家、泛系“黑客道”教学法的创始人。擅长教授关于哲学、数学、计算机科学、经济学、语言学等多方面的课程。他因长期一贯地推广自由软件,在全球自由软件社团里拥有众多的伙伴和支持者。

  聊天实录:

  主持人:各位新浪网友大家下午好!非常抱歉我们今天的嘉宾聊天有点推迟,首先欢迎两位嘉宾,第一位是美国工程院院士Richard Stallman先生,他是GNU项目、自由软件基金的创始人,自由软件运动的精神领袖,陪同他的是洪峰先生,国内著名自由软件的倡导者。今天的聊天中,我们将把时间交给他们,请他们用自己的理念、想法和自由软件在国内、国际的发展,以及自由软件在计算机教育领域的应用和理念阐述一下,我们请二位大家打个招呼。

  Richard Stallman:大家好,我是Richard Stallman,我在1983年的时候,开始了自由软件运动,这个运动是让大家能够自由的使用计算机,而我开始了GNU工程,现在大约有1亿多计算机使用这个系统,大部分用户觉得这个非常棒。

  洪峰:大家好,我是洪峰,这是我第二次来新浪作客,非常高兴与大家再次见面,来谈一谈自由软件在教育中应用这个话题。

  主持人:现在把时间交给Richard Stallman先生,他所看到计算机教育领域中的自由软件的应用问题。

RichardStallman与洪峰谈黑客道培训实录
图为美国国家工程院院士Richard Stallman

  Richard Stallman:自由软件指的是自由,而不是价格,所以说自由,而不是免费,这就意味着用户拥有四种自由度,第零:你可以自由的去应用这些软件;第一:你可以研究它的原代码,并且自由去改动这些原代码。第二:你能够自由地帮助其他人,也就是说能够拷贝软件,分发给其他人。第三:你能帮助你的社团,将你修改的软件发布给其他人,使其他人能够从中受益,这就是四重自由度。满足这四个自由度的就是自由软件,再发布这些软件,能够让每个人都拥有自由。而自由软件运动就是让每一个软件使用者都拥有这个自由,没有人有权剥夺你的这个自由。

  我在1983年的时候,做出一个决策,我要自由地使用计算机,也就是说我想用完全的自由软件来使用电脑,而不是用其他的非自由的软件,但是说来容易,做来难。在1983年的时候,是根本不可能做这个的。因为当时计算机如果没有操作系统的话,根本没法使用,在1983年的时候,所有的操作系统都是专有的,都是不自由的。

  当时如果没有非自由软件,根本不可能使用计算机,你的自由被剥夺了。那么我能够做些什么呢?我并不是很擅长政治,无法说服政府来改变他们的法律,或者是说服公司改变他们的政策,但是我非常善于写软件,特别是写操作系统,这是我的专长,因此我认识到有办法来改变这种政治状况,并不是从事政治工作,而是从事技术工作。开发新的软件,而我做的就是制定一个全新的操作系统,这样的话就可以用自由软件来操作计算机了,因此我就开启了GNU工程。因此在1984年的时候,我放弃了在麻省理工学院的工作,做起了这个工作,GNU是类UNIX的操作系统,他和UNIX是兼容的,因此UNIX用户不需要做太多的改变,就可以使用GNU系统,而操作系统由很多部件组成,我们必须替代所有的部分,这个工作花了我们很长的时间。

  在90年代早期的时候,我们几乎做完了所有的工作,但是这个系统当中,缺乏一个非常重要的部件,内核。在1991年,Linus Torvalds写了一个内核,称之为Linux。刚开始Linux并不是一个自由软件,但是在1992年的时候,改变了Linux的许可证(为GPL版权),因此Linux变成了一个自由软件,Linux补充了GNU系统。这样的话,GNU和Linux结合就变成了一个自由的操作系统(GNU/Linux)。因此大家第一次有机会来自由地使用计算机,而这个计算机没有任何专有软件,也就是说全部都是自由软件。你拥有了自由。

  GNU/Linux变得越来越流行,很多人用它,他们发现它不光尊重你的自由,而且非常强大,非常可靠,而系统的质量非常高,比专有软件的质量还高,而且非常的便宜,不需要花费钱去购买许可证,而且可以进行更改。因此很多组织和企业开始用GNU/Linux,但大部分人此时忘记了一个最重要的事情,就是自由。

  因此我现在的主要工作就是让人们了解自由的含义,让人们了解什么叫自由软件,如果人们忘记了这个“自由”的重要性的话,他们可能就会失去这个自由。那么就会使一切都变得非常糟糕。因此我谈一谈自由软件与教育的关系。

  学校将对社会的未来产生重要影响,正因如此重要,学校因该选择自由软件,而拒绝专有软件。有四个原因:

  我首先讲一个较肤浅的理由,最后讲一个较深入的理由。最浮浅的理由就是省钱,即使在富有的国家,学校的资金也是不充足的,因此学校不应当浪费这些钱来购买专有软件的许可证,这是显而易见的,也是很浮浅的,因为它只是跟钱有关。

  一些公司生产了专有软件,他们通过一些手段消除了上述的问题,因为他们能够免费像学校提供一些专有软件,这样就让我们解释第二个原因:为什么这些公司把这些专有软件捐献给学校呢?并不是他们关心教育,试图建立一个更美好的世界,也并不是因为他们理解,如果孩子们用上专有软件的话,那么在他们从学校毕业之后,他们就只知道如何用专有软件了,因此他们将在一生中一直用这些专有软件,除非他们做一些改变。这些公司试图利用学校来让每个人成为他们的客户,试图使学生患有专有软件成瘾证,就像把毒品分发给学生一样。可以确定,一旦学生从学校毕业,这些公司再也不给这些人提供同样的、免费的专有软件。只有第一部分专有软件才是免费的,一旦你使用成瘾之后,就必须付费了。因此这些公司利用学校来引导社会,使大家将来依赖这个公司。学校应该认识到这样的做法是错误的,学校的使命是培训未来的一代人,使他们能够成长,而且有能力,具有独立性,而不是依赖这种虚弱的,靠不住的东西。因此当这些公司试图提供免费的专有软件时,学校应该说不,应该说我们不会给学生提供毒品,而且我们也不会给我们的学生使用专有软件。

  还有第三个原因,可能更加深奥一些。当学生到了14到15岁的时候,他们什么都想学,他们将成为伟大的程序员,因为他们是天生的程序员。如果他们使用专有软件,他们想知道这个程序如何运行的。当学生问老师这个程序是怎么运行的时候,老师就会说对不起,我并不知道,而且你也不许知道,因为这个是秘密,整个学校都不准知道这个秘密。这样就无法展开教育工作。

  但是如果学生使用的是自由软件的话,老师就可以说,我可以给你解释一下,如果你想了解更多,这是原代码,你可以读这个原代码。如果原代码中有一些地方你不明白的话,你来找我,我会给你们解释。

  这些孩子是天生的程序员,因为不需要人们去告诉他,但是他们必须学习如何来写一个好的程序,必须学习如何写一个简洁的一个程序,因为人不是天生就知道这个的。学习写好代码的方式就是大量阅读代码,大量写代码。当你给一个大的程序写代码的时候,就要阅读现有的大程序,然后做一些小的改进,比如增加一个特性、修改一些bug等等。作为初学者,你也可以自己写一些大的程序,但同时,你也可以修改一个现有的大程序,对其改进,这看是一个很小的工作,但同时你可以对许多其他的大程序做出类似的工作,你多年重复这样的工作后,然后你就会知道如何写大的程序了。

  我有机会这样做,我过去工作在MIT的人工智能实验室,这里面的软件是由的,我们的工作就是改善这个系统,这个一个独一无二的机会。那是1971年了,但是在今天,所有的学校都能提供这样的机会,提供一个电脑,运行GNU/Linux系统,这样的话学校给学生提供很多机会,条件是只能用自由软件。

  第四个原因更为深奥些,为了教育,学校必须教授学生技能,但是更重要的是应该教授他如何成为一个和谐社会的一员,如何助人为乐,帮助其他人,因为你能够做到这一点的。因此,学校就应当有这个规定,就是如果你把这个软件带到学校的话,不能一个人用它,必须跟其他人共同分享。其他任何人只要想要就应该能够用这个软件。如果你拒绝的话,就不要把它带来,在学校中是不允许这样做的。但是为了制定这个规则,学校必须树立一个好的榜样,学校遵守自己的规定。这就意味着学校只会给学生提供自由软件,而且这样会要求学生也是在使用自由软件,如果不是自由软件就不应该带到学校或者是教室里来。我已经讲了我想说的了,稍候我会回答网友的问题。下面请我的朋友洪峰先生来演讲。谢谢大家!

RichardStallman与洪峰谈黑客道培训实录
图为自由软件运动倡导者洪峰

  洪峰:刚才Stallman先生谈了很多关于自由软件的意义,自由软件的重要性,以及自由软件在教育里面应用的前景,为什么计算机科学教育要全面的、大量的采用自由软件,彻底抛弃专有软件。我来接他的话题来谈一谈,我在计算机科学教育领域的实践情况。

  我第一次跟Stallman院士深入谈自由软件是在2000年5月,那个时候,我们去了四川九寨沟,我们在那儿谈了一些非常深入的一些话题,包括他刚才谈到的他是如何学习编程序,成为一个伟大的程序设计大师的,当时我有很多感想。因为能不能把他当年采用的方法,这种路径能够以一种可以重复的方式,应用到中国大陆的计算机教学革命当中来,我当时在琢磨这个问题,当时我没有系统的考虑。当时他走了之后,我开始系统的思考这个问题。

  因为在以前,我受过一些数学训练,我的老师吴学谋,他是研究员,他给了我深入的指导,在数学和哲学方面。因此我试图从这个,把吴老师的泛系理论和自由软件结合起来,找到一个可以兼顾哲理、数理、计理三个方面,以三兼顾的方式来做计算机科学的教学,过去三年中我做了大量的尝试,特别是去年3月份开始,我开始教授一些学员学习计算机编程的方法和技巧。在过去一年半,我一共培养了十几个程序员,而且从目前的情况来看,我觉得应该是取得了一定的成功。我借这个机会把培训的方法给大家做一个介绍,希望大家能够提出批评的意见。

  这个教学的方法,叫“黑客道”,或者叫泛系“黑客道”。那么“黑客道”是从英文中Hackerdom,从这个里面来衍生出来的。黑客并不是指搞破坏的,盗窃计算机里面隐私、数据的。这类人是cracker。真正的hacker是会写程序,使自己变聪明的人,这样的程序员我们称之为黑客。

  现在每年毕业的学习计算机的人非常多,我听朋友介绍,每年大学计算机本科的学生是十万名左右,当然这个数字是非常大的,那么这样学生走向社会,走向不同的工作岗位,他们将为不同的公司,不同的组织进行从事他们的编程工作。那么我在开始“黑客道”实践的刚开始的时候,我把重点放在了系统程序员这么一个很窄的一个层面上,为什么这么讲呢?

  因为系统程序是关键,说一千道一万,系统程序是关键,没有系统程序,其他的应用程序没有一个运行的平台,现在非常幸运的事,我们的自由软件运动经过20多年的发展已经有了自由软件的平台,就是GNU/Linux、还有其他的系统,比如FreeBSD等。这样的系统可以给我们提供非常好的平台,在这个平台上,像Stallman先生讲的,看看他们的系统是怎么设计的,最大限度的发挥系统的作用,从而为开发优秀的应用软件提供一个非常好的技术支撑。

  所以我集中训练的对象是系统程序员,而不是应用程序员,这可能让很多的网友们,有一些失望或者是意外,但是没关系,因为我觉得这个意义比培养一个应用程序员要大一些,系统程序员出来之后,可以非常好的理解计算机的本质,我从事“黑客道”的主要任务就是要把计算机的本质告诉给学员。

  那么在从事“黑客道”教学的时候,我采用了什么方法呢?我应该来讲,采用了孔子的办法,就是伟大的古代的教育家孔子采取的方法,就是因材施教,当然这个因材施教说起来简单,做起来难,因为每个人的情况不大一样。我招收的学员先要对学员的内心进行一下甄别,有两类型的学员招收的时候非常的谨慎,一类是非常聪明的学员,刚才Stallman先生也讲过,他们并不需要非常多的指导,只要给他们一点点提示,他们就会自动的一步一步的编程,如果他勤奋的话会编出非常优秀的程序,这样的程序员不是我教授的重点。

  另外一类学员就是智力上不太适合做系统程序员的学员,他们可能做其他的工作比较合适,但是不适合做系统程序员?为什么这么讲呢?因为要做系统程序员需要“三心二意”的心理素质,这个是加引号的,不是说做事马马虎虎,心不在焉的,三心是好奇心、恒心、细心,二意是共享学习体会的意愿,另外一个意愿是你有意于贡献社会和服务社会,因此这个是培养程序员非常关键的素质。

  显然在我所接触的大学生中并不是每一个人都具有这样的心理素质。先说好奇心并不是每一个人对程序有浓烈的兴趣,因此在教学里面,我主要的任务是把编程全面、系统、详细展现给学员,让学员觉得写程序是非常美的享受,从而把他内心的兴趣诱发出来,让兴趣成为他们最好的老师,伴随他一生的职业生涯。这是好奇心。

  第二点就是耐心,没有耐心的做任何事情,浅尝辄止的话,这些的学员不能成为优秀的程序员,写程序需要大量的时间编辑代码,修改代码,再写文档,是非常耗费时间的,需要程序员有巨大的耐心做好这件事情。当然有些程序员认为懒惰的程序员才是好的程序员,那只是在开发的时候,如果完成程序效率不高的话,他会采取高效的算法来解决。

  那么在写程序的时候,第三个就是细心,因为编写程序需要更有细心,关注更多的问题,因此不细心的学员,马马虎虎的学员不会成为优秀的程序员,显然我所讲的并不是所有的学员都具备这样的心理素质。但是我们从另外一个角度来看这个问题,因为中国的学生人数非常多,我刚才说每年毕业的本科计算机人有十万左右。因此即使是千分之一的比例的话,那十万人中里面,会成为系统程序员的话,累积起来也是非常可观的数字,可以大大增强我们自由软件队伍的规模和质量,从而可以和国际上欧美程序员展开合作与竞争。

  所以我要讲清楚这一点,二意我想是非常重要的,如果你写程序不和别人交流的话可能会失去很多帮助,如果你不想贡献社会,如果只为自己改善自己的生活而工作,那么这种程序员不是我想要培养的程序员,因此我培训的这些人,大部分在一些大学毕业,刚刚毕业的,但是他们苦与在大学的学习中,还没有把计算机的本质,认真的掌握和全面、熟练的一些人,这是我最愿意传授的这些学生。

  那么在教学过程中,我探索了一些行之有效的方法,归纳起来,第一,内化成瘾,把学员的兴趣诱导出来,成为他最好的老师。第二点,我们教学的实践中,学员自己动手的时间是在70%以上,老师指导的学员时间是在30%左右,当然这个比例不是绝对的,某个时间可能教学的时间多一些,另外一个时间动手时间多一些,但是总体上说,动手时间与理论学习的时间,是7:3。

  那么第三点,就是我非常强调才学既专的学习,少写精。通过介绍讲清楚,编程序所具备的基本工具,以及基本的技能使学员具备基本的编程能力,在这个里面涉及到一个问题了,哪些问题是属于基本功,哪些问题是基本的编程工具,那么我们在“黑客道”教学中进行了非常细致的工作。比方说从编程来讲,很多学校是从C或者是C++开始教学,但是有一些可以用JAVA语言来传授这个教学,而在“黑客道”我们不是这样子,我们是从Scheme的语言来传授计算机的本质,Scheme是LISP的变种,LISP诞生在Stallman院士工作的大学。这个语言非常小,特性不多,但是你不要小看这种小的语言,功能是非常强大的,而且计算机科学几乎所有的特性都在这门语言中得到了充分的体现。所以这个语言大多数在Scheme 版本都是以解释来发挥,解释语言一个好的地方就是可以把你的思想算法输入到计算机,马上得到验证,你的想法是否是对的,这样的话你在计算机非常好的交互,通过这个语言的话,我们可以教授计算机非常本质的一些东西,而且这种特性理解的时候,你再去学习新的语言的时候,不会感到很多难以克服的困难,而这门语言学习数据结构、编译原理等等计算机核心的课程。

  Scheme语言学了之后,作为一个程序员你可以利用这个语言来表达一个问题的算法,去构造解决问题的一个模型,而这个模型从数学模型到计算模型,这个转化是非常容易构建的,这是我们采用的第一种编程语言,当学员熟悉了这个语言之后,我们会让学员学习C语言,用C语言去构造一些基本的砖块,因为你有基本的砖块之后,可以构建其他的程序,基本的砖块怎么构造呢?我们在编程语言的第二阶段,可以教授C语言,如果应用C语言来构造形形色色的数据结构,构造形形色色的编译模块。第三个我们会讲汇编语言,作为一个新程序员只有理解了计算机硬件的工作原理,才能说这个程序员是真正理解了计算机工作的本质。所以我们在第三阶段,深入到硬件的层次,如何来通过写汇编的代码来构造一个计算机程序,所以在编程语言的选择方面,我们选择了这三种语言作为计算机的“黑客道”的教学。当然在这个教学过程中,我们使用了很多材料,试图向学员传授一个三兼顾的一个模式,三兼顾就是兼顾哲理的、数理的和技理的指导,没有哲理的指导你很快就陷入了非常多的细节当中,找不到头绪。对于初学者这是尤其重要的学习哲学方面的指导是非常重要的。

  当然哲学是一个朴实性的,从很大的领域迅速缩小到一个小的领域来看这个问题,可以帮助进行这部分的调整。有了哲学的思考的指导之后,我们还鼓励学员学习基本的数学的理论,在我看来计算机是数学的一个分支,早期的计算机科学是从计算的角度,从数学计算到符号计算,发展到现在这个工程。因此在这个领域,我们讲数学家是怎么思考问题的,而不是说你做道数学题目,光做题目的话,不一定会对数学题目,对数学本质有很好的了解。因此我们把大量的数学的知识,伟大的数学家前辈的数学理论,他们是如何思考出来的,他们思考问题的方法是什么,我认为这些方法对于解决编程实践中的建模问题是非常重要的。

  因为在解决编程问题的时候,首先一个数学模型,然后把这个数学模型翻译成计算模型,当然这个是非常重要的,当然很遗憾在传统的计算机教学当中,往往是数学的重要性强调的还不够,所以在“黑客道”的教学当中,我们非常重视数学基本功的培养,而且不是为数学而数学,而是为了建立一个解决实际问题的模型,所以才学数学,有了这个数学模型之后,我们可以找到一个非常合适的方法,把数学模型翻译成计算模型,翻译的过程对我来说最好的语言,至少对我来讲就是在“黑客道”的教学当中,不光讲哲学、数学,还把这些和其他的程序结合起来,我们可以分析原代码,通过原代码的分析来看一看自由软件的代码是如何体现的,对哲理的思考和数理的思考。经过了这样的训练之后,学员会对计算机本质有一个非常清晰的,系统的认识和掌握。所以我觉得有这样系统的分析掌握之后,你会了解计算机的本质,因此在将来的应用当中,他们会做出非常多的优秀的程序来。所以“黑客道”的教学大致情况是这样子。因此到现在为止“黑客道”是一个符号,或者是一个品牌,而这个品牌代表着他完整的教学思想、教学方法、教学内容,而且这个数学内容我也讲过是完全基于自由软件开发的,完全可操作的,这个没有秘密可言,只要一步一步按照教员的指导来进行系统的训练,每个学员都可以成为优秀的系统程序员,具体时间,每个人成才时间有多长,因人而异,根据你学习的努力程度,投入的程度,你原来的基本功这些因素密切相关,一旦程度能够把心态沉下来,在我看来是非常艰难的一步,一旦沉下来,按照流行来走,成为一个系统程序员并不是高不可攀或者是难于上青天的。所以今天Stallman先生和我一起把所知道的情况向广大的网友做一个简单的介绍。关于更多的“黑客道”我写过一篇文章,可以在我的网站上下载,www.rons.net.cn。谢谢大家!

  主持人:我们要谢谢两位嘉宾,刚才两位嘉宾的话让我们印象非常的深刻,Stallman先生在介绍自由软件定义的时候说,我们可以自由去研究它的源代码,可以自由改动源代码,可以帮助人们来自由的将这些源代码修改后再发给其他人,让其他人也也能够受益,而且他提到我们应该以道德的方式发布这些自由软件,让每个人都拥有这种自由。洪峰先生也提到作为这个自由软件的参与者,要有好奇心、耐心、细心的学习,必须要贡献于这个社会,我们也希望越来越多的网友关注自由软件。下面我们回答一下网友的提问。

  网友:Stallman先生为什么会在当初在启动GNU工程,发起自由软件运动,我们想听听做您当时对这件事情的想法?

  Richard Stallman:在70年代的时候,我在MIT工作,我是程序员社区的一份子,我们共同分享软件,这是生活的一部分。如果谁写程序的话都会和其他人分享这个程序,只要对方对这个软件感兴趣,这是非常好的方式,因为我们在共同努力来推进人类知识的增长。但是在70年代末,有所变化,其他地方的人开始开发专有软件。我觉得这很丑陋,是一种非常丑陋的生活方式,我觉得这很恶心,就是人们不能去分享这些东西。后来一些非自由软件来到了MIT,这是一个激光打印机,这个打印机就是由非自由软件控制的。我想对它做一些改变,当时我还不知道这是不道德的,但是我就是不喜欢它,我想改变它,但是我无法做到这件事情。因为我并没有它的源代码,而且这是MIT仅有的、没有原代码的软件。

  后来我去了卡内基。梅隆大学,他们有打印机的源代码,我就到办公室去跟他们说,我是MIT的,能不能把打印机的源代码给我呢?我认为这是我们社区的一个部分,他肯定会给我分享这个,但是他拒绝了,他说他签署了一个合同,不能和我分享这个源代码,我感到我被背叛了,非常生气。我一句话都没有说就回去了,我认识到根本没有必要跟他争论什么,我非常生气,根本想不到如何来表达我的气氛,因为他背叛了MIT所有的同事。但是不光如此,他背叛了整个世界,他签署了这个合同,承诺说不会和其他人分享这个源代码,这是一个保密合同,他背叛了整个世界。我想到了曹操,但是事实上,他比曹操还要坏,因为曹操只是谈到了要背叛整个世界,但是那个人的确是背叛了整个世界。

  因此我想到这个的时候,就思考在80年代初发生了什么样的情况,因为我的这个社区已经不再存在了,外面的公司就把所有的黑客都雇佣走了,只剩下我和其他两个人,我也成为MIT人工智能实验室的最后一名黑客。但是一个黑客是不可能让整个社区运行的,因此我周围的一切都已经不再存在了,这让我非常的伤心。

  然后我认为我想做一些工作来建立另外一个社区,在这里面人们能够再次合作,如何做这个工作呢?我想到了一个办法,这就是GNU工程,一个自由的操作系统,从某种程度上说可以这么做,建立这样的操作系统,但是这并非天堂,是由人来做,但是还是不错的。

  网友:接下来20年当中,自由软件非常的成功,那么在你看来有没有里程碑的事件来和大家一起分享一下,或者是受到过哪些重大的挫折,让你还记忆犹新的?

  Richard Stallman:我无法清楚记得有什么里程碑,可能有,但是我已经忘记了。但是我就是记得有一些重大的挫折,我遇到的问题和障碍。比如说微软想购买有社会影响力的机构,比如说学校,还有大学,以及地方政府,甚至是国家政府。微软购买了他们的帮助,将整个社会推向这种依赖微软的情况,因此我们现在有些政府就像是殖民政府一样,而不是独立的主权政府,因为这个不自由的软件实际上是一种殖民的方式,就是电子殖民的形式,就像是过去的殖民主义一样,殖民地包括大型的公司,招收地方的精英来帮助他们保持他们的这种影响力,因此地方的这些精英就是从中可以获得报酬,而这就是在中微软工作人的状况,他们是地方的官员给殖民地工作,让其他人都成为了被殖民地。因此你不应当成为这其中的一员。

  网友:未来的自由软件运动的目标是什么?能不能讲一讲未来的发展呢?

  Richard Stallman:我们并不做具体的计划,有的时候,我们做一些技术的一些项目。比如说现在有人正在努力的发展一个自由的JAVA平台,这是非常重要的,因为许多的程序员用JAVA来写程序的,但是SUN的JAVA平台不是自由的,大部分的程序只能在不自由的平台上运行,这是非常糟糕的,就意味着任何人想用这个程序的话就有一个道德的限制。程序是要保持还是要拥有自己的自由,因此我们现在正在努力的开发一个自由的JAVA平台,因此可以说这是我们的目标之一。

  另外一个非常重要的目标,就是开发一个自由的FLASH的播放器,现在只有不自由的软件来运行这个,因此现在不能用这个FLASH来出版一些东西,这个也能够改变,只要我们有足够多的播放器,但是在这个之前不要用FLASH。

  另外我们要做的就是要说服人们不要使用专有软件,比如说现在有很多人用WORD来发文件,因为这就是微软成为一个独裁,微软因为会改变这个WORD的格式,WORD还有一个模式,它是不允许自由软件来打开它的,我们必须来倡导这种运动,让人们拒绝来读这个WORD文件,如果人发给我这个WORD文件的话,我会告诉他读不了这个文件,我不会跟大家讲什么,因为它有带有病毒,或者说把你个人的信息给公布出来,虽然你以为这些信息虽然不在,而且因为你用WORD的话,也逼迫其他人也用微软的程序,这是非常糟糕的。

  现在还有一些网站只能用微软的浏览器才能正常访问,我们要抱怨一下这些网站,我们要求阅读的人告诉那些网站说,如果他们只使用微软的IE来做的话是非常不好的。事实上美国的版权办公室要求公众来讲一讲,如果我们现有的网站只能用IE才能访问的话会是什么样的情况,这个办公室就让大家写下他们的看法和意见,几周之前我们也做了这个工作。因此这就是我们现在有的目标。

  还有一些问题是来自于新浪副总裁的。第一个问题:我有资源来掌握一个社区,你对我有什么看法和建议?(Stallman回答)我认为最重要的就是加入到反对专有软件的活动当中,今天非常高兴的看到可以用Ogg/theora来作为视频格式,这是自由软件。目前的大多数播放器都是专有软件,里面充满了秘密,那不是自由软件,希望大家都不要采用这些视频格式。顺便说,Ogg/theora格式是很高质量的编码方式。第二个问题:我的大部分同事并不了解自由软件和开源软件的差别,可否给解释一下?(Stallman回答)自由软件和开源软件差不多是一样的东西,都是软件,但是两种不同的哲学。自由软件和开源软件从哲学的角度看是非常不同的,因为它们基于不同的价值观。自由软件是关于自由以及社区,是一场道德运动,这场运动要求我们尊重其他人的自由,我们不应当忍受剥夺其他人的自由,我们不能让其他人成为被殖民者,因此自由软件涉及到对错的问题。而开源软件的哲学并不涉及到对与错,它仅仅是一个实际的价值观,这种哲学认为,他们有一个开发的模式,如果你按照这个开发的模式来做的话,那么就会得到一个高质量的软件。因此这就像是一个自由软件的一个非常浮浅的一部分就是开源软件,但是这个自由软件不光是如此,看一看如何来做更好的自由软件,这一点才是非常重要的,因为从使用的角度来看的话,这些研究是可以非常有用的。但是如果自由能够给我们得来技术先进带来的好处,我觉得不会有任何的抱怨,而且我也喜欢技术含量更高的软件,这个更为重要。因此开源软件的哲学,忽视了非常重要的一个问题,也就是如果让其他人成为被殖民者的话这是错误的,我们必须阻止。从哲学层面上它们是完全不同的,但是如果这两种哲学还有一个标准,就是什么是软件可以接受的,而这两种标准是完全不一样的。有一些部分的开源软件是自由软件,但是几乎所有的自由软件都是开源的。

  主持人:还有两个问题来问一下洪峰先生。我们想了解一下TUG 2005会议的情况?

  洪峰:TeX User Group每年有一个年会,今年的年会是在武汉开的。你知道TeX是一个自由软件,有巨大的用户群体,而且作为一个创作工具,是写书界和出版界事实上的标准,因为在排数学和科学论文图书的时候,可以产生非常高质量的输入效果,可以满足印刷工业的需要。而今年的年会是8月23号到25号开的,一共有30多个来自不同国家的朋友参加了此次会议。

  主持人:在整个自由软件的社区里头,用自由软件进行创业的情况很多吗?

  洪峰:自由软件的特点是你可以深入的了解,软件系统的各个细节,当你理解了原作者的创作思路的时候,这个时候你可以对软件进行改写,这个时候你获得了一种权利,可以利用这种权利来创造某种更多的服务。

  主持人:由于时间的关系,此次聊天到此结束,再次谢谢各位网友,谢谢嘉宾,谢谢大家。

发表评论 _COUNT_条
Powered By Google
不支持Flash
·《对话城市》直播中国 ·新浪特许频道免责公告 ·诚招合作伙伴 ·企业邮箱畅通无阻
不支持Flash