Richard Stallman杭州行

我是来给Blog除草的,写个流水账。

5月初,终于磕磕碰碰地把Richard Stallman的传记《Free as in Freedom》翻译完了给出版社交稿了,想找他老人家写个序。他的回答还真是干脆:“没问题,我有空一定写。不过你们别等我的序啊,指不定什么时候能写好。还有,你们能不能把这书在两周内给印出300本来啊,我马上要来中国做6场演讲,我要用!”

虽然我清楚的知道在两周内把一本刚翻译完连错别字都没改完的书出版出来是不可能的,不过还是马上与徐继哲联系了一下,看看有没有别的变通的方法。徐继哲和哲思社区是RMS这次中国的行程的策划者。很意外的得知,RMS这次不但要来杭州和南京,还要来阿里巴巴。于是,我联系了公司负责接待RMS来访的同事,争取到了协助组织这次活动的机会。

所谓协助组织,主要也就是协助审阅活动宣传文案、挑选RMS演讲的提问环节的问题。不过,也别小看这点事情,其实很多人并不了解RMS的自由软件运动,大部分人更是把自由软件运动和“开源”混为一谈。事实上,我很早以前就说过,我其实不喜欢RMS带有宗教气息的自由软件运动。不过既然是邀请人家来做演讲,那还是投其所好吧。我努力的把所有文案和问题都重新组织了一遍,尽可能避免“开源”等会让RMS情绪激动的词语的出现。

19日一早接到RMS一行,按活动流程,先带他参观园区并给他简要介绍一下阿里巴巴集团。直接就碰了第一鼻子灰:“介绍要花多久?我不想听,我的时间很宝贵。”不过这倒也给我减轻了不少压力,于是这个参观介绍环节就简化到了不到十分钟时间。

合个影,RMS表示说,如果在合影中出现公司的名字或Logo,就不能把照片公开发布。我开玩笑说,我们可以把公司的Logo“Photoshop”掉再发布。这话显然激怒了他,“你在说什么?Photoshop?你应该说,GIMP,GIMP,GIMP!”

途径阿里云的办公区域,我介绍说这是“Alibaba Cloud Computing ”。RMS立马批评说“Cloud Computing”是一个很含糊其辞的词语,我们不能这么说,blah,blah。事后我回忆了一下,19日一天内,他给不同人总共讲了四遍为什么“Cloud Computing”是一个不好的词。

途经连接两幢楼的连接平台,RMS和他的女朋友被平台上的植物和鲜花所吸引,停下来拍照。我又嘴贱了,我说,过会儿吃完午饭离下午的演讲还有一点时间,可以在园区散散步,还有更多美丽的植物和花。“我有很多工作要做,有很多Email要回复,我没有时间散步!”RMS说。

早上的小范围圆桌会议后,公司活动组织者开始请RMS在一些T恤和图书上签名,作为下午的演讲活动的礼物。这个事他们先前没有跟我商量,所以我也没想到要提醒他们注意事项,结果就是我意料之中的:RMS拒绝在非自由的图书上签名,也拒绝在印有公司Logo的T恤上签名。

还好我自己倒是有备而来,事先印刷了几本《Free as in Freedom》中文版草稿。因为这本书使用GFDL许可证,RMS欣然在上面签名,不过他反复强调,请出版原书第二版的中文版,别出第一版,因为第一版中有很多错误。可惜这个事不是我和他可以说了算的,所以就只好先搪塞过去了。RMS的女朋友对这本书很感兴趣,同时她似乎对GNU网站的翻译工作也很关心和了解,希望我们能把GNU网站的翻译工作做得更好,翻译更多RMS的作品。不管怎么说,签名版《Free as in Freedom》到手了。难道我会告诉大家这就是我对这次活动这么积极的原因吗?

RMS的签名和他的Pleasure Card

RMS的签名和他的Pleasure Card

午餐,RMS真是个吃货。嗯,吃饭时他还把他不离身的龙芯笔记本电脑垫在盘子下面,弄得全是油。

下午的演讲,参考我另外整理的演讲实录,没啥新意。不过拍卖环节气氛还挺热烈,RMS真会卖萌啊,于是一个Baby GNU公仔拍出了550元的价格。提问环节完全没有按流程来,现场提问时不时蹦出“开源”一词,惹得RMS很是生气。他大声说“I am for 自由软件!”,全场大笑。

与RMS同行的,还有一位日本朋友,Akira Urushibata。2008年我在上海复旦大学召开的哲思自由软件峰会上听过他有关汉字哲学的演讲,记忆犹新。所以,当大家的焦点都在RMS身上,完全无视Akira的存在时,我找到不少机会与他进行了交流。Akira虽然不太会说中文,但他对汉字以及中国文化还是有很深的认识。Akira下午没有进行演讲,而晚上我赶到浙江大学玉泉校区活动现场时,也已经错过了他的演讲,颇为遗憾。浙大的活动现场也很火爆,不过我已经没有兴趣再听一遍RMS的演讲了,所以RMS演讲时,我就在会场外面跟继续跟Akira聊天,他跟我讲了不少中国历史,很多我都不知道,非常汗颜。Akira还送了我一本他的书,签完名,他问我要不要在上面再给我写点什么。我一时语塞,他想了想说,“我给你写个‘庖丁解牛’”。

接待RMS一行花了我大半天时间,整理演讲内容摘要也花了不少时间,后果就是忙上加忙了。经验告诉我,我总是越忙越写Blog,所以本流水账也诞生了。嗯,这事儿应该就到此为止了。

Richard Stallman演讲实录

这里收录的是Richard Stallman 2014年5月19日在杭州阿里巴巴西溪园区演讲的内容概要。应活动组织方的原本的期望,是需要完整听译的,但那样实在是一个比较费劲的工作,所以最后决定摘录了这些内容概要。同时我提供了一些参考资料的链接,对于演讲中的大部分主题,GNU网站上都可以找到详细阐述相关内容的文章。

录音下载地址(ogg格式):http://pan.baidu.com/s/1bnaRpi3 密码:mnep

开场白

如果你拍摄了照片,请不要发布到类似于Facebook的社交媒体上。因为这些网站会监控你的行为。

如果你录制了演讲的视频,请以ogg或WebM等自由的格式来发布,不要使用任何MP打头的格式,不要以Flash的形式发布,不要以Windows Media或QuickTime的格式发布,也不要发到Youtube上。

请确保其它人可以使用自由软件而不用额外的私有软件就可以下载这些视频。

参考阅读:

主题演讲

1. 什么是自由软件?

自由软件尊重用户和社区的自由。Free Software中的Free的含义是“自由”,而不是“免费”。

自由软件关乎使用者运行、复制、发布、研究、修改和改进该软件的自由。 更精确地说,自由软件赋予软件使用者四种自由:

  • 不论目的为何,有运行该软件的自由(自由之零)。
  • 有研究该软件如何运行,以及按需改写该软件的自由(自由之一)。取得该软件源代码为达成此目的之前提。
  • 有重新发布拷贝的自由,这样你可以借此来敦亲睦邻(自由之二)。
  • 有改进该软件,以及向公众发布改进的自由,这样整个社群都可受惠(自由之三)。取得该软件源码为达成此目的之前提。

所以,自由软件总是一个整体,不会有“部分自由”的软件。你对自由软件所做的修改,也必须是自由的。自由软件不是一个技术问题,而是关乎用户的自由,是一个社交与政治的问题。

参考阅读:

2. 为什么私有软件是不好的

私有软件在道德和社交上都存在问题,人们应该避免使用。开发一个自由软件是对社区的贡献,贡献的大小取决于这个软件有多有用。但开发私有软件不是对社区的贡献,私有软件限制了人们的自由,是有害的。

自由软件的运动的目标就是让大家可以自由的分享软件。如果使用了私有软件,你会面临两难的境地。比如,如果有朋友向你要一份私有软件的副本,你就得违反软件使用协议,或者拒绝朋友的请求。这时你应该选择错得太不严重的那个方式:违反软件使用协议。因为开发私有软件本身就是罪恶,必面要犯错时,就先得罪那些犯错在先的人。

解决这种两难境地的最好办法是避免使用私有软件,你手头没有私有软件,你的朋友也就不会要向你要副本。

参考阅读:

3. 为什么我们需要自由软件

自由软件可以帮助用户完全掌控自己的电脑,包括电脑本身和上面运行的软件。作为软件开发者,你需要保证你的软件的用户充分享有上面提到的四个维度的自由。

私有软件开发商常常会在软件中植入一个不好的东西,比如DRM,后门或监控用户行为的功能。所以,私有软件就是恶意软件。比如:Windows是一个恶意软件,因为它内置了DRM、后门和监控用户的程序。尤其是移动设备上的Windows 8,它只允许用户安装指定的应用程序。微软还可以通过Windows在你的电脑上自动安装系统更新程序,就这是一个后门,只有恶意软件才会这么做。

同样的,苹果的所有“i”系列产品也都是恶意的。开发者试图把用户都关进“监狱”,控制他们的一切,所以才有“越狱”行为的出现。

Flash Player是恶意软件,因为它有监控用户行为和DRM的功能。

Android是恶意软件,因为它会把用户位置发送给某些公司。

Kindle是恶意软件,因为它剥夺了人们阅读图书的自由。它会把阅读进度发送到Amazon,它还限制了你与朋友分享图书的自由。Amazon还留了个后门,可以远程的删除你设备上的图书。

在乔治·奥威尔的《1984》中描述了人们在无时不刻的监视下生活的故事,非常值得一读。

请引导你的朋友从一开始就不要犯错,尽可能远离这些充满恶意的软件系统。

手机也是一种危险的产品,很多运营商可以远程改写手机上所安装的软件,甚至把它变成一个行动跟踪和窃听设备。有些手机甚至关机也是假的,只要电池还在,它就不断会发出信号,更有些手机甚至不允许拆卸、更换电池。运营商可以随时知道你所在的位置。我不用手机,虽然这有点不太方便,但在方便和自由之间,我更珍视自由。

使用私有软件就可能使用了恶意软件,要保证安全,就应该选择自由软件,因为你可以自己去研究它的实现、改进它,在这个过程中即便真的发现了有恶意的功能,也可以很方便的把这些功能去掉。事实上自由软件作者不会在自由软件中植入恶意的功能,因为自由软件让这样植入无处藏身。

Ubuntu虽然包含了很多自由软件,但它也存在一些间谍软件的特性。请参考文章:https://www.gnu.org/philosophy/ubuntu-spyware.html

参考阅读:

4. 自由软件运动

1983自由软件运动发起的时候,那时几乎所有软件都是私有的,所以我决定重新创造一个自由的操作系统,重写所有的软件。作为软件的作者,我可以保证这些软件都是自由的。要保证整个系统都是自由软件,这个工作量很大,所以需要集合各种现有的力量来完成这个任务。保证与Unix的兼容,这样可以用这个自由的系统来替换Unix。

GNU是一个递归名词,是GNU’s Not Unix!的缩写。创造这个词的时候有两个想法:1.它是一个递归词,并表达了GNU不是Unix这个意思。2.GNU本身就是一个单词,是角马这种动物的名词。不过在说GNU工程时,发音要发为g’noo,而不是new。因为这个工程已经有20多年历史了,它不再“new”了(幽默)。

参考阅读:

5. GNU/Linux

Linux这个词常常被错用,正确的用法是在讨论这个操作系统时把它叫作“GNU/Linux”,因为Linux只是操作系统的内核,加上各种GNU的程序后,才构成了完整的操作系统。这种错用从1992就开始了,那时GNU还在开发自己的Hurd内核,但是Hurd的野心太大,一时半会儿完成不了。1992年Linus把Linux以GPL发布后,Linux就成了自由软件,所以GNU选择Linux作为系统的内核。因此,在讨论整个系统时,需要同时提到GNU和Linux,它们缺一不可。

GNU必须的是自由的,Linux则是Linus创造的,Linus本人并不反对私有软件,但他不应该误导人们只看到Linux而忽视GNU工程。应该让人们清楚的知道,GNU是一个自由的操作系统,GNU/Linux并不是Linus一个人的成果。

GNU的未来取决于我们的价值观,所以我们需要向所有人宣传我们的价值观。我们必须强调自由的和重要性,不然我们就无法告诉人们为什么我们要为GNU工程而努力。

参考阅读:

6. 开源

“开源”是一个会误导人的词语,它是1998年时自由软件社区中一个不乐意宣传自由软件运动精神的人创造的(指的是Eric Raymond),它们不乐意传播自由的理念,把我们的作品与我们的价值观分离。开源不讲自由的理念,自由软件关乎人们的道德,开源只管利益。

我不是“开源”的支持者。我们必须珍视我们崇尚自由的理念,向人们宣传我们的理念。

参考阅读:

7. 我们应该怎么做

大部分GNU/Linux发行版都包含了一些非自由的软件,它们引导用户去使用非自由的软件,这是不对的。我们应该使用真正自由的GNU/Linux发行版。比如:gNewSense。虽然使用完全自由的发行版可能会带来一些使用上的不方便,但是我们在方便和自由之间应该选择自由。自由和公正比方便更重要,这是我们应有的价值观和选择。

作为一个自由的操作系统,就应该保证系统的每个组件都是自由的。很多时候仅仅“开源”是不够的。Linux内核其实也不是完全自由的,因为它里面带有一些二进制的BLOB,虽然它们也是以“源代码”的形式出现,但它们本质上并不是自由的,Linus在“自由”和“方便”之间错误的选择了“方便”。所以GNU也有一个自由的Linux分支,名为Linux Libre去掉了Linux中那些不自由的东西。

Mozilla是开源的,但也不是完全自由的。因为它支持一些非自由的组件,包括DRM。大家应该联合起来谴责这种行为。

很多网页中也有非自由的JavaScript代码,JavaScript总是“开源”的,但是开发者仍然应该在代码中包含软件许可证,明确表明它们是自由的。我们有一个名为LibreJS的浏览器插件,可以自动阻止非自由的JavaScript代码运行(其中可能包含很多恶意的JavaScript代码),同时这个插件还可以帮你向网站开发者发出抱怨邮件,促使他们把JavaScript换成是自由的代码。所以,当你开发JavaScript代码时,请带上一个自由软件许可证。不要使用非自由的JavaScript库,如果必须要用,你可以考虑自己重写一个自由的版本。

避免使用SAAS服务,因为你没办法控制你的程序在什么样的系统上运行。

虽然Linux使用了GPLv2许可证,但这只是因为Linus本人想对代码有更多的控制权。但是我们应该使用“either version 3 of the License, or (at your option) any later version”,这样当有新版本GPL许可证发布时,你的代码就可以和自动允许其它人使用更新的许可证。你应该对自由软件基金会有充分的信任,如果你不信任自由软件基金会会维护人们的自由的权利,那也没有别的什么机构更值得信任了。

我们支持反向工程,因为这样可以创造出更多的自由软件。

如果要了解更多相关的信息,访问以下网站:www.gnu.orgwww.fsf.org

如果想帮助GNU工程,请访问:www.gnu.org/help。可以先从以下小事做起:用GNU/Linux来称呼使用Linux内核的发行版;避免使用“开源”一词,使用“自由软件”。加入自由软件基金会,成为一名准会员。

参考阅读:

问答

Q: 在中国,阿里巴巴在开源和自由软件事业上做了很多工作。但其它一些公司并不重视这个。如何来更好的提升自由软件的影响力。

A: 可以关注一下GNU AGPL许可证。这个许可证保证了Copyleft许可证在Web上运行时的适用条款。通过它可以推动更多的厂商开放他们的代码,向自由软件做出贡献。

参考阅读:http://www.gnu.org/licenses/why-affero-gpl.html

Q: 有些软件用“抽象层”的方式来隔离自己与“开源”软件,怎么看这个问题?

A: 我不是“开源”的支持者。抽象层的做法并不奏效,只要你的程序与自由软件是一个整体,GPL就能对你的程序产生约束,整个 程序都得是自由的。除非你的程序跟另一个自由软件只是在系统中同时运行,相互之间没有联系,这才可以对你的程序使用不同的许可证。但这种情况下,也不需要“抽象层”这个东西了。

Q: 开源软件一样可以让我们拥有“自由之一”,有啥不好的。

A: 开源会带来误解,开源会限制你的自由。开源只是让你可以看到源代码,在具体的使用条款上可能会有各种限制。

Q: “云计算”是恶意软件吗?

A: 请不要使用“云计算”这个词,因为它很不准确,得具体情况具体分析。如果是说“虚拟机租用”,只要服务商不限制你在虚拟机运行自由软件,那就是没有问题的。如果是说“SAAS”,那是一件不好的事情,前面已经提过。如果是说“云存储”,那就是不好的,因为你不应该把自己的东西存到别人那里,他们可能会滥用你的私人文件。除此以外,云计算这个词可能还有更多的应用场景,请不要使用这么含糊的词语。

参考阅读:http://www.gnu.org/philosophy/who-does-that-server-really-serve.html

Q: 硬件很多不是自由的,怎么办?

A: 目前没什么办法。我们只能尽量支持按自由理念来设计的硬件,但毕竟硬件需要工厂去生产,我们对此没有足够的控制力。

Q: 如果微软和苹果也开源的话……

A: 我不再回答有关开源的问题,我们不应该宣传“开源”这个词汇。我是为“自由软件”而生。你可以重新组织一下你的问题吗?

Q: 如果微软和苹果能把他们的软件变为自由软件的话……

A: 那我们当然可以使用。

Q: 为什么自由软件与非自由软件不能和谐相处,人们各取所需呢?有些私有软件也做得非常出色。

A: 曾经,奴隶与农场主也是“和谐”相处的。我不用私有软件,我会躲开他们,如果我用私有软件,他们会夺去我的自由。自由软件做得再差,也比没有好。私有软件做得再好,也比没有不好。所以我选择没有。

自由软件运动的目标就是让软件都变成自由的,GNU不希望你使用任何私有软件。现在我们已经取得了很多的成就,要实现完全自由计算的愿景,我们需要更多的自由软件。

也许私有软件能做不少有用的工作,但是开发私有软件依然是不对的。

参考阅读:http://www.gnu.org/philosophy/when_free_software_isnt_practically_better.html

Q: 现在跟上世纪80年代相比,对于自由软件有何不同?

A: 1980年代时,我们没有自由的操作系统。但那时的开发者还很诚实,他们开发用户想要的软件,不会开发恶意的系统。

现在,非自由的操作系统中,常常包含很多恶意的东西,还促使用户去信任系统,失去对系统的控制。

总体来说,现在的环境比80年代更差。不过,80年代时你没办法找到一个自由操作系统来在你的电脑上运行,现在,我们完全可以在自己的电脑上运行自由操作系统,从这点来说,环境是好了很多。