cat /dev/random meh

第6章 成功者和失败者

1966年,当大卫·塞维亚第一次乘电梯来到科技广场大楼的9层时,AI实验室正在神圣的“黑客道德”的统领下运转着,它简直就是一扇黑客社区的橱窗。通常,黑客们在享受了一顿中国菜大餐之后就会来到这里,在PDP-6计算机上做着对他们来说是世界上最重要的工作,一直到东方发白。他们拿着打印出来的材料和自己的笔记一会儿溜到这边看看,一会儿又踱到那边瞅瞅。看见有人正在用着终端,就过去指手画脚一番,或者对其他程序员的编程技巧称赞几句。显然,这个实验室中最重要的就是合作精神以及对钻研技术共同拥有的一种使命感。黑客们对技术问题总有一股打破沙锅问到底的劲头,因此大卫·塞维亚一见到这些人,就非常渴望和他们共事。

大卫·塞维亚那时还只有14岁,是一名六年级的学生(留过两次级)。因为几乎无法读完一整句话,他经常受到同学们的嘲笑。后来,大家估计他有“诵读困难”,而塞维亚只是简单地说他对老师、学生和学校里的任何东西“都不感兴趣”。他感兴趣的是制作各种各样的系统。

大概从6岁起,他就定期到剑桥市埃里哈弗伦的旧货市场(TMRC的黑客也常常到那里去淘点旧货)去淘换各式各样有意思的东西。在他10岁那一年,有一次,他从那里找到了一个雷达天线反射罩,拿回来后拆开,将它改装成可以接收声音的设备——一个抛物面反射器,再接上个扩音器,就可以用它监听到几千英尺以外的谈话声。不过他自己主要还是用这个东西收听远方的汽车声、鸟或昆虫的鸣叫声。塞维亚还做了很多其他与声音有关的设备,对定时照相技术也有所涉猎。然后他开始对计算机感兴趣了。

大卫·塞维亚的父亲是一名科学家,在MIT任教,与明斯基是老朋友。他的办公室里有一台可以登录到IBM 7094主机兼容分时系统(Compatible Time-sharing System, CTSS)的终端,于是塞维亚便开始用这台终端编程——他的第一个程序是用LISP语言写的,可将英语短语翻译成Pig LatinPig
Latin是按照如下简单规则转换每个英文单词的一种自发明语言。1)如果单词以辅音开头,那么把起始辅音字符串(即第一个元音字母前的所有字母)从单词开始移到尾部,并加上后缀ay,如“string”变换后为“ingstray”。2)如果单词以元音开头,则加后缀way,如“apple”变换后为“appleway”。。接着他又开始着手编写可以控制一个微型机器人的程序。他将这个微型机器人称为“bug”(臭虫),那是他在家里用从埃里的旧货摊淘来在家里的旧电话中继器制作的。他将这只“臭虫”连到终端机器上,然后用汇编语言编写控制程序,让这只装有两个轮子的“臭虫”爬来爬去。戴维认定机器人技术是他所有理想中最吸引他的,还有什么比让机器想去哪就去哪、想看什么就看什么……以及按照它自己的思维模式独立思考更有趣的事呢?

因此,这次在明斯基的安排下,对AI实验室的参观大大拓宽了塞维亚的眼界。这里的人不仅像塞维亚一样热爱计算机,而且在实验室他们还有一项重要的工作,那就是机器人技术。明斯基本人对这一领域也极为重视。机器人技术对人工智能的发展起着举足轻重的作用,它可以衡量人类在让智能机器工作这条路上到底能走多远。明斯基的很多研究生都在进行机器人技术方面的理论研究,并在让机器人做这做那的较为艰难的实践中努力完善这些理论。实验室的黑客同样在这一领域投入了很大一部分精力,不过他们的重点并不是将成果提高到理论层面,而是花大力气进行实验。黑客们对机器人课题的喜爱和塞维亚基本一致。相对于在通过编写计算机程序控制现实世界,控制机器人则又向前迈进了一步。就像高斯珀经常说的,“为什么要将计算机局限在别人通过键盘灌输给我们的谎言之中呢?”(通过研究)机器人,(我们)可以挣脱这个枷锁,用自己的双眼去探究世界的本来面目。假如你编了一段程序,指挥机器人来做一件事,高斯珀后来解释说:“你就能得到一种满足感,那是一种情感冲击,无法用语言表达。你平时编出一段程序后得到的满足感和这种满足感根本无法相提并论,因为发明创造的正确性得到了实实在在的认可,估计跟刚生了一个孩子的那种感觉差不多。”

黑客们曾经完成过一个大项目,制造出一个可以接住球的机器人。用PDP-6计算机控制一只机械臂,外加一部电视照相机,尼尔森、格林布莱特和高斯珀几个人用了好几个月才让机械臂能够抓住一只向它弹跳过去且速度不是很快的乒乓球。机械臂可以随时确定球的位置,并及时移动到适当的位置接住球。能办到这一点,黑客们自豪极了。高斯珀特别希望能再上一层楼,于是他开始着手制作动作更为灵活的机器人,想真正实现让机器人打乒乓球这一梦想。

“到圣诞节时能让它打乒乓球吗?”当明斯基和高斯珀一起看机器人接球时他这样问道。

乒乓球和中餐馆一样都是高斯珀非常关心的系统。当高斯珀还是个孩子的时候,他就在自己家的地下室打过乒乓球。他打球的技术风格和他的工作风格完全一样:越是物理上不可能发生的事情,他越是喜欢研究。当高斯珀击打一只乒乓球时,他发的球就像PDP-6显示高深的程序那样让人抓狂——旋转的力道非常强,常常会产生复杂的、违反直觉的力道,没有人知道球到底会飞向何方。高斯珀喜欢旋转球,因为这种球不会按照重力原理飞行。如果你用力打出一记旋转球,那么它不会径直飞向球桌另一侧的边缘,而是突然以曲线的轨迹下落。当对手想要接球的时候,由于球的转速很高,它会转而朝着天花板飞去。另外,高斯珀有时还会用削球的方法增加转速,让球沿着接近水平的方向飞行,速度快得几乎会因巨大的离心力的撕扯而在空中爆炸。“在比赛时有时会出现这种情况,”高斯珀后来说,“乒乓球会在空中出人意料地改变方向,完全违反物理原理,观众的心都提到嗓子眼儿了。我曾亲眼见过在空中发生的这一幕,不过那种情况很难说清楚,实在是太有趣了。”

高斯珀曾经一度沉浸在让机器人打乒乓球这个想法中。黑客们也确实成功地让他们的机器人握住球拍,对朝着它弹跳而来的乒乓球大力扣杀。据比尔·本内特后来的回忆,有一次明斯基走进了机器人机械臂的击打范围内,由于摄像机的需要,这片区域通常都被灯光照得雪亮,这时,机器人错把明斯基光光的头顶当做一只巨大的乒乓球,因此差一点用球拍将这位教授“斩首”。

高斯珀打算沿着这条路继续走下去。他想把机器人改进一下,让它可以来回移动,打出更加刁钻的球,也许还能进行凌空扣杀呢。不过当时明斯基已经为这台能够接住乒乓球的机器人做完了部分硬件设计,他并不认为高斯珀的设想很有意思。他认为这与用一枚导弹击落空中的另一枚导弹没什么区别。明斯基说服高斯珀不再继续做乒乓球的项目。后来高斯珀坚定地认为假如当初他继续做下去,那台机器人很可能会改变历史。

当然,塞维亚也和高斯珀一样,对这样的项目情有独钟。明斯基同意塞维亚在9层随便转悠,不久以后塞维亚彻底退学,他因此得以将时间更加有效地花在科技广场大楼里。黑客们更加注重某个人对他们科研项目潜在的贡献,而不在意他们的年龄,因此14岁的塞维亚被大家(开始时可能把他当做一个吉祥物)接受了。

很快,塞维亚主动承担起部分乏味的撬锁工作,并通过这一工作证明了自己的价值。当时,实验室的行政部门已经引入了一套安全级别很高且更加坚固的门禁系统。有好几次,这个弱不禁风的少年会花整晚的时间,爬过人工吊顶,再拆开整条楼道的每一个门锁,研究主门锁系统的工作原理,然后再不辞辛劳地赶在管理员早晨上班前一个个地安装回去。塞维亚使用机械师的那套工具非常熟练,并且还曾用机器加工出某种钥匙坯子,用这种坯子制作的钥匙能够打开一种特别复杂的门锁。那把锁其实是一间屋子的门锁,那间屋子里有一个高安全级别的保险箱,里面装着各种钥匙。一旦打开了这个保险箱,用塞维亚的话说,整个门禁系统便“迎刃而解”了。

塞维亚将实验室的黑客们当做自己的老师,他可以问他们任何与计算机或机器设备有关的问题,而那些黑客则会倾囊以授。在这一过程中,黑客们会使用千奇百怪、有如泰迪熊那样变化多端的英语,其中还夹杂着丰富多彩的黑客行话。像“winnitude”、“Greenblatt ful”、“gronk”和“foo”等都是黑客的日常用语,是口才不佳的人相互交流时使用的缩略语。黑客用这样的词汇可以准确地表达出自己的意思。

塞维亚的问题五花八门。有些问题非常简单:计算机的每个部分是用什么制造的?控制系统是怎么来的?不过当他对机器人技术的了解逐渐加深,他发现那些自己必须要问的问题往往具有双重含义。在为机器人建立一个它自己的世界之前,必须从几乎整个宇宙的角度考虑问题。什么是点?什么是速度?什么是加速度?关于物理的问题,数的问题,信息的问题,各种事物的表示法的问题等……后来塞维亚终于明白了,当他“问一些基本的哲学问题时,如我是谁,宇宙是什么,计算机是什么,用计算机可以做些什么以及计算机和外界是怎样联系的,所有这些问题都会最终归结为上述那些最最基本的问题。在当时,所有这些问题都是十分有趣的,因为那是我第一次开始思考,开始对计算机有了足够的了解,开始将生物、人类和动物的功能联系起来,开始将他们与科技以及计算机联系起来。我开始领会到这样一种思想,即你可以让计算机像智能生物那样做事。”

塞维亚的导师是高斯珀。两人常常结伴到学生宿舍打乒乓球,或者一起出去吃中餐,要么就一起讨论有关计算机和数学的问题。在剑桥的世外桃源里,塞维亚自始至终都徜徉在知识的海洋之中。没有人知道这所“学校”的存在,他有生以来第一次感觉到快乐无比。

借助PDP-6计算机和这里的黑客们的指导,塞维亚在计算机的世界里任意遨游。很快,他就觉得自己已经可以用PDP-6计算机做些实际工作了。他打算写一个复杂的大型程序:他想要改进一下那只小机器人“臭虫”,使它可以使用电视照相机真正地“捡回”人们扔到地上的东西。此前,即使经验丰富,又有尖端设备的人也从来没有真正做过类似的工作,黑客们对这一事实竟然熟视无睹。于是,塞维亚像往常一样,在项目开始前问这问那。他先后咨询了十几名黑客,分别询问这个有关视觉的项目每个具体部分的知识。他就像是高科技时代的汤姆·索亚Tom
Sawyer(汤姆·索亚),出自马克·吐温1876年的小说《汤姆·索亚历险记》。小说主人公汤姆·索亚天真活泼,富于幻想和冒险,不堪忍受束缚个性,枯燥乏味的生活,幻想干一番英雄事业。其中有一段汤姆·索亚和小伙伴们一起粉刷墙壁的情节。,用汇编代码粉刷着房屋的墙壁。硬件方面的问题,他会去找尼尔森;系统方面的问题,他找格林布莱特帮忙;至于数学方程式,当然由高斯珀负责教他。然后,他还会请别人帮忙写一段解决那个方面问题的子例程。收集齐所有子例程后,他就会将这些程序集成起来,组成自己想要的具有视觉功能的程序。

那只机器“臭虫”本身有1英尺长,7英寸宽,主要由用塑料绳捆在一起的两个小马达构成。它两侧各有一对可升降的轮子,顶部是升降杆,前面伸出两只焊上去的铜杆,好像一对鹿角。说实话,这个东西看起来和垃圾毫无二致。塞维亚利用了一种称为“图像差”的技术来让计算机随时知道“臭虫”的位置——照相机一直不停地对场景进行扫描,看看什么东西移动了,然后找出位置有变化的物体。扫描的同时,“臭虫”会在场地内随机移动,直到相机找到了那个新出现的物体并由计算机引导到该物体(如扔到它附近的一个钱包)附近停下。

就在塞维亚全神贯注地投入工作的同时,发生了一件事,但这只不过表明即便在这个黑客避难所中矛盾也从未终止过。有人对塞维亚非常不满。这些批评和不满来自黑客道德的天敌:那些整天宣扬人工智能理论的人以及8楼的那些研究生。这些人大可不必将计算本身视为一件快乐的工作,因为他们更关心自己能否得到学位,是否可以获得专业的认可,以及,哦……促进计算机科学的进步。这些人认为黑客思想是完全违背科学的理论。他们一直要求黑客们不要占用那台PDP-6计算机,让他们可以做些“官方授权的程序”。此外,他们对黑客们看上去漫不经心地肆意改装计算机的行为也感到震惊。那些研究生通常都在以严谨的学术精神和科学的态度做他们的毕业论文或专题演讲,他们认定要做出塞维亚正在努力制作的那种玩意儿无异于天方夜谭。如果没有一个全面的方案,没有对此前各次实验的完整总结、没有精心设计的架构以及缺少必要的实验器材(在洁净无尘的房间中放一块黑色的天鹅绒布,上面要有若干纯白立方体块),他们绝不会考虑任何与计算机视觉有关的实验。宝贵的PDP-6计算机上机时间竟然被用来制作这种……玩具,他们为此怒不可遏。一个十几岁的菜鸟终日霸占着那台PDP-6,难道那是他个人的学步车不成?

尽管那些研究生们嘲笑塞维亚注定一事无成,说他的工作根本和人工智能沾不上边,他甚至不会理解像递归函数这样的理论知识,但是塞维亚却自始至终埋头于他的“臭虫”,继续用PDP-6做着他的开发工作。假如有个人把钱包扔到肮脏凌乱的地板上,这只“臭虫”会迅速地以每秒6英寸的速度向前爬过去,右转,停下,再向前爬。这只“愚蠢的小臭虫”就这么一直向前冲、右转或左转,直到来到钱包跟前停下,接着便向前拱,将钱包稳稳地夹在两只“角”中间(那两只角任谁看了都会以为那是弯曲的衣架)。接着,机器“臭虫”会将钱包推送到预先指定的“储物所”。任务完成。

那些研究生简直气疯了,他们想把塞维亚赶走。他们声称,一个14岁的孩子三更半夜待在实验室需要有保护措施。这样一来,明斯基只有站出来为塞维亚辩护。“连明斯基都站在我这边,这让他们非常气愤”塞维亚后来回忆道,“这个毛孩子几周来干了一堆蠢事,可他竟然能用PDP-6计算机开始做事了。而那些研究生也想让计算机来做这些事,但又觉得困难重重,对自己能否彻底解决这个问题并在现实世界中实现自己的设想心里没底。因此,突然之间,他们对我怎么看怎么别扭。他们整天都在对一切事物做理论上的分析研究,而我则挽起袖子埋头苦干……工作中这两种人都很常见。我既没有从理论的角度入手,也没有从工程的角度入手,我觉得那是一件十分有趣的事才去做的。出于有趣的原因,我们也许还会让这只‘臭虫’摇晃两下身子。因此我装上去的零件和我编写的程序都能完成某种任务。很多时候,我的机器人能做的事情正是那些研究生们绞尽脑汁想要实现的功能。”

最后,那些研究生终于安静下来,不再对塞维亚说三道四了。但他们和黑客之间的不和却始终没有改变。那些研究生虽然觉得黑客有其存在的理由,但从心底里认为这些人太幼稚。而黑客们则认为那些研究生没有真本事,眼高手低,他们只能坐在8楼的椅子上想象机器人的样子。即使“正确答案”出现了,他们也浑然不知。这种看法是对研究生的极度蔑视,因为那些人编写的、作为自己论文课题的“官方授权程序”全都一文不值,论文评审之后就被扔到一旁没人管了;而与此相对的是黑客的程序,总会为人所用并得到修改和提高。黑客要看到这些人在PDP-6上抓狂,看他们后悔当初浪费了那么宝贵的PDP-6上机时间。

这里要特别提一下,研究生当中有一个家伙就连黑客们也拿他没办法。他在自己的程序中一再地犯同样的错误,每次都让PDP-6尝试着执行一段有漏洞的指令,人们将这段指令称为“没用的操作码”。他有时候会连续几个小时甚至几天都卡在这里进行不下去。计算机本身对这种“没用的操作码”自有一套处理方法,那就是先把它保存在某个地方,假如你打算定义新的操作,那么你可以在以后任何时候找到保存起来的那段代码。假如你根本没打算重新定义这段非法指令,而是毫无察觉地继续运行以前的代码,那么程序便会陷入循环,此时你会终止程序的运行,检查代码,就能发现自己做错了什么。但这位老兄(早就没人想起他叫什么了,我们姑且称呼他为“FubarFubar,是“Fucked
up beyond all recognition/any
repair”的首字母缩写,这句短语的意思是:被搞得面目全非。”)却没能弄明白这一点,还是继续输入那些非法的指令。于是计算机也总是执行那些根本不存在的指令,进而不停地陷入死循环,只有等Fubar同学过来终止才算告一段落。Fubar坐在那里,盯着屏幕一动不动。如果他把程序打印了出来,他便会盯着打印纸一动不动。稍后,或许就在他将打印出来的程序带回家研究后认识到了他的错误,然后回到机房再次运行他的程序。可接着他又犯了同样的错误。黑客们实在受不了了,因为他把程序打印出来带回家修改,这么做本身就是把PDP-6计算机的时间浪费在最初级的事情上——这种方式是典型的IBM批处理风格,不是交互式编程风格。这几乎可以称为“滔天大罪”。

于是,有一天尼尔森登录到这台计算机上,用另外一种方式针对那个错误编了一小段程序。然后大家出去转了一圈直到Fubar过来登录并开始工作。他坐在终端前,像往常一样花费大量时间做各种设置工作,不出所料,半个小时以后他真的又犯了同样的错误。但只有这一次,他通过屏幕看到,自己的程序没有进入死循环,而是把他出错的那段代码显示了出来。就在这段程序的中间,有一个巨大的、发出荧光的箭头若隐若现地指向他的那条非法指令。此外屏幕上还有一条闪烁着的说明文字:“Fubar,你又出错了!”

Fubar却连一点感谢的意思也没有。他高声地痛斥说自己的程序被人搞坏了,甚至完全没有意识到尼尔森的程序所给予他的提示,指出了他哪里做得不对以及应该怎样修改。虽然他的程序中嵌入了这一完美的功能,并帮助他找到了自己编程过程中的错误所在,但Fubar却并不领情(黑客们其实倒也没期望能得到他的感谢)。就这样,黑客将聪明才智浪费在了Fubar身上。

……

黑客有个专门的词来指称那些研究生。他们也用这个词指称任何对计算机不懂装懂,又不能通过黑客级的专业技术来证明自己的人。这个词就是“失败者”。而黑客自然就是“成功者”了。选项只有两个,来AI实验室工作的人不是“成功者”就是“失败者”。唯一的评判标准就是他的工作能力。黑客通过了解和建立各种被几乎所有其他人漠视的系统来改善整个世界的愿望非常强烈。即使你只有14岁,即使你患有诵读困难症,你也是一个“成功者”。相反,就算你很聪明、感觉敏锐并且虚心求教,你还是会被人认为是一个“失败者”。

对于一名新人,9楼让人感到不安,它似乎是一座让人琢磨不透的科学的激情殿堂。只要站在格林布莱特或高斯珀或尼尔森这样的人旁边,你就能感到一种震颤。他们似乎就是世界上最聪明的人。由于任何时候都只能有一个人使用PDP-6计算机,因此要坐在终端前用交互方式学点什么需要具备极大的勇气。但是,任何拥有黑客精神的人都会竭尽全力地投入工作,甚至可以将不自信的心理放到一旁,大胆地开始编写自己的程序。

1965年,17岁的汤姆·奈特曾随意地登上9楼转转,这名又高又瘦的大一新生也经历了这一过程并最终赢得了“成功者”的地位。要做到这一点,他后来回忆道:“你一定要尽可能地融入到那种文化氛围之中。那些人彻夜不眠,总是在忙他们那些有趣但你又根本弄不明白的东西。”让他加入到黑客这一行列中来的是他对PDP-6计算机的狂热,这台计算机是如何能让人制造出各种完全听命于你的复杂系统的?从这个意义上说(照奈特后来的回忆),你对整个系统的控制与一个独裁者对一个政治制度的统治一模一样。不过奈特还觉得计算机是一个拥有无限适应能力的艺术媒体,在这个媒体上,你可以通过创造自己的微观世界来表达内心的想法。奈特后来进一步解释说:“你看,你可以指挥这个系统让它做事,没有人会问为什么,它完全遵照你的命令行事。这就是目标。几乎没有哪一家机构会让一名18岁的少年完全按照自己的意志行事。”

像奈特和塞维亚一样的人全身心地投入工作并取得了辉煌的业绩,他们最终都成为了“成功者”。而其他人的面前则是崇山峻岭和漫漫征程,因为一旦黑客们认为你是推进整个系统的绊脚石,你就是不可救药的“失败者”,大家要么疏远你,要么就直接让你离开。

对某些人来说,这么做似乎太不近人情。有个叫布莱恩·哈维的黑客非常机灵,他就对这种极端的强制标准感到特别不适应。哈维成功地通过了让自己增强自信这一关。他在上机时在TECO编辑器中发现了几个错误,当他指出这些错误的时候,别人对他说,很好,现在你把它们改了吧。于是他把这几个错误都改了过来,接着他就发现调试程序的过程比真正使用你调试过的程序要有趣得多,于是他开始到处寻找更多的程序错误来修改。一天,当他正用TECO修改程序的时候,格林布莱特站在他身后。他一边看着哈维敲入一行行代码,一边摸着自己的下巴说:“我想我们应该付你报酬了。”被AI实验室聘用通常都是通过这种方式实现的。只有“成功者”才会被聘用。

不过哈维并不喜欢仅仅因为不够聪明就把别人说成是“失败者”并歧视他们的做法。哈维认为明斯基需要对这种态度做出某些规定。(明斯基后来坚称他所做的一切便是让黑客自己管理一切——“我们的计算机系统是开放的,我们百分之百鼓励人们尝试任何东西,假如他们阻碍了工作的进展或达不到要求,那么也只能劝他们离开。”)哈维认识到,一方面,虽然AI实验室得益于黑客道德的灌溉,成为一个“伟大的智力花园”,可另一方面,它的缺点也是显而易见的,那就是你是谁并不重要,重要的是你是哪一种黑客。

还有些人陷入了一个误区,他们努力想成为计算机方面的“成功者”,但却立刻被归入“失败者”那一类中,例如格里·苏斯曼便是个典型。他刚进入MIT就读时也是17岁,但却目空一切。他在少年时期便迷上了电子器件,上了高中后又成了一名计算机爱好者。他进入MIT后的第一件事便是到处打听哪里有计算机。有人告诉他科技广场大楼中有。于是苏斯曼便问一名看上去好像是那里的人他是否可以用一用那台计算机。格林布莱特说,没问题,用吧。

于是,苏斯曼开始编写他的程序。不久,有个看上去怪怪的、秃顶的人走了过来。苏斯曼猜他是来把自己赶出去的,不料这个人非但没有这样做,反而坐了下来,问他:“嗨,你在做什么呢?”苏斯曼把自己的程序向这个人(马文·明斯基)介绍了一番。在介绍的过程中,苏斯曼告诉明斯基他在自己的程序里使用某种产生随机数的技巧,因为他不希望这台计算机内有任何预设的概念。明斯基说:“嗯,这台机器确实有不少预设的概念。不过你并不清楚那些预设的概念是什么。”这是格里·苏斯曼从未听到过的最为高深的知识。接着明斯基继续对他说,整个世界就是按照一定的方式建立起来的,我们改造世界最重要的就是避免出现随机事件,并指出了几种管理事物的方式。这样的渊博学识给这名17岁大一新生留下了极深的印象,从那时起,苏斯曼便彻底迷上了这里。

可是他一开始就没给黑客留下什么好印象。为了打消自己的不安全感,他装出一副什么都懂的架势,可每个黑客都能一眼看穿他的把戏。有很多人反映,他还笨得要命,刚一上场就差点被机器人的机械臂打倒(他好像无论怎样都没法让机械臂听他指挥)。有一次,他无意之间压瘪了高斯珀带到实验室的一个不常见牌子的乒乓球。还有一次,他在参与一次“午夜计算机改装组织”的冒险时,竟然让一滴焊锡迸进自己的眼睛。看来他什么也做不好。

也许是为了要给大家留下文绉绉的印象,苏斯曼抽起了烟斗。殊不知,这种行为正犯了9楼众黑客的大忌。于是有一天,黑客们想方设法在他的烟丝中混入了部分切碎了的橡皮末,选用的橡皮颜色和烟丝的几乎完全一样。

苏斯曼总喜欢跟在所有黑客中口才最好的高斯珀后面。高斯珀内心深处可能未必会将他视为“成功者”,但是他喜欢有人听他讲话,并能够容忍苏斯曼的信口开河。有时,高斯珀带有嘲弄口气的言谈会让苏斯曼的脑子乱成一锅粥,比如有时高斯珀会信口说道:“数据就是一种愚蠢的编程。”对苏斯曼来说,这种情况回答了那个永恒的、关于存在的问题——“你是干什么的?”我们是数据,是组成整个宇宙的无数计算机程序中的各个片段。看着高斯珀写的程序,苏斯曼的直觉告诉他,这一价值观便蕴含在这些代码之中。他后来解释说:“高斯珀大概认为,整个世界是由这些微小的片段组成的,每个片段就是一台台的计算机,而每台计算机则代表了每一个独立的国家。每个国家都和自己的邻国进行交流。”

在研究了高斯珀的程序以后,苏斯曼认识到了黑客思想中的一项重要假设:所有以严肃的态度编写的程序都是某一个人的自我表现形式。“至于让计算机执行这些程序根本不是编写程序的主要目的,”苏斯曼后来如是说,“程序的重要意义是可以将它拿给别人看,那些人可以看懂并能从中领会到某些东西。程序里面包含着信息。程序就是你思想的一部分,你可以写下来,把它像书一样送给其他人。”苏斯曼学会了用和编写者同样敏锐的思维去阅读程序,就像文学爱好者品味诗歌一样。有趣的程序会包含不少幽默之处,令人拍案叫绝的程序能解决问题,而那些令人悲哀的程序尽管一次次地尝试,但却总也无法奏效。

这些都是需要了解的重要事情,但知道了这些,你也未必能成为一名“成功者”。让苏斯曼成为“成功者”的是他的工作成绩。他坚持不懈地工作,花大量的时间和高斯珀泡在一起,将他原来那种“舍我其谁”的态度收敛起来,并且最重要的是,他渐渐成长为一名出色的程序员。苏斯曼是极少数从“失败者”中最终复活成为“成功者”的示例。后来,他编写了一个非常复杂且具有启示性的程序,这段程序可以通过计算机控制机械臂来移动积木。该程序要运行一个和调试过程极为相似的过程,它能够自己确定哪些积木必须首先移开,然后才能接近目标积木。这是人工智能领域的一次重大飞跃,从此以后,作为科学家和计划者,苏斯曼的名声渐响,他将自己这段著名的程序命名为“HACKER”(黑客)。

帮助苏斯曼的命运峰回路转、从“失败者”变为“成功者”的因素之一便是对“正确答案”的敏感程序。在黑客眼中,最不可救药的失败者便是那些根本认不清哪种计算机才是真正最好的计算机,或是没法辨别哪种计算机语言才是真正最好的计算机语言,或者没法找到使用计算机真正最佳方法的人。由于IBM的分时计算机系统是Project MAC的一个重要组成部分,因此它们也安放在了科技广场大楼的9层。但是还没有哪一种计算机系统会像这个系统那样被黑客贬得一文不值。第一台是一个“兼容分时系统”(Compatible Time-sharing System, CTSS),自从20世纪60年代中期就开始运行。另一台被大家称为“Multics”,不仅价格昂贵,而且运行起来等待时间特别长。大家非常讨厌它,只要看见它便愤愤不平。

与总是不断对PDP-6系统程序进行修修补补的工作不同,CTSS是由一个人独立完成的,他就是MIT的费尔南多·考巴托教授。在很多方面,这个系统极为精致和专业,每一行代码都经过深思熟虑,并且可以随时拿到IBM 7094计算机上使用(IBM 7094计算机是可支持同时使用多台终端的系统)。但是对黑客们来说,CTSS代表了IBM的一种思想。“有一件关于计算机特别好笑的事就是你本来可以完全控制计算机的,”CTSS的反对者汤姆·奈特后来解释说,“但假如在某台计算机周围出现了官僚制度,那么你就再也没法指挥得动那台计算机了。CTSS本身是一个‘一本正经’的系统。想用的话要注册账户,并且要格外注意安全性。这种官僚制度此处指计算机本身的安全审核机制。虽然还算是个善意的制度,但无论如何,官僚制度就是官僚制度,里面全都是按朝九晚五作息制度工作的职员。假如出于某种原因想要改变这个系统的行为,或其工作方式,或编一个只在某些时间运行的程序,或者做些可能让整个系统崩溃的事情,那么CTSS绝对不会鼓励这么做。黑客们想找到这样一个地方,如果犯了上述那些错误的话,你不至于受到过于严厉的惩罚,人们只不过会说:‘哦,你犯了个错误。’”

换句话说,CTSS并不鼓励黑客的探索行为。还有一个事实也很能说明这一点,那就是CTSS运行在一台价值200万美元的IBM计算机上,黑客认为这种计算机根本比不上PDP-6计算机,何况还装了一套“失败者”才会使用的系统。没有谁会邀请黑客去用CTSS,但它就摆在那儿。有时候你也必须因地制宜,有什么就用什么,对吗?当黑客打算使用这台计算机的时候,屏幕上就会跳出一条提示,告诉你由于口令错误,你不能使用这台计算机。因此黑客被迫采取报复措施。对黑客来说,口令比上了锁的门还要可恶。还有什么比别人告诉你无权使用他的计算机更难以容忍的呢?

最后,黑客们学会并掌握了CTSS系统,知道如何绕过口令验证。每次他们成功登录进系统后,都会给管理员留一条短信“本人到此一游”,以炫耀他们的高超技术。有时,他们还会让计算机将所有口令列表显示出来,并让管理员登录后就可以看到这张口令列表。据格林布莱特回忆,那些在Project MAC里负责CTSS系统的人理解力实在太差,他们在用户登录界面插入了一条Project MAC官方提示,基本意思是说口令乃神圣之物,只有人类的最低等形式才会去破解口令。汤姆·奈特在登入系统后将这条提示标题中的“MAC”改成了“HAC”。

虽然CTSS系统有很多缺陷,但黑客们认为“Multics”更糟糕。Multics便是9楼那台价格极其昂贵的分时系统的名字,供9楼的黑客们构建和调试系统。虽然这台机器的设计初衷是为一般用户服务的,但黑客们对任何系统的结构都会从非常个人的角度进行评价,尤其不会放过和他们处于同一座大楼又是同一楼层的系统。因此,黑客们交谈的话题中有很大一部分涉及了MULTICS。

起初,Multics系统是MIT与通用电气公司合作的产物,接着Honeywell公司Honeywell,著名电子安防产品制造商和服务商。也参与进来了。这个系统到处都是毛病。当黑客们听说要让它运行在带电传打字机的Model 33型终端上,而没有使用更快的交互式CRT显示器时,他们便断定这个系统简直没救了。Multics没有用效率更高的机器语言,而是用IBM自己的名为PL/I的计算机语言编写的,这对黑客们来说简直骇人听闻。当这个系统首次运行的时候,它的速度慢得像乌龟一样。由于速度太慢,黑客们得出结论,认为该系统的大脑一定受到了损伤——脑残。这一经常被用来形容Multics的词现在已经变成黑客们标准的轻蔑语。

不过Multics最让人不可接受的是其无处不在的安全特性以及根据用户上机时间收取费用。Multics的设计理念便是要掏走用户口袋里的最后一枚硬币:你要为自己占用的内存付费,为占用的磁盘空间付更多费用,为使用时间付的还要多。与此同时,Multics的那些管理者还公然宣称只有这种方法才能维持公共设备的运转。这一系统完全颠覆了在其周围传播着的黑客道德——它非但没有鼓励大家把更多的时间用于上机(按照黑客的观念,分时计算机唯一的好处就是增大了大家的上机机会),反而在你登录系统后还要求你尽可能减少上机时间,尽量少地使用计算机的各种设施!Multics的设计理念简直太糟糕了。

黑客们用尽各种技巧和手段在Multics系统上“大闹天宫”。这么做似乎成了他们每天的工作。正如明斯基后来说的那样:“有些人做的项目其他人并不喜欢,因此这些人就会对做项目的人开各种各样五花八门的玩笑,为的就是不与他们共事……这些黑客总是用一些荒唐的行动来打乱教授们的工作。”

鉴于黑客的袭扰活动有日益游击化的趋势,AI实验室的管理方不得不小心谨慎地处理可能对黑客的工作环境造成影响的意见。1967年前后,那些管理者打算进行一次大改革,他们要将黑客钟爱的PDP-6计算机上的操作系统更换为一套分时操作系统。那时候,明斯基已经不再做多少AI实验室的管理工作,交由他的朋友,也是尼尔森在Information International公司的老板爱德·弗雷德金来负责。当时爱德·弗雷德金也在进行角色转换,逐渐从业务工作中脱身,开始担任MIT的教授。(弗雷德金后来成为系里最年轻的正教授,也是唯一一位没有学位的正教授。)由于弗雷德金自己就是一个顶尖的程序员,因此他已经和黑客相差不远了。他十分欣赏通过“无为而治”的方式让黑客随意发挥自己的聪明才智,他认为只有这样,实验室才能多出成果。但有时他觉得黑客也能够从严密的分工协作中受益。在他刚刚接掌实验室管理大权的时候曾经组织过一次“人浪”式的攻关,打算用这种方式解决一个机器人技术方面的问题。他亲自为每一名黑客布置任务,要求他们各自解决该问题的某一具体部分。但最后他的努力还是草草收场了事。“所有人都认为我疯了。”弗雷德金后来回忆道。他最后还是接受了这样一个事实,即让黑客做事的最佳方式就是向他们提出建议,接着期待他们能对这个建议产生足够的兴趣,然后你就能获得无论业界还是学术界都闻所未闻的成果。

明斯基和弗雷德金一致认为分时系统是非常重要的。黑客和“官方授权的用户”都对PDP-6计算机有着持续不断的需求,但不管是哪一方都饱受长时间苦等上机机会的折磨。尽管如此,黑客们还是认为分时系统难以接受。他们拿CTSS、Multics甚至还有PDP-1上杰克·丹尼斯的更为友善的系统为例,抱怨说假如一个人同时和很多人共享同一台计算机,那么他就必须忍受运行速度变慢、计算能力下降的后果。

黑客们指出,在分时系统下有几个大型程序根本无法运行,其中之一便是彼得·萨姆森一直以来都在编写和完善的怪兽程序。那是他刚刚开始使用TX-0计算机编程时顺带编写的。如果你输入MTA马萨诸塞州运输管理局。下属两个地铁站的站名,这个程序就会告诉你应该乘坐哪条线路以及在哪里换乘等才能从一个车站到达另一个车站。现在,萨姆森正在处理整个纽约的地铁系统……他想将整个系统都装入计算机的内存,并将全部列车时刻表保存在一个计算机可以访问得到的数据磁盘中。有一天,他启动了这个程序,希望找出一条没有重复路线又能走遍整个纽约地铁系统的线路。这一课题吸引了部分媒体的关注,接着就有人建议看一看是否可以用PDP-6计算机来完成这项任务,并打破此前由一名哈佛大学的学生创造的游遍纽约市所有地铁站的记录。

经过几个月的努力,萨姆森终于拿出了自己的方案并且于某一天由两名黑客去亲自实践。位于曼哈顿的MIT校友俱乐部有一台电传打字机,它可以连接到这台PDP-6计算机上。总共有20多名黑客担任通信员在这条线路的沿途守候着,他们按时通过公共电话亭汇报最新的进度信息,报告最近的火车运行情况、晚点情况并记录未经过的线路。另一些黑客则将这些信息通过电传打字机输入,返回给剑桥的PDP-6去计算整个线路的变动情况。那两名充当乘客的黑客每经过一站,萨姆森便在一张地图上将该站划去。这些留着军人般小平头的疯狂家伙(他们和那些留着长发、采用其他举动制造新闻效应的抗议者们形成了鲜明的对比),他们的这一设想给了媒体极大的想象空间并得到一整天的关注。“The Great Subway Hack”(精彩的地铁程序)这篇报道便记录下了这次值得永远铭记的PDP-6应用实例。

这件事也强调了格林布莱特、高斯珀和其他黑客坚持的那个最基本的观点,即这一奇迹只有在程序使用全部计算机资源的情况下才能实现。黑客们轮流上机使用那台PDP-6计算机,就好像它是他们自己的个人计算机一样。他们常常运行一些显示程序,这些程序采用实时工作模式,要求计算机不断地刷新显示器屏幕;分时计算机系统则会大大降低显示程序的运行速度。黑客们已经习惯了因独占PDP-6的控制权而不时出现的小小“装饰”,例如他们可以通过闪烁的指示灯灯光跟踪程序的进度(灯光的闪烁可以指示哪些计算机寄存器正在进行读写操作)。这些额外的“装饰”会随着分时系统的引入而不复存在。

不过说到底,分时问题是一个美学问题,只不过“无法完全控制整个计算机”的理念让人觉得心里不舒服而已。即使计算机在分时系统下能够以和单用户模式几乎完全一样的方式对用户做出反应,你心里还是很清楚:它已经并不完全属于你一个人了。

黑客们在这个问题上的固执态度折射出他们对计算工作的质量非常注重,他们不打算为了使用一个低级的系统而让步,哪怕这个系统会让更多的人有机会使用计算机并且也许还会将探索计算机世界的福音广泛地传播开来。他们认为,只有尽可能地使用最好的系统才会有助于探索计算机的奥秘。分时系统根本算不上好系统。

弗雷德金面对的是一场艰难的政治斗争。他的策略是扭转以格林布莱特为代表的、对分时系统的极端抵触情绪。弗雷德金和格林布莱特俩人的关系还是比较密切的。弗雷德金是9楼所有人中唯一称呼格林布莱特为“里基”(里基,是正式名“理查德”的昵称——译者注)的人。于是他主动和格林布莱特套近乎,找各种理由去打动他。他告诉格林布莱特,新增一件硬件设备会让PDP-6的计算能力大为改观,这个新增的设备会将现有内存增大到超过世界上任何一台计算机。他还保证新的分时计算机系统会比迄今为止的任何系统都好,并且黑客对这个系统也拥有控制权。就这样,他连着对格林布莱特做了好几个礼拜的思想工作,最后里基·格林布莱特终于同意给PDP-6计算机装上一套分时系统。

就在说服了格林布莱特后没多久,一天,高斯珀和另外几名黑客一起走进了弗雷德金的办公室。这些人在弗雷德金的办公桌前一字排开,用冷冰冰的眼神齐刷刷地盯着他。

“出什么事了?”弗雷德金问道。

他们继续盯着他,又看了好一会儿,最后才说:“我们想知道你对格林布莱特做了什么,我们有理由相信你对他进行了催眠。”

高斯珀极其不能接受许多人同时对那台PDP-6计算机发号施令。他的这一举动让弗雷德金想起了艾茵·兰德(Ayn Rand)的小说《The Fountainhead》(源头)中一位名叫洛克的建筑师。这名建筑师设计了一座漂亮的建筑。当洛克的上司接手了整个设计并把这座建筑弄得不再像从前那样以后,洛克炸毁了那座建筑。弗雷德金后来回忆说,高斯珀告诉他,如果他坚持在PDP-6上安装分时系统,高斯珀就只有将那台机器毁掉。“他觉得假如要对PDP-6做那么可怕的事情,他就只有毁了它。我理解这种感觉,于是我做了部分让步。”新的折中方案就是这台机器可以在夜晚以单用户模式运行,如此一来,黑客们就能够运行他们那些庞大的程序,并且这台PDP-6也可以任由他们发号施令了。

整个分时系统的实验实际上并没有开展起来。原因是有人编写了一个特别的、新的分时系统,而这个新系统的灵魂便是黑客道德。

……

系统的内核是由格林布莱特和尼尔森共同编写的,他们夜以继日地工作了几周才完成。就在这款软件部分完成后,汤姆·奈特和其他黑客开始对其做些必要的改造以便适应PDP-6计算机和全新的附加内存设备——这个设备装在一只巨大的机柜里面,机柜的体积相当于两台自助洗衣店里的大型洗衣机,它有个昵称,叫“Moby Memory”。尽管管理层批准黑客自己开发分时系统,但格林布莱特和其他黑客却对这个系统的最终特性拥有完全的发言权。这个新的分时系统与其他系统(例如CTSS系统,即“兼容分时系统”)有什么不同呢?其中一个不同之处就是它的名字,汤姆·奈特将这款黑客自己编写的系统命名为:不兼容分时系统(ITS)。

这个名号颇具讽刺意味,因为就与其他系统和程序的友好程度来说,ITS的兼容性比CTSS更强。就黑客道德的理念来说,ITS更是不在话下。ITS可以轻而易举地连接到其他东西上——这种方式赋予系统无限的扩展能力,方便用户有效地探索计算机世界。在任何分时系统中,几名用户能够同时运行在ITS环境下编写的程序。但在ITS上,一名用户也可以同时运行好几个程序。ITS还具有异常强大的显示功能,并有一个在当时非常先进的编辑软件,这个软件使用的是全屏方式(格林布莱特后来自豪地说:“这个编辑软件比世界上其他同类软件早了好几年。”)。由于黑客们希望在分时系统下计算机的运行速度能像在单用户模式下那样迅速,因此格林布莱特和尼尔森用机器语言编写的代码,将用户在分时系统上对计算机的控制能力提高到了前所未有的程度。

ITS中对黑客道德价值观的体现更加明显。几乎与所有其他分时系统不同,ITS并没有采用口令机制。实际上,这个系统被设计成允许黑客尽可能多地访问他人的文件。以前的做法是将纸带放进抽屉里,抽屉就成了一个集中存放程序的程序库,用户可以使用或者改动这些程序。这种方式现在也嵌入到ITS中了,每个用户都能打开保存在磁盘上的其他人的个人文件。ITS的开放式架构鼓励用户查看其他人的文件,看看其他人正在编写哪些精巧的程序,或在别人的程序中找找错误然后帮他改掉。如果想要一个计算正弦函数的例程,你就可以看看高斯珀的文件,找出他用10条指令编写的那段程序代码。你可以浏览顶尖黑客编写的程序,找些灵感,甚至对别人的代码夸奖一番。ITS的理念就是:计算机程序并不属于个人,而属于世界上的所有用户。

此外,ITS还保留了黑客都有的那种集体感,即当只有一名黑客在使用计算机时,其他人围在旁边看他编写代码的那种感觉。通过一个精巧的矩阵开关,任何ITS下的用户都可通过键入一条命令找出都有谁正在同时使用这个系统,而且还能切换到任何一个人的终端屏幕上观看他的一举一动。你甚至可以和其他用户一道进行软件开发。例如,奈特可能登录进来,发现高斯珀正在另一台终端上忙碌着,便可以将自己的程序提供给他参考,然后还能在高斯珀正在编写的程序中插入几行自己的代码。

这一功能还有一些有趣的用途。后来,当奈特构建出了一些彩色图形终端之后,有一个用户也许正在为自己的程序绞尽脑汁、冥思苦想的时候,突然屏幕上出现一只六条腿的……臭虫。这只臭虫可能会爬到屏幕上方,大口地吃掉你的代码,到处留下碎屑。在另外一个终端那里可能会爆发出异常兴奋的大笑声,其实这种笑声是一种外人难以理解的表达方式,他是在告诉你,你的程序到处都是毛病。但即便如此,任何用户都不仅有权开这样的玩笑,而且有权打开你的文件,删掉(他们称为“割掉”)你辛辛苦苦编写的程序和宝贵的注释,但还没有人这么做过。在ITS系统上,黑客都把自己的名誉看得很重。

ITS最能体现它对用户的信任之处,就是它对“有意使系统崩溃”这种行为的处理。一名黑客的正式“成人礼”便是深入到分时系统内部,用数字方式犯下这种“故意伤害罪”(可能让寄存器进行了大量的循环计算),进而导致系统崩溃。此时系统完全死掉了。这种情况时不时地会发生几次,于是有些人就必须对系统加以完善,避免类似事件再次发生。系统的安全措施越严密,某些喜欢胡闹的黑客想要驯服这个系统的挑战也就越艰巨。例如,要想让Multics崩溃就非常不容易。因此,总是有些程序员大侠通过让Multics崩溃的方式来证明自己的能力。

相比之下,ITS则准备了一条命令,它的具体功能就是让整个系统瘫痪。你要做的就是输入“KILL SYSTEM”这条命令,然后这台PDP-6计算机就会慢慢地停止运转。设计这一命令的初衷是让系统崩溃变得索然无味,因为那只不过是举手之劳而已。

在极少数情况下,有些“失败者”会看着所有可用命令,自言自语道:“KILL这个命令是干什么用的?”接着整个系统便会停止下来,不过ITS大体上证明了这一点,即“最好的安全措施就是没有安全措施”。

当然,在把ITS装到PDP-6计算机上后,有一段时间调试工作做得比较多,从某种意义上说,调试和修改工作延续了10多年。很多黑客调试ITS的时候一改就是好几天,格林布莱特就是其中最突出的一个。他们搜寻程序错误,增加新的功能,修改部分代码以提高速度……这些人不停地对ITS进行着修改和完善,最后ITS实际上已经变成系统黑客的家园了。

在AI实验室这个圈子里,系统黑客是最重要的角色。黑客道德的观念允许任何人对ITS进行修改和完善,但如果进行系统程序的修正,那么你的工作质量便要被大家放到明亮的聚光灯下观察,也就是所谓的公共后果——如果你打算改进MIDAS汇编程序或ITS- DDT调试器,要是你犯了一个可怕的错误,那么所有人的程序便会无一例外地崩溃,人们会找出应该由“失败者”负责的那部分错误。另一方面,黑客思想中还没有什么东西比系统软件的质量更重要。

不过,那些制定计划的人却并没有给予编制系统程序同等的重视。他们在意的是应用程序,即用计算机完成远远超出计算工作本身的任务,利用计算机建立一些有用的概念和工具以造福人类。但对于黑客们来说,系统开发便是他们的终极目标。毕竟,大多数黑客早在孩提时代便一直钟情于各种系统。一旦认识到创建系统的终极工具是计算机,他们就将生活中所有其他的东西全抛在脑后,义无反顾地投入其中。使用计算机,不仅可以建立令人目眩神驰,有如拜占庭风格般复杂、协调和高效的系统,而且由于有了可以使用“Moby”扩展内存的操作系统(例如ITS),计算机本身实际上也成了他们感兴趣的系统。ITS之美体现在它将自己毫无保留地呈现出来,让你能够非常容易地编写适用的、新的增强功能。ITS几乎就是黑客们的起居室,在这里每个人都可以按自己的喜好使用它,每个人都可以找到自己的一方乐土并尽情施展才华。ITS是完美的,是可以用来创建其他系统的系统。

这是一个无穷无尽的螺旋上升的逻辑循环。当使用ITS时,人们可能会对这个或那个功能深表赞叹,但他们想得更多的是如何完善这个系统。这种想法太自然不过了,因为由黑客思想得到的一个重要推论是:没有任何一个系统或程序是真正完成了的,你总能让它变得再好一点。每个系统都是活生生的有机体:如果人们不再对它进行维护和完善,它就会死亡。

当你完成了一个系统程序(例如一个汇编程序或调试器),或者某种运行速度快且(如你所愿)运转良好(例如一个多路复用器的输出接口)的东西,你同时也制造出了一件工具、提出了一项发明或改进了某种东西,将你今后的探索提高到了一个更高的层次。这是一个特别的循环过程,是螺旋式上升的过程。在这个过程中,系统程序员就是他为之完善的系统的忠实用户。有很多黑客认为那些妨碍他们进行最优化编程、时不时跳出来的烦人问题都是通过事后的修补解决的,并进而使系统最终达到艺术级的完美程度。(当然,真正的最优化编程只有在消除了人与纯计算机之间的障碍之后才能实现。不过这种理想情况不可能出现,因为那必须让黑客和计算机在生物学上合二为一才可以。)在黑客创造的ITS系统下,编写程序变得加容易,程序运行速度也大为提高,并且该系统还允许程序通过使用更多的机器资源获得更强的计算能力。因此,黑客不仅可以从编写优秀的系统程序中得到极大的满足(因为每个人都要用到这种程序并对此表示钦佩),而且从今以后他还将在编写下一个系统程序的路上向前走得更远。

下面引用一位名叫唐·伊斯特莱克的黑客在ITS首次运行5年后所撰写的进度报告10,内容如下:

ITS系统并非“人浪”的产物或无心而为的产物。这个系统的性能完善工作是渐进式的,并且自始至终从未停止过。一个大型系统的完善工作永无止境,这是千真万确的……总的来说,这个系统可以说是由用户设计且由设计者具体实现的。正是由于设计者也同时是实现者,才得以避免很多不切实际的软件设计问题。当软件的实现者也是设计者的时候,他不仅在编程过程中悠闲放松,而且其自豪感也与日俱增。如果用户就是设计者,那么ITS的各个功能就绝不可能华而不实;如果设计者便是用户,那么ITS的各个功能用起来还能不得心应手吗?

这段散文有点晦涩难懂,但它的观点却非常鲜明——ITS便是黑客道德的又一个极为强烈的体现。很多人甚至认为这个系统应该成为遍及全美的所有分时系统的国家标准,让美国每一个计算机系统都能传播黑客道德的福音,消灭讨厌的口令概念,促进人们亲自动手、无拘无束地参与系统调试活动,向世人展示通过分享软件(程序并不属于作者,而属于计算机的每一个用户)获得的增效力量。

1968年,几家主要的计算机学术机构在犹他大学召开了一次会议,目的是制定分时系统的标准,以便用于DEC公司即将推出的最新机型——PDP-10计算机。PDP-6和PDP-6相比没有太大的变化,大家考虑的两个备选操作系统之一便是黑客开发的“不兼容分时系统”。另一个操作系统的名字是TENEX,它是由BBN公司编写的,不过当时尚未真正使用过。格林布莱特和奈特代表MIT出席了这次会议,他们两人的与会给大会带来了一道别样的风景——两名黑客试图说服参会的十几所大型院校的主管们,让他们将价值几百万美元的设备从一开始就托付给一个没有内置任何安全机制的操作系统!

他们的努力失败了。

奈特后来说MIT的黑客们丢掉这次机会完全是因为幼稚。他猜在大会辩论结束前结果就已经定下来了——基于黑客道德的理念编制的系统对那些机构来说步子迈得太大了,所以他们没法接受。不过格林布莱特后来坚持说:“只要我们想,我们其实完全能够说服他们。”不过,用他的话说,“继续向前”才是更重要的。对格林布莱特来说,将黑客道德传播到剑桥以外的地方本就不是他要考虑的事。他认为关注科技广场大楼这里的芸芸众生才是王道,因为这里是黑客的乌托邦,这里的人将在黑客道德的指引下创建愈发完美的系统,并以此让世界刮目相看。