目录

封面

扉页

版权

内容提要

译者序一 若为自由故

译者序二 自由自在

前言

第1章 从一台打印机说起

第2章 黑客路漫漫

第3章 黑客正年少

第4章 逆天行道，弹劾上帝

第5章 自由一隅

第6章 Emacs公社

第7章 道分左右，义无旁支

第8章 ST. IGNUCIUS

第9章 GNU通用公共许可证

第10章 GNU/Linux

第11章 开源

第12章 开往黑客地狱的短暂旅途

第13章 斗争仍在继续

第14章 跋：粉碎孤独

附录A 术语

附录B 黑客的三层含义

附录C GNU Free Documentation License

若为自由故——自由软件之父理查德·斯托曼传

[美] Sam Williams　著

邓楠　李凡希　译

人民邮电出版社

北京

图书在版编目（CIP）数据

若为自由故：自由软件之父理查德·斯托曼传/（美）威廉姆斯（Willams,S.）著；邓楠，李凡希译.--北京：人民邮电出版社，2015.4

ISBN　978-7-115-36951-2

Ⅰ.①若…　Ⅱ.①威…②邓…③李…　Ⅲ.①斯托曼，R.M.—传记②软件开发　Ⅳ.①K837.126.1②TP311.52

中国版本图书馆CIP数据核字（2015）第002143号

版权声明

Simplified Chinese Edition, jointly published by O’Reilly Media, Inc. and Posts & Telecom Press, 2015. Authorized translation of the English edition, 2002 O’Reilly Media, Inc., the owner of all rights to publish and sell the same.

Copyright© 2002 by O’Reilly Media, Inc.

All rights reserved.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License."

本书中文简体版由 O’Reilly Media, Inc.授权人民邮电出版社出版。

版权所有，侵权必究。

◆著　[美]Sam Williams

译　邓楠　李凡希

责任编辑　陈冀康

责任印制　张佳莹　焦志炜

◆人民邮电出版社出版发行　　北京市丰台区成寿寺路11号

邮编　100164　　电子邮件　315@ptpress.com.cn

网址　http://www.ptpress.com.cn

固安县铭成印刷有限公司印刷

◆开本：720×960　1/16

印张：16.25

字数：231千字　　2015年4月第1版

印数：1-3000册　　2015年4月北京第1次印刷

著作权合同登记号　图字：01-2013-3998号

定价：49.00元

读者服务热线：(010)81055410　印装质量热线：(010)81055316

反盗版热线：(010)81055315

内容提要

理查德·斯托曼是自由软件之父，他是自由软件运动的精神领袖、GNU 计划以及自由软件基金会的创立者。

本书用叙事体的风格，讲述了理查德·斯托曼的成长经历和传奇人生。全书共14章，记录了斯托曼从一名黑客成为自由软件的倡导者，并发起自由软件运动的成长经历。作者通过接触斯托曼本人、他的家庭、追随他的程序高手以及IT产业界，以全新的视角和丰富的笔触，塑造了这位软件产业界的“罗宾汉”的形象由此也帮助读者了解他所倡导的自由软件运动的缘起、理念和发展历史。

本书是了解黑客文化、自由软件运动以及斯托曼的一本轻松读物，适合任何IT行业相关人士、程序员以及Linux和UNIX爱好者阅读。

译者序一 若为自由故

“自由”这个词，有人崇尚，有人厌恶，还有人打心眼里对它咬牙切齿。而还有那么一小撮人，绞尽脑汁地要诉说着什么是自由，该如何保卫自由。而理查德·斯托曼（Richard Stallman）是这样一个另类：他定义了“软件用户的自由”，并且身体力行地为自己的自由理念宣传，在计算机技术领域掀起了一场“自由”运动。

瞎折腾——恐怕不少人会如此评价斯托曼。

如今，计算机与网络的普及改变了人们的生活方式。然而，技术的便利却没能带来意想中的地球村。用户面前不是一个信息流畅的互联网络，而是军阀割据的战乱天地。在利益与专制面前，自由再一次沦陷。费劲周折，人们重拾起自由这面大旗。此时才发现，斯托曼早已在这个战场上为大家奋战多年。

在我看来，理查德·斯托曼注定会成为一位俄狄浦斯式的悲剧英雄。他固执，有原则，拒绝妥协。而这也就注定了他难以如愿。他追求着一份乌托邦式的理想，也恰恰是这个理想本身铸就了他的几分睿智、几分悲凉。作为自由软件运动的发起人，他大可从容地把同根通源的“开源运动”视作晚辈后生，在当今众多公司投身开源的热潮里，摘取本该属于他的果实。然而，他却认为开源运动强调的是软件开发模式，忽略了软件用户的自由。尽管绝大部分开源软件许可证也是自由软件许可证，尽管没几个人真的在乎“自由软件”和“开源软件”究竟有什么区别，他还是拒绝与开源运动有任何瓜葛。人们诉说着自由软件的成果，分享着 GNU/Linux、Apache 基金会的成功故事，斯托曼则在旁边不断泼冷水：自由软件运动远没有结束，我们离目标依旧很远。

正如科学永远要与误解相伴一样，自由也总有被私利与强权侵蚀的可能。追求自由如同追求真理，永无止境。

这本斯托曼的传记为人们描绘了一位计算机界的奇才。然而，与那些硅谷创业故事不同，这里没有一夜暴富的上市传奇，没有商场战场的尔虞我诈，更不会看到主人公的圆满谢幕。如今的理查德·斯托曼，依旧参与着自由软件的开发，依旧在世界各地演讲，宣传他的自由软件运动；也依旧会遭受人们的误解与不屑，被视作异类。斯托曼的执着与固执令他难见成功，也成就了他的传奇。

本书写成于 21 世纪初期，书中描写的一些环境当下早已不再：如今，自由/开源社区蓬勃发展，甚至硅谷的各大公司也纷纷抛来橄榄枝。自由软件与开源软件早已不是商业公司的敌人，反而是众多企业的得力助手，甚至是利润来源。哪怕是曾经自由软件运动的宿敌——微软公司，也投身到自由/开源软件的开发中，甚至公开了自家公司产品的代码。这一切的发展，都始于斯托曼当年的一份宣言。而其中原委，只有读过之后才能品味。

本书原题为 Free as in Freedom。本意是强调 Free 一词中的“自由”意项。对应的中文翻译则让我们犯了难。为此，我们曾在 GNU官方网站的中文翻译组征求意见，最终选定了半句匈牙利诗人裴多菲·山多尔的“若为自由顾”来作为本书的标题。裴多菲曾领导了1848年爆发的匈牙利革命，并为此献出了自己 26 岁的生命。尽管斯托曼不一定会赞同裴多菲的政治理念，但那份为了争取自由而拼进全力的执着，却是两位领袖的共通之处。

非常荣幸能与凡希合译本书。他翻译了第 9章以后的内容，并完成了绝大部分的校对工作。是他的热情，让我这个习惯拖延的人追上进度。感谢人民邮电出版社陈冀康编辑的帮助，是他的耐心才让这本书最终得以出版。也感谢哲思自由软件社区，特别是徐继哲先生对本书的支持。

与很多翻译作品一样，本书也难免存在疏漏。但作为一本“自由”图书，读者可以参与改进，我们也会根据读者的建议更新本书的电子版。

邓楠

2014年5月于山景城

译者序二 自由自在

1999年，我第一次尝试安装 GNU/Linux，这也应该是我第一次接触“自由软件”。这次尝试的结果就是让我损失了硬盘上积累的自从 1994年第一次接触电脑以来所有的资料。虽然遭遇了这样的不幸，却仍然磨灭不了我的好奇心。1999年到 2006年期间，我屡战屡败地安装过各种各样的GNU/Linux发行版，但最终还是选择了GNU/Linux作为我日常使用的操作系统。

2004年，我第一次接触 Emacs 编辑器。Emacs 实在是个难以上手的家伙，好不容易通过 Emacs内置的教程学到一点皮毛后，我就决定尝试把这份教程翻译成中文，造福后人。我向 Emacs的邮件列表发了一封热情洋溢的邮件，咨询是否可以由我来完成翻译工作。很快收到了两封回信，说 CVS 中已经有人完成了教程的中文翻译，会随着下一个版本的 Emacs发布，并欢迎我对现有的译文进行审阅。

在继续学习 Emacs的过程中，我终于认识了 GNU工程，也才真正明白了什么是“自由软件”。后来我加入了 GNU官方网站的中文翻译小组，在翻译 GNU网站的各种页面和文章的过程中，对自由软件、GPL以及自由软件运动发起人理查德·斯托曼有了进一步的认识。

2008年5月24日，我参加了在上海复旦大学举行的“哲思自由软件峰会”，第一次与斯托曼有了面对面的交流。除了他所使用的OLPC XO-1 笔记本电脑让我垂涎欲滴外，他在现场所表现出来的强烈个性更是给我留下了深刻的印象。会后，我请他在某本图书上签名的请求被他毫不留情地拒绝了，“这不是一本自由图书，我不能在上面签名。”斯托曼的解释非常干脆。

2011年的某一天，我在无意中发现，七年前回复我有关 Emacs教程翻译问题的人之一就是斯托曼本人。我与斯托曼的这两次直接交流，得到了截然不同的反馈：对于向自由软件社区贡献自己力量的行为，斯托曼会给予热情的支持和鼓励；对于非自由的软件和图书作品，斯托曼的抵触毫不留情。

在 GNU 官方网站的中文翻译小组中，我和邓楠一度是比较活跃的两位成员。作为翻译小组的协调员，邓楠需要负责所有翻译成果的发布工作。我们的合作非常愉快，在 2010年左右完成了 GNU网站大部分二级页面的翻译工作。

所以，当邓楠邀请我跟他一起完成本书的翻译工作时，我马上就答应了。虽然这只是一本薄薄的小册子，但是对于我这样习惯于技术言语的人来说，要把这么多词句组织得不是那么干涩，还是有着不小的挑战。中间的曲折故事暂且不表，经过近一年的努力，我们终于还是完成了这本书的翻译工作。

交稿前夕，正好斯托曼要来中国进行几场巡回演讲，我有幸在杭州与他进行了一次更深层次的交流。谈到本书的出版工作，斯托曼本人表现出了极大的兴趣，甚至希望我们能立刻把这本书印出来在他接下来的巡回演讲中进行分发。同时，他也迫切地希望我们能够继续翻译出版他自己修订过的本书第二版的中文版。

由于本书英文版出版时间较早，书中所引用的很多网址如今都已经失效。不过在翻译过程中我们还是保留了很多失效的网址，因为即使对应的网页现在已经无法正常访问，但从网址本身也许仍可以窥探出一些有用的信息。

感谢人民邮电出版社陈冀康编辑在本书出版过程给予的帮助，正如本书作者在跋中所写的那样，在传统出版领域出版这样一本“自由”图书还是面临着不少的挑战。陈冀康编辑的耐心和执着，最终促成了本书。感谢好友贾征主动帮忙审阅了全书的内容，也感谢家人对我翻译工作的支持。

尤其值得一提的是，这本书使用的是 GFDL许可证，也就是说，这是市面上极为少有的一本“自由”图书。在 GFDL条款的保护下，读者可以自由地复制、分发和修改本书。我们已经把全书的 LaTeX源文件公开发布到网上，希望通过我们的努力，抛砖引玉，让更多的人可以参与到了解、完善和传播本书内容的活动中。请访问http://www.freemindworld.com/faif获取本书的电子版本，并欢迎读者参与到本书第二版的翻译工作中来。通过读者与社区的共同努力，希望能在第一版的基础上进一步精雕细琢，完成一部至瑧完美的作品。今后如果你有机会见到斯托曼本人，不妨带上本书，他一定会非常乐意在这本记录他人生故事的“自由图书”上签名的。

李凡希

2014年5月于杭州

前言

理查德·M·斯托曼（Richard M. Stallman）的作品本身就为他自己代言。从源代码中的文档到公开发表的论文和演讲，很少人能像斯托曼那样把自己的想法和作品毫无保留地公开给大众。

这样的“公开”让人耳目一新——请原谅我用一个与斯托曼特质格格不入的词来形容他的话。不论如何，我们仍然生活在一种把信息尤其是个人信息当成是一种无价的物品的社会中。人们不禁要问，为什么有人会愿意公开如此多的信息，却并不求什么回报？

我们会在后续的章节中看到，斯托曼并不是完全无私地公开他的言论和作品。他发表的每一个程序、演讲或有记录的格言都有标价，即使不是一般人所熟悉的那种需要用货币来支付的价格。

把丑话说在前面不是作为一种警告，而是一种坦诚。作为一个花费了去年一年时间发掘有关斯托曼个人历史的人，对他的作品做出这样的评价必须得拿出一些勇气。马克·吐温（Mark Twain）有一句格言：不要为了不实报道跟媒体人争吵。如果用在斯托曼身上，就是永远不要给一个把自己一切想法都公诸于众的人写权威传记。

对于那些愿意花几个小时来阅读本书的读者，我会很有信心地说，本书中有些史实和引文是你们在 Slashdot 或 Google 搜索中无法找到的。当然，你需要为获得这些信息支付一定的费用。对于纸质书的读者，你的购买行为就已经支付了这些费用。对于电子书的版本，你可以用支持自由软件相似的方式来“付费”。感谢 O’Reilly & Associates公司的同仁，得以让本书以 GNU自由文档许可证（GFDL）的形式发行，这意味着你可以修改本书，或者发布一个你自己改编过的版本，并以相同的许可证来发布。

如果你正在阅读的是电子版，并愿意以支持自由软件的形式对本书做出贡献，也就是说，如果你愿意对本书进行改进或把它推荐给更多的读者，我会非常感激。从 2002年6月开始，我会在在线商店中发布一个本书的纯 HTML 的版本——http://www.faifzilla.org。我的目标是定期对它进行更新，并随着时间的流逝把 Free as in Freedom 的故事继续延续下去。如果你选择后一种形式，请阅读本书的附录 C，这是一份完整的 GNU自由文档许可证，里面描述了你所享有的权利。

对于只是想坐下来安安静静阅读本书的人，即使你选择的是在线电子版本而不是纸质书，我仍把你们对本书的关注看成与付费购买纸质书一样是对本书的支持。对此，你无须感到惊讶，因为你是采用了一种不同的方式来表达了你对本书的美好祝愿。

最后，我想说明，这只是一本人物传记，但它也是一本技术文档。在撰写和编辑本书的过程中，我和编辑权衡了很多这个故事中的关联人物所提供建议和素材，包括理查德·斯托曼本人。我们意识到在这个故事中有很多的技术细节，需要由更多素材的支撑才能表达得更为清晰。由于本书以 GFDL发布，因此我们也欢迎读者向给自由软件打补丁那样为本书打补丁。所有被我们接受的改动都会整合到本书的电子版中并最终可能会整合到本书以后的印刷版本中。如果你愿意为本书提供改进意见，请发邮件到 sam@inow.com。

建议与问题

请把你的建议和问题寄送给本书的出版商：

美国：

O’Reilly Media，Inc.

1005 Gravenstein Highway North

Sebastopol，CA 95472

中国：

北京市西城区西直门南大街 2号成铭大厦 C座 807室（100035）

奥莱利技术咨询（北京）有限公司

我们为本书提供了一个网站，上面有本书的勘误表、示例和其他相关的资料。这个页面上还提供了与作者和其他读者进行交流的网站链接。你可以通过下面的网址来访问这个网站：

http://www.oreilly.com/catalog/freedom/

如果有任何的建议或技术问题需要咨询，请发电子邮件到：

bookquestions@oreilly.com

有关 O’Reilly 相关的图书、会议、资源及 O’Reilly Network 的相关信息，请访问 O’Reilly的网站：

http://www.oreilly.com

致谢

由衷感谢 Henning Gutmann 对本书的关注，由衷感谢 Aaron Oas 在创作初期给 Tracy 的建议。感谢 Laurie Petrycki、Jeffrey Holcomb 和其他 O’Reilly & Associates 的同仁。感谢 Tim O’Reilly 对本书的支持。感谢所有参与审阅本书初稿的朋友：Bruce Perens、Eric Raymond、Eric Allman、Jon Orwant、Julie 和 Gerald Jay Sussman、Hal Abelson和 Guy Steele。希望你们能喜欢这本没有错别字的书。感谢 Alice Lippman提供访谈内容、花絮和照片。感谢我的家庭成员 Steve、Jane、Tish 和 Dave。最后，感谢理查德·斯托曼的勇气和忍耐力，让我们去了解有关他的一切。

——Sam Williams

第1章 从一台打印机说起

我畏惧希腊人，哪怕他们带着礼物来。

——维吉尔，《埃涅阿斯纪》

这可是台全新的打印机！怎么又卡纸了？

理查德·M·斯托曼（Richard M. Stallman）刚刚发现了这问题，这可苦了他了。他当年27 岁，是麻省理工学院人工智能实验室的一名程序员。一个小时前，他给那台激光打印机提交了一个 50 页的打印任务，之后就忙着干活去了。现在他正站在那台打印机前面，眼巴巴地看着它被纸卡住：总共才打印了的四页纸，还没有一页是自己的。换句话说，斯托曼那份 50 页的文件，外加别人的半份文档，全被一张纸卡住了，成了实验室网络上的两个孤魂野鬼。

干程序员这行也是有风险的：你总得等着机器干活。不过斯托曼还是能苦中作乐。可再怎么说，等着机器干活，和在它跟前盯着它干活毕竟是两码事。就说现在吧，斯托曼正盯着打印机，看它一页一页慢吞吞地往外吐纸。这情景对他来说可不陌生。斯托曼好歹也是个程序员，成天都在改进机器和程序，提高它们的效率。当下，他恨不得掀开这台打印机，仔细查查究竟是哪里出的毛病。

可惜，凭编程的能耐，没法解决机械工程的问题。斯托曼只能在重新打印文件的这些时间想点别的：能不能用别的办法，绕道解决这个卡纸的问题？

这台打印机来人工智能实验室有多久了？斯托曼努力回忆着。这机器是施乐公司（Xerox Corporation）捐赠的。它可是新一代产品的原型，是从上一代的复印机改进而来。和上一代比，它不再是简单地复印文件，而是从网络上接收数据，打印成专业品质的文档。它诞生于著名的施乐帕罗奥多研究中心（Xerox Palo Alto Research Facility）。再过大约十年，将会发生一场打印机革命，那时，许多计算机厂商都会投身其中。而这款打印机则是这场革命的先行者。

人工智能实验室的程序员们，本能般地喜欢折腾这些新酷产品。当初他们麻利地把这打印机请回来，把它和实验室中的各种复杂的计算设备连在了一起，结果甚是喜人。比起以前的打印机，这台新打印机打印速度飞快。平均大约一秒打印一页纸。以前要花二十多分钟打印的东西，如今两分钟就解决了。新机器的打印精度也更高了。让它给画个圆，它绝不会打出个鸡蛋；让它画条直线，它也绝不会拐着弯瞎划拉。

怎么看，这打印机都是份难以拒绝的礼物。

可没过几周，这机器的缺点就逐渐显现了。其中最要命的，就是卡纸问题。凭着工程师的直觉，程序员们很快就洞察出了这问题背后的诱因。这台打印机是在复印机的基础上设计的。倘若是一台复印机，它旁边总会站个人直接操作它。遇到卡纸问题，这个人总能立即发现，着手解决，不至于有什么大影响。用工程师的行话讲，这系统需要用户参与。所以，对于复印机来说，卡纸问题也就没人关注了。设计复印机的时候，施乐公司的工程师们都没把卡纸的事情放在心上，专心去对付其他问题了。可把类似的机械部件用在打印机上，问题就来了。

施乐公司在复印机的基础之上，设计了这个打印机。这个小小的变化，却使得人机关系发生了微妙而深刻的改变。现在，在同一时刻，这机器不再只服务一个用户。它要同时给整个网络的用户提供打印服务。这些用户也不再老老实实地站在机器前面，而是坐在网络的另一端，隔着老远，向这台机器发布打印命令，指望它能按要求完成任务。等这些用户回过神，想起去取打印的文件时才会发现，大半的内容都被一页纸卡住出不来了。

在这台打印机之前，斯托曼也遇到过卡纸问题，他也是实验室里第一个提出解决方案的人。几年前，实验室还用着一台旧打印机，也有类似的问题。这台打印机的控制程序，运行在实验室里的一台PDP-11 计算机上。那会儿，斯托曼修改了这个控制程序，解决了这个问题。当然，他没法直接修理打印机来解决卡纸的问题。不过他能修改控制程序，让它定期检查打印机是否工作正常，再把检查结果传给实验室的核心计算机——一台 PDP-10。生怕哪个粗心用户忘了去查看打印机，斯托曼还让控制程序在卡纸的时候，向所有等待打印任务的用户发送一条提醒消息。消息简短明确：“打印机被卡住了，请去维修。”收到这消息的人都是等着要用打印机的，所以问题就迎“人”而解。

斯托曼这解决方案虽然治标不治本，但也算讨巧。它没解决打印机机械部件的问题，却提出了一个次优方案：完善人机交互，及早报告问题。多亏了斯托曼加的几行代码，人工智能实验室的员工，不用再跑来跑去地查看打印机状态了。这样，每周起码节省了 10～15 分钟时间。用编程的术语讲，斯托曼的方案提高了网络的整体智能。

“你要是收到这条消息，你可就坐不住了。你多半等不及别人去解决卡纸问题，”斯托曼回忆着其中的逻辑，“你得亲力亲为，跑到打印机跟前。一两分钟之后，要是问题还没解决，就会聚来两三个人。这其中，总会有个人知道怎么修理。”

类似的巧法子是人工智能实验室的一大特色。尤其在其中的资深程序员之间，屡见不鲜。实际上，那些顶尖程序员不屑于用“程序员”这词。他们更喜欢用圈子里的行话，自称“黑客”。这词儿涵盖了不少内容：从抖机灵、甩包袱，到改进现有软件，优化计算机系统。而更深之处，则蕴含着旧时美国移民的智慧。对于黑客来说，有这样一条铁律：从头开发一个软件只是小儿科；改进一个程序才显真本事 [1]。

这条铁律，恰恰影响着施乐这样的公司，让它们乐意把自己的产品，以及配套的软件捐赠到黑客聚集的地方。要是这些黑客们改进了其中的软件，这些公司就可以把这些修改拿过来，化为己用，投入市场。用商业术语讲，这叫优势社会资产。公司花小钱，就能有个附属研发部门。

凭着这份礼尚往来的精神，斯托曼在这台新打印机面前并不慌张。他只要找个法子，把以前那套修改方案拿过来，修理修理这机器，或者用圈子里的话说，“黑”它一下，就万事大吉了。可是，他刚找了找这台施乐激光打印机的软件，就碰了一鼻子灰。这打印机根本不提供软件，至少没提供任何给人读的程序代码。要知道，那个时代，大多数公司都会发布软件的源代码（一系列可供人阅读的文本文件，用于详细定义程序的行为）。可当下，施乐公司提供的程序，却只有编译好的可执行文件。程序员倒是可以打开这些文件，可打开之后看见的，全是 0和 1。除非他们有闲功夫，乐意去翻译这些二进制信息，否则这些东西看起来只是一堆胡言乱语。

尽管斯托曼可谓是精通计算机，但还是没那份闲心和时间去解释这些二进制文件。不过作为一名黑客，他总是有法子。他知道，黑客这个圈子里，分享信息是至关重要的。过不了多久，就会有个黑客，从大学实验室或者哪个公司的机房里，拿出这激光打印机控制软件的源代码，分享给圈子里的同胞。

经历了几次卡纸事件之后，斯托曼还耐着性子安慰自己。不管怎么说，当初也遇到过类似情况的。几年前，实验室需要一个网络程序，让那台 PDP-11 和 PDP-10 之间协调工作。实验室里这群黑客自然能胜任这项任务。不过，作为一名哈佛毕业的校友，斯托曼记起了当初在哈佛计算机系，有个黑客也写过类似的程序。就运行在哈佛的一台PDP-10上。那台 PDP-10，和当下人工智能实验室这台一样，只是运行了不同的操作系统。哈佛的机房里有规定，要求所有安装在 PDP-10上的程序，都必须发布源代码。

作为校友，斯托曼还可以进哈佛的机房。他就大模大样地走进去，复制出源代码，带回了麻省理工的人工智能实验室。紧接着，他改写了程序，让它能在人工实验室的机器上运行。不费吹灰之力，人工智能实验室的软件设施又进步了一截。斯托曼甚至还在哈佛的软件基础上，增加了点新功能。“后来这个程序我们用了好几年。”斯托曼回忆道。

对于 20世纪 70年代的程序员来说，把软件复制来复制去，就好比从邻居家借碗酱油那样稀松平常。所不同的是，你从邻居那拿了多少酱油，邻居就少了多少。而从别人那里复制一个程序出来，并不影响别人继续使用那个程序。要说有影响，也是正面的。因为斯托曼对这程序还加了些功能，别的黑客可以自由地复制斯托曼改进的程序。这也算礼尚往来了。在哈佛那边，后来确实有个从 Bolt, Beranek & Newman这家公司来的程序员，复制走了斯托曼的程序。之后还又加了点功能，斯托曼则又把改进后的程序复制了回来，用回到人工智能实验室里。

“开发一个程序就好比开发一座城市，”斯托曼回忆着人工智能实验室的软件设施，“有些部分会被换掉，有些得重建翻修。新的东西会逐步加进来。可如果你仔细看某个部分，也许会感慨这块从风格看应该是 20世纪 60年代早期的；之后的部分估计是 70年代中期完成的。”

圈子里的这种氛围简单朴实，它让知识逐渐积累。这种积累为以后的发明和创造提供了稳固的基石。人工智能实验室以及世界各地的黑客们，都得益于这个氛围。比如在美国的西海岸，一群加州大学伯克利分校的计算机科学家们和 AT&T的工程师合作，遵循着如此积累知识的理念，创造了一整套操作系统。他们把这操作系统叫作 UNIX。UNIX 这个名字来源于另一个操作系统的名字——Multics，一个早期的学术研究项目。倘若是当初的程序员，只要愿意支付成本价和运输费，就可以买到一份 UNIX系统的副本。整套系统会被复制到一个全新的磁带上，完整地寄到购买者手里，谁都能买，童叟无欺。参与到这个文化小圈子的程序员，不一定都把自己称为黑客。不过，绝大多数人都有着斯托曼那般的情结：要是一个程序或者一个补丁可以解决自己的问题，没准也能帮到别人。独乐乐不如众乐乐，何不分享给大家，起码也算积德行善了。

一开始，施乐公司不分享源代码的行为倒也没惹到谁。斯托曼在找源代码的过程中，甚至都没想过去联系施乐公司：“人家都送咱打印机了，何必还非得兴师动众地管他们要代码呢？”

可是眼巴巴地等着源代码，如今还没找到，倒是让斯托曼起了疑心，勾起了他几年前一段不快的回忆。当初，一位在卡耐基梅隆大学的计算机博士，名叫布莱恩·瑞德（Brian Reid）。他开发了一个很不错的文本排版软件，名叫 Scribe。这软件可以让用户通过网络传递文档并且还支持自定义的字体，这在当时可是首例。之后这种功能的普及则带来了 HTML——如今 WWW 网络上的通用语言。1979年，布莱恩决定把 Scribe出售给一家在匹兹堡的公司，名叫 Unilogic。他当时刚好博士毕业，正打算把开发 Scribe的任务转手给别人，免得它流落到公有领域里。为了让这份订单更吸引人，布莱恩在 Scribe中动了点小手脚：他在里面放了个“定时炸弹”，让用户有 90天的免费试用期。90天一过，如果用户不交费，则不能再使用这个软件。

对于布莱恩来说，这个买卖是个双赢策略。一方面，正如布莱恩所期望的那样，Scribe的代码的确没有流落到公有领域；另一方面， Unilogic也有了一个向用户收费的途径。可这对斯托曼来说，这份交易完全是背叛了程序员的良心。布莱恩非但没遵循分享再传播的精神，而且竟然还助纣为虐，帮助公司去强制限制用户自由。

一周过去了，依然没有施乐激光打印机源代码的一丁点消息。斯托曼觉得这好像又是一笔索财要钱的勾当。不过还没等他给这事定性，好消息就来了：一个在卡耐基梅隆大学，计算机系的教授刚刚从施乐公司离开。这位教授还在激光打印机部分工作，而且从收到的八卦消息看，他在卡耐基梅隆大学还在继续激光打印机方面的研究。

于是，斯托曼这才抛开之前的胡思乱想，打算下次去卡耐基梅隆大学的时候，去会见这位教授。

也没多久，他就得到了一次访问卡耐基梅隆大学的机会。和斯托曼所在的麻省理工学院一样，它们那里也有一个人工智能实验室。这才几个月不到，斯托曼就因为工作原因需要去卡耐基梅隆大学出差访问。访问中，他在计算机系请人帮忙找到了那位曾在施乐公司领导激光打印机项目的教授。他正好就在办公室。

工程师之间的讨论总是开门见山的。几句简单寒暄过后，斯托曼就直入主题，说明自己是为了激光打印机的控制程序代码而来，以便可以修改后用到麻省理工学院的 PDP-11 计算机上。可令斯托曼吃惊的是，这位教授竟然拒绝了他的要求。

“他跟我说他答应了公司不能泄露代码。”斯托曼说。

记忆总是这么有趣。二十年过去了，斯托曼关于这段经历的回忆大部分都是空白的。他都不记得当初为了什么事去的卡耐基梅隆大学，连具体哪年去的都给忘了。他也不记得那位教授是谁。根据 Scribe的作者瑞德的回忆，惹到斯托曼的那位很可能是罗伯特·斯布鲁（Robert Sproull）。他曾是施乐公司 PARC 研究所的研究员，如今在Sun 研究所任部门主管。20 世纪 70年代，斯布鲁在施乐公司 PARC研究所负责激光打印机程序的主要开发。他在 80年代拿到了卡耐基梅隆大学的教职，并在那里继续他的激光打印机相关的工作。

“斯托曼想要的代码包含的可都是前沿技术，那可是斯布鲁去卡耐基梅隆之前，花了几年的时间研发的成果，”瑞德回忆道，“我想斯托曼拜访斯布鲁那会，他刚刚到卡耐基梅隆大学还不到一个月。”

可是，直接给斯布鲁发邮件，询问当初的事情，他却不记得这事了：“实在是无可奉告。”斯布鲁在邮件中写道：“我确实不记得有这么一件事。”

当事双方谁也不记得事情的细节，甚至都无法确定是否真的发生过。至于斯托曼说的，斯布鲁硬生生地拒绝了他的这件事，也就无从考证了。在之后的各种演讲中，斯托曼一再提及这件事。强调斯布鲁由于签署了保密协议，从而不能泄露源代码。如今在各个 IT 公司，签署保密协议已经非常普遍。不过在当时，为软件代码签署保密协议还算先例。这也间接地反映出施乐公司对激光打印机项目的重视程度。“施乐公司打算把激光打印机做成商业产品”，瑞德说，“他们除非疯了，才会把代码泄露出去。”

但在斯托曼看来，这种保密协议完全是另外一回事。那时大家都把软件认为是一种共有的资源，卡耐基梅隆大学一些研究员的做法，就意味着否定这个公理。这对斯托曼来说，就好比是一个农夫眼看着用来灌溉庄稼的河流干枯了，循着河道往上巡查，竟然看到一道大坝从天而降，拦住河水。大坝上赫然印着几个大字：施乐公司。

施乐公司用各种花言巧语，把一位程序员同胞带入了这片新天地，与世隔绝。不过一开始，斯托曼也没把重点集中在施乐公司那边，而是怪罪到了个人性格上。作为一个标准技术宅男，斯托曼和人沟通起来难免有点障碍。他这次亲自跑去拜访一位程序员同行，已经是一种充满诚意的行为了。而到头来却被当头一棒。让他实在觉得对方有点鲁莽。“我当时非常生气，都不知道怎么表达。我二话没说，扭头就走了，”斯托曼说，“没准我还使劲摔了门，谁知道呢。我能记得的，就是当时想赶快离开。”

二十多年过去了，斯托曼当初的怨气还在。他甚至把这个事件描述为人生转折点。然而，那之后几个月中，在人工智能实验室以及斯托曼身上发生的各种事，却比这次打印机事件还令人难以接受。斯托曼，本是一名孤独的黑客，本能地对绝对权威存有戒心。在经历了这一系列事件后，他变成了一位斗士，把传统的自由、平等、博爱的精神引入软件开发领域。而这次的打印机事件，在其一生的无数事件中则最值得一书。

“它让我思考了一些脑海中由来已久的问题，”斯托曼说，“我以前有过一些初步的想法，认为软件本该共享。可当时还不知道怎么表述。那时的想法还没有清晰到可以用简单几句话给别人介绍。”

尽管之前也有过类似的不快经历，可这次的打印机事件彻底让斯托曼意识到，这一系列的事件，正悄悄地侵蚀自己所珍视的文化——那个神圣不可侵犯的小圈子。作为一名世界顶级研究机构的顶级程序员，斯托曼之前一直都无视那些程序员同行所作的各种妥协让步，因为他们还不至于影响到斯托曼的工作。而如今施乐激光打印机的到来，让斯托曼开始注意到其他计算机用户一直忍受的程序和机器。这些程序很少能影响到人工智能实验室，斯托曼和实验室的成员之前一直都可以自由地重写软件，添加功能。直到有一天，人工智能实验室把一台计算机的操作系统从不相容分时系统（Incompatible Time Sharing Operating System）换成了商业的 TOPS 20 系统，这些就再也不能做了。

如今，这台激光打印机已经强势入驻到人工智能实验室了，而外面的世界也悄悄发生了变化。除了偶尔卡纸以外，打印机工作还算正常。可是按照个人喜好修改软件则不可能了。从软件业的角度看，这台打印机的出现是个信号，预示着软件是公司的重要财产。谁也不会再想发布软件源代码，因为这可能会给潜在竞争对手机会，让他们可以轻松山寨自己的产品。而在斯托曼看来，这台打印机简直就是个卧底。十来年的尝试，私有软件总算在人工智能实验室中站得一角。私有软件，也就是如今所说的专有软件，这次被打扮成礼物，潜入得悄无声息。

施乐公司后来还发出邀请，让一些程序员再使用它们的礼品。斯托曼说，要是再早几年，他没准也无法拒绝这种免费午餐。是那次打印机事件，让斯托曼建立起了道德防线。它不仅给了斯托曼足够的怒火去对以后的各种礼品心存戒备，更让斯托曼开始思考一个让他自己也坐立不安的问题：要是以后哪个黑客同行进到自己的办公室，向他索要代码，他究竟会不会拒绝复制代码呢？

“这是我第一次碰上这种保密协议，它很快让我明白，保密协议面前，总会有无辜的受害者”，斯托曼坚定地说，“在打印机事件中，我和整个人工智能实验室扮演了受害者的角色。”

斯托曼带着这种态度，经历了动荡的 20世纪 80年代。在这期间，麻省理工学院的同事们纷纷离开实验室，走进公司，签署了保密协议。大多数保密协议都有解密时间，而这则成了很多黑客们的借口。他们会辩解说：软件迟早会成为公共资源。而保证软件在早期的开发阶段不被泄露，则可以保证让各位黑客朋友们可以进入顶尖项目中工作。这些借口，在斯托曼看来，则是迈向深渊的第一步。

*