第1章 技术模型铁路俱乐部

不过,使用ibm计算机仍然会给人以挫败感。送入数据卡片后必须经过长时间的等待,没有什么比这更糟糕的了。哪怕你只在某条指令中输错了一个字母,程序也会完全崩溃,你必须重新再执行一遍上述过程,一步都不能少。此外,计算中心的氛围中还弥漫着各种条条框框,并且这些沉闷的条文有日益增多的趋势。绝大多数规定都是用来防止狂热的年轻计算机爱好者(如萨姆森、考托克和桑德斯等人)碰到计算机的。所有规定中最不容置疑的一条就是任何人都不允许碰到或乱动计算机。当然,这正是s&p小组的成员宁可放弃一切也要做的事,这些条条框框简直把他们气疯了。

有一名“牧师”(实际上属于低级别的助理牧师)在他值夜班的时候格外认真地执行这条规定,于是萨姆森设计了一条计策,让他不大不小地尝了点苦头。一次在埃里的废电子器件商店闲逛的时候,他偶然发现了一块带几个破旧电子管的电路板,和ibm计算机里面的一模一样。一天夜里,还不到凌晨四点,那位助理牧师有事出去了几分钟,当他回来的时候,萨姆森告诉他这台计算机死机了,但他们找到了问题所在,然后他拿出从埃里捡回来的那块破破烂烂的旧ibm704计算机电路板。

这名助理牧师惊讶得几乎说不出话来:“你……你从哪儿拿的?”

萨姆森大大的绿色眼睛此时放射出激动的光芒,他慢吞吞地指了指计算机架子上的一块空位,当然,这里从来也没有放过任何电路板,但这块地方看上去好像确实少了点什么东西。

助理牧师倒吸一口凉气,他的表情痛苦不堪,他默念着求上帝宽恕自己。毫无疑问,他眼前一定闪现出未来从他的薪水中扣掉100万美元的可怕情景。后来,在他的上级主管(一位高级“牧师”,对tmrc那帮机灵鬼的想法略知一二)把当时的情况向他分析了一遍以后,他才放心。

黑客因不让他们接触计算机而逐渐滋生出了愤愤不平的情绪,感受到这一点的管理员绝不止这位助理牧师一人。

一天,tmrc以前的一位成员,现在已经成为mit的一名教师的黑客回俱乐部来参观,他的名字是杰克·丹尼斯。20世纪50年代初,他还是一名本科生的时候便为铁路模型的底层设计付出了大量心血。丹尼斯当时正使用一台mit刚刚从林肯实验室(mit下属一个专门开发军用设备的实验室)接收的tx-0计算机,这台计算机是世界上第一批使用晶体管的计算机之一。林肯实验室此前专门用这台计算机测试另一台大型机——tx-2。tx-2的存储器极其复杂,只有用这台专门建造的同宗兄弟计算机才能找到它的毛病。现在,这台计算机的最初任务目标已经完成,因此这台价值300万美元的tx-0便被运送到此,“长期租借给”mit使用。显然,林肯实验室的人根本没有设置归还日期。丹尼斯专门到此,想问问tmrcs&p小组的成员是否有兴趣看一眼这台计算机。

tx-0放在26号楼,在二楼的电气研究实验室(rle)里,rle正好在一楼计算中心(这里放有ibm704计算机)的上方。rle很像一艘过时宇宙飞船的控制室。那台tx-0计算机(有时称为tixo)在当时算是小型机,因为它是第一批使用手指大小的晶体管(而不是手掌大小的真空电子管)制造的计算机。尽管如此,它(还有与其配套的重达15吨的空调设备)还是占据了房间的一大半空间。tx-0系统连接到几根又高又细的架杆上,看上去好像是粗制滥造的书架一样,它的电线互相缠绕在一起,此外还有一排排整齐、如小瓶子般的容器,里面都插着晶体管。另一个架子上的固体金属门上,冷冰冰地标着各种规格。这几个架子对面是l型控制台,这是这艘宇宙飞船的控制面板,操作员可以把胳膊肘或资料放到它的蓝色台面上。l型控制台较短的一侧立着一台flexowriter电传打字机,它很像专用打字机,其底部固定在军灰色的支架上。上方是一个个箱子形状、涂成公共设施那种黄颜色的控制面板。面向操作员的箱子侧面有几条标准刻度,还有几排四分之一英寸的灯闪烁不定,另外还有一些钢制拨动开关,大小要比米粒大一些。最妙的是,还有一台圆形、呈烟灰色的阴极射线管显示器。

tmrc的人一下子被震住了——这台机器不使用数据卡片。用户首先要用那台flexowriter电传打字机(旁边的屋子里还有几台同样型号的电传打字机)将程序“打”到一根很长很细的纸带上,然后用读取器将纸带上的程序读入计算机,接着就可以坐在那里等着程序运行完。如果程序出了问题,你马上就会知道,并且可以利用某些开关或通过检查哪些灯正在闪烁来找到错误。这台计算机甚至还有一个音频输出装置:程序运行的时候,控制台下方的扬声器就好像一个未经调谐的电风琴,用带有杂音的音符播放一段乐曲。这件“乐器”上的和弦随着每一微秒读取的数据而变化:在熟悉了这段曲调之后,你甚至可以听出你的程序已经运行到哪一步了。即使flexowriter打字机那噼噼啪啪的噪声再嘈杂(这些声音可能会让你觉得自己正置身于一场机枪激烈交火的战斗中),你也一定要辨别出那些声音。

更加令人惊喜的是,由于计算机提供了“交互式”的功能,并且用户似乎可以有一段时间自己操作这台tx-0,因此你甚至可以在计算机旁边修改程序。这太不可思议了!

世上绝对没有任何方法可以让考托克、桑德斯、萨姆森和其他黑客远离这台计算机。幸运的是,tx-0计算机旁边似乎没有像ibm704计算机周围弥漫的那种官僚作风。没有多管闲事的牧师。负责tx-0的技术员是一位精明、满头白发的苏格兰人,名叫约翰·麦肯锡。虽然他的职责是确保研究生和那些参与政府或企业资助项目的人能够正常上机,但他也默许tmrc那些开始在电器研究实验室转悠的人使用这里的tx-0。

萨姆森、考托克和一名叫鲍勃·瓦格纳的大一学生很快就发现,一天当中到26号楼来的最佳时间就是晚上,因为任何正常的人都不会按每周五贴在rle实验室空调旁边的上机预约单所写的那样在这个时候跑来上机一个小时。针对tx-0计算机有一条规定,那就是要24小时开机——当年,如果计算机整晚闲置,就属于极大的浪费。此外,一旦关机,重新启动计算机的过程非常麻烦。于是tmrc的黑客(不久之后,他们就自称为tx-0黑客了)就改变了自己的生活方式来适应这台计算机。他们尽可能地占用所有大段上机时间,但同时也不放过“零星的时间”——他们在夜里也常常抱着一线希望到实验室来看看,希望某个预定了凌晨3点时间段上机的人还没来……

“哦!”假如到了上机时刻表上安排给某人的时间,但他还没有来,再过一两分钟后,萨姆森就会高兴地说:“这点时间绝不能浪费!”

这种时间好像从未浪费过,因为黑客们几乎无时无刻不在那里等待这样的机会。假如他们没有在rle实验室等着天上掉馅饼,那么他们就会在tmrc隔壁的教室里(也就是toolroom)玩萨姆森发明的有点类似于hangman猜字的游戏,该游戏名为comenextdoor。他们一边玩儿一边等待着在tx-0旁边的眼线来报告,看是否有人该来上机但却没来。黑客们建立了一个情报网,让这些眼线提前告诉他们哪段时间计算机可能会空闲。假如某个研究项目没有及时准备好程序,或者某位教授病了,那么这份情报就会被送到tmrc,而黑客们便可以坐到tx-0前,屏住呼吸,准备一头扎进控制台后面的世界里。

虽然杰克·丹尼斯原则上负责实验室的运转,但当时他还有教学任务,并且愿意将业余时间拿来编写tx-0运行的程序。丹尼斯扮演着黑客们慈祥的教父这样一个角色:他会亲自向他们简单地介绍一下这台计算机,指点他们朝着某个方向努力。每当看到黑客们异想天开的程序代码,他总是忍俊不禁。丹尼斯对管理工作一点也不感兴趣,因此他很高兴地把管理大权交给约翰·麦肯锡。麦肯锡早就看出,tx-0提供的交互式功能可以产生一种全新的编程方式,而黑客们正是摸着石头过河的那批先驱。因此他并没有制定太多的规矩去规范上机行为。

1959年宽松的氛围对那些迷途的人来说是非常宽容的。像彼得·萨姆森这样的科学迷,他们总是对一切东西都感到好奇,他们会探索mit每间实验室中的未知迷宫。空调的噪声、声音输出装置以及flexowriter电传打字机的声音都会吸引这些探索者,就好像小猫探头探脑地窥探篮子里的线团一样,他们也会伸长脖子朝实验室内东张西望,想探个究竟。

彼得·多伊奇就是这样的人之一,他不属于这个实验室。早在发现这里有台tx-0计算机前,多伊奇便已经对计算机深深地着迷了。最初,他随手捡了一本不知谁扔掉的手册,介绍的是一种专门用于计算的晦涩难懂的计算机语言。书中有关计算机指令的某些规律吸引了他:他后来说那种感觉就好像是艺术家发现了最最适合他的那种创作方法,那是一种自己也说不清楚的、超越一切的认知能力。这里就是多伊奇的舞台。多伊奇努力写出了一小段程序,并用某个牧师的名字预定了上机时间,在计算机上运行自己的程序。仅仅几周的时间,他的编程能力便已脱胎换骨了。那年他才仅仅12岁。

多伊奇性格内向,数学能力出众但对其他事情没有自信。他因缺乏运动而体重远远超过正常标准,但这并不妨碍他成为一名高智商的实干家。他的父亲就是mit的一名教授,多伊奇正是利用这一点优势得以随意出入各个实验室。

他能对tx-0感兴趣确实让人觉得不可思议。他头一次踱进这间小小的"klugeroom"("kluge"是一件造得不怎么好看的设备,但是运转起来却没有问题,这让人觉得有些不合逻辑),这里有三台没有和计算机相连的flexowriter电传打字机,可以用这几台打字机将程序“打”到纸带上以便随后输入到tx-0计算机中。多伊奇在旁边看了一会儿别人怎样将程序“打”到纸带上,然后连珠炮似地向这个可怜的家伙提了一连串的问题,都是关于隔壁房间看起来怪怪的那台小型计算机的。然后,多伊奇径直走向那台tx-0计算机并仔细地端详起来,还将它与其他计算机的不同之处记录了下来:这台计算机体积更小,它有一台crt显示器以及其他精致的设备。于是他当即决定要做进一步的行动,就好像他理所当然应该这么做似的。多伊奇拿了一本手册,并且没有多久,他谈起计算机来便头头是道,让别人不得不刮目相看。最后,他终于获批可以在晚上和周末到此上机,编写他自己的程序了。

麦肯锡担心可能有些人会有不满情绪,抱怨他在举办某种夏令营活动:这个穿短裤的小孩,即使伸着脖子也还没有tx-0的终端机高呢,但他会盯着“官方授权用户”(也可能是一名高傲的研究生)用flexowriter输入的代码,用自己尖声尖气、尚未发育到青春期的嗓音说着什么,如:“你把这里的贷方数据搞错了……你应该在那里用另外一条指令。”接着那位自以为是的研究生便会勃然大怒——这小孩是谁?然后朝着他厉声呵斥,让他出去到一边玩儿去。可每次彼得·多伊奇的忠告最后都证明是正确的。多伊奇也会不知天高地厚地宣称自己要着手写一个比当前正在使用的程序更好的程序,然后他还真的就去做了。

萨姆森、考托克和其他的黑客因彼得·多伊奇出众的计算机才能而最终接纳了他,他值得这些人平等相待。但多伊奇在“官方授权用户”中却不那么受欢迎,尤其是当他坐在那些人后面随时准备指出他们在flexowriter上犯的每一处错误时,更是如此。

“官方授权用户”通常都乘坐班车来此地上机。他们运行的程序是有关统计分析、交叉关联和细胞核内部构造模拟等课题的。这些都属于应用的范畴,对那些用户来说不是问题,但对黑客来说,绞尽脑汁考虑这样的问题毫无意义。黑客考虑的是转到tx-0控制台后面看个究竟,就像绕到飞机的节流阀后面看看其工作原理一样。或者,用喜爱古典音乐的彼得·萨姆森的话来说,用tx-0进行计算和弹奏一件乐器一样:你要用一件昂贵得离谱的乐器即兴创作、编排并(像1英里外哈佛广场上那些“垮掉的一代”那样)肆意地演奏。

杰克·丹尼斯和另外一位名叫汤姆·斯托克曼的教授共同设计的编程系统令黑客们得以充分发挥自己的能力。当这台tx-0被送到mit的时候,它已非完璧,因为它在林肯实验室它就经过改装了:其内存锐减至4096个“字”,每个“字”有18位(一个"bit"就是二进制数字的一位,要么为0,要么为1。这些二进制数是计算机唯一能识别的内容。一串这样的二进制数便构成了一个“字”)。此外,这台tx-0几乎没有配备任何软件。因此,杰克·丹尼斯甚至早在他将这台tx-0介绍给tmrc成员之前就一直在编写“系统程序”,即帮助用户使用计算机的软件。

丹尼斯首先要编写的是汇编程序。这种软件是用来将汇编语言翻译成机器语言(由二进制数0和1组成)的工具软件,其中汇编语言用三个字母的缩写符号代表发送给机器的每条指令。tx-0计算机的汇编语言十分有限:由于在设计之初,每个18位的“字”只能使用其中两位表示指令,因此每个字最多只有4条指令可用(两位所有可能的变化为00、01、10和11,每种变化代表一条指令)。计算机所做的任何事都可以分解成执行这4条指令中的某一条:使用一条指令就能将两个数相加,但是要将两个数相乘,就需要一长串指令(也许是20条)才能完成。盯着用二进制数(如10011001100001)编写的长长的计算机命令清单,不用几分钟,你准会晕头转向。但是,用汇编语言编写同样的命令可能会是这种形式:addy。向计算机加载丹尼斯编写的汇编程序后,就可以用这种较为简单的符号形式编写软件,然后可以很有成就感地等着由汇编程序帮你将程序翻译成二进制代码。接着,你要将那二进制的“目标”代码送回计算机运行。汇编语言可谓无价之宝,它只是让程序员用看起来好像是代码的符号编写程序,而不是用无穷无尽、令人眼花缭乱的数字1和0去写。

丹尼斯和斯托克曼共同编写的另一个程序是个比较新的工具——调试器。tx-0本身自带一个名为ut-3的调试程序,利用这个程序,用户可以直接将命令通过flexowriter电传打字机输入到计算机中,进而赋予了这名用户在计算机运行过程中与其交互的能力。但是,ut-3存在不少非常严重的问题,例如,它只能“读懂”使用八进制输入的代码。所谓“八进制”就是基于8个数字的系统(与此形成对照的是基于2个数字的二进制系统,还有我们日常使用的基于10个数字的十进制系统),这个系统使用起来相当复杂。因此丹尼斯和斯托克曼决心写一个比ut-3更好用的调试器。有了这种调试器,用户就可以使用符号,即较为易懂的汇编语言编写程序了。他们两人编写的程序名为"flit",它可以帮助用户在程序运行期间发现和修改错误,保证程序能够运行下去。(丹尼斯解释说:"flit"代表flexowriterinterrogationtape,但很明显,这个名字起源于一种同名的杀虫剂。)和ut-3相比,flit是一次飞跃,因为它解开了束缚程序员的枷锁,就像音乐家能够用他们的乐器进行创作一样,程序员可以在计算机上进行最原始的创作了。尽管flit需要占用tx-0总共4096个“字”内存的1/3,但有了这种调试器,黑客便可以随心所欲地创造出新的、更为大胆的编程风格。

那么,那些黑客自己的程序又做了些什么呢?有时,它们做什么真的一点也不重要。彼得·萨姆森整晚都在编写一个即时将阿拉伯数字转换成罗马数字的程序。杰克·丹尼斯在看了萨姆森的“壮举”之后,对他的编程技巧表示由衷的钦佩,说:“上帝,为什么会有人想做这样一件事?”不过丹尼斯知道为什么。萨姆森在将纸带输送到计算机中,然后观察着闪烁的灯光和开关,接着看到一度在黑板上平淡无奇的、古老的阿拉伯数字变回罗马人发明的那种数字的时候,那种浑身充满力量的感觉和巨大的成就感便是这一切的原动力。

其实,正是杰克·丹尼斯向萨姆森建议,利用tx-0计算机向扬声器发送声音的能力将会有超乎想象的广泛用途。虽然没有内置用于定调、控制振幅或调节音质等的控制器,但却有办法指挥扬声器——在任意一毫秒内,是否发声取决于tx-0累加器中每个18位“字”的第14位的状态。声音的开与关取决于第14位是1还是0。因此,萨姆森着手开始编写让每个“字”第14位的二进制数以不同的方式变化的程序,以此产生不同的声调。

当年,美国只有很少几个人一直在进行用计算机演奏各种类型乐曲的实验,他们所采用的方法哪怕让计算机演奏出一个音符都需要极大的计算量。很多人警告萨姆森,认为他在这方面的努力无异于逆水行舟。但萨姆森对此类言论表现得非常不耐烦,他想要计算机立刻就能演奏出乐曲来。于是他学习控制那个累加器中第14位数字的方法,想要像查理·帕克操纵萨克斯管那样让计算机也对他俯首帖耳。在这款音乐编辑器的后期版本中,他给这个程序增加了新的功能:如果你在编程中犯了一个语法错误,flexowriter就会使用红色的墨带打印出"toerrishumantoforgivepine."(人非圣贤,孰能无过?)

当黑客圈以外的人听到约翰·塞巴斯蒂安·巴赫那悦耳的旋律竟然以单声部、单音频的方波形式播放,且毫无和谐可言的时候,几乎都无动于衷。这是平地的一声惊雷!这可是台价值300万美元的大型计算机,为什么它不能完成一个价值5美元的玩具钢琴也能完成的小事儿呢?彼得·萨姆森几乎是另辟蹊径,颠覆了有史以来音乐制作的基本流程,跟那些局外人讲这些无异于对牛弹琴。音乐一直是通过直接制造振动(即声音)得到的。而萨姆森的程序只不过是将一大堆数字(或者说是无数输入到计算机里的位信息)组合成一段代码,音乐便蕴涵在这段代码之中。你就算盯着这段代码几个小时也不可能琢磨出音乐到底藏在哪儿。tx-0计算机由大量金属、电线和硅片组成,在这些元件中藏着个累加器,只有在累加器中进行数百万次令人眼花缭乱的快速数据交换以后,这段音乐才能播放出来。这台计算机本身并不十分清楚怎样使用声音,现在萨姆森要求它用歌声提升自己的价值,这台tx-0乖乖地照办了。

因此,计算机程序不仅仅被比作音乐作品,严格来说,它本身就是一部音乐作品。这样的计算机程序看起来好像和能够得到复杂的数学计算结果和进行数据分析的程序没什么两样,并且事实上两者确实没什么两样。萨姆森塞进计算机里的那些数字是可以制造出任何东西(不管是巴赫的赋格曲还是防空系统)的通用语言。

萨姆森并没有对外界透露他的所作所为,而那些外人对他的成就也丝毫不感兴趣。连黑客们自己也不谈论这件事——我们甚至还不清楚他们是否在如此广泛的意义上审视过这一成就。彼得·萨姆森做成了这件事,他的同事也对他的成就表示钦佩,因为这段程序编得非常精妙,仅凭这一个理由就足够了。

鲍勃·桑德斯,秃顶、大腹便便,是tx-0的忠实信徒、tmrcs&p小组的负责人,也是一名乐于钻研系统的学生。对于像他这样的黑客来说,这就是一种“完美的生活”。桑德斯在芝加哥郊区长大,自打记事起,电学原理和电话电路便一直吸引着他。进入mit之前,桑德斯找到了一份理想的暑期工作——为电话公司安装办公室电话总机。一连8个小时,他兴致勃勃地拿着烙铁和钳子在各种系统内忙碌着。虽然午饭时间暂时中止了他的田园诗般的工作,但他还是会抓紧这段时间埋头研究电话公司的手册。正是铁路模型下方的电话公司设备让桑德斯下定决心要在俱乐部中发挥自己的作用。

虽然是高年级学生,但桑德斯在自己的大学生涯里接触到tx-0计算机的时间比考托克和萨姆森都要晚:因为他抓紧每分每秒建立自己的社交关系网,包括向玛吉·弗伦奇求婚并最终走向婚姻的殿堂。玛吉·弗伦奇当时已经为一个研究项目做了部分和计算机有关的工作了(但她的工作还够不上称为"hack")。尽管社交占用了桑德斯很多时间,但tx-0还是他大学生活的中心。他和普通的黑客一样,也因多次旷课而成绩越来越差。可他并没有对此过于在意,因为他十分清楚自己已经从26号楼240房间tixo控制台的后面得到了真正的教育。多年以后,他将自己和其他黑客定位为“一群精英”。“其他人逃课,整天待在四层高的楼房里做些没任何用处的东西:要么到物理实验室将小球扔向另一个物体,要么随便做些什么。我们只不过不关心别人正在做什么,因为我们对他们的所作所为不感兴趣。他们研究他们的,我们研究我们的。虽然大家研究的东西很大一部分并不是我们的正式课程,但总的来说我们觉得这一点都不重要。”

黑客们通常昼伏夜出,这是唯一一个充分利用重要的tx-0“业余时间”的方法。白天,桑德斯常常设法在一两节课上露一下脸,然后做些“基本的维护”工作,比如吃饭和上厕所,也许还要到玛吉那里腻上一阵子,不过最后他总是能回到26号楼。在这里,他会重新浏览一遍前晚编的程序,用9.5英寸宽的flexowriter专用打印纸打印出来,然后在程序清单上圈圈点点,将代码按照他自己的理解升级到下一个操作阶段。时候差不多了,他也许还要到tmrc泡一会儿,拿自己的程序和别人的交换,大家相互看看别人有什么新点子或程序错误。接下来,桑德斯就又回到26号楼tx-0隔壁的klugeroom,找一台空闲的flexowriter来修改自己的程序代码。就算自己忙着,他也不会忘了随时去看看是不是有人取消了1小时的上机时间。他自己的上机时间一般都在凌晨2点或3点。他会在klugeroom一直等着,或者回俱乐部打上几圈桥牌,直到有机会上机为止。

坐在控制台面前,你的对面就是装有计算机晶体管的金属架子,上面每一只晶体管表示内存中某个数位为1还是0。桑德斯打开flexowriter电传打字机,打字机会首先打出欢迎语——"walrus",那是萨姆森为了向刘易斯·卡洛尔的一句诗“时间到了,海象(walrus)说……”致敬。看着这条欢迎语,桑德斯会一边笑着一边拉开抽屉,拿出保存着汇编程序的纸带并送到纸带读取器中。现在,计算机已经准备要开始处理他的程序了,于是他把用flexowriter打印出来的纸带输入到计算机中。当计算机把他的程序从“源代码”(使用汇编语言)转换成“目标”代码(二进制代码)的时候(即在另一条纸带上击打出二进制代码),他总是盯着那些不停闪烁的灯光。由于这根纸带上是用tx-0能够理解的语言目标代码书写的,因此可以将其直接送入计算机中,期待着程序的运行结果完美无缺。

这时候,很可能有几个黑客在旁边七嘴八舌,他们手里拿着从楼下自动售货机里买来的可口可乐和垃圾食品,一边笑一边开着玩笑。桑德斯喜欢柠檬口味的果冻蛋糕(其他人把这种蛋糕称作“柠檬糊糊”)。不过在凌晨4点的时候,任何食品都是美味珍馐。当程序开始运行,指示灯一闪一闪地发光,扬声器按照累加寄存器第14位的内容传出或高或低的嗡嗡声的时候,所有人都目不转睛地看着这一切。程序汇编完并运行后,桑德斯通过crt显示器首先看到的就是程序崩溃的信息。于是他伸手拉开抽屉,找到保存着flit调试器的纸带,将它送入计算机。接着这台计算机就变成了一台具有调试功能的机器,然后他再次输入自己的程序。现在,他可以试着查看哪里出了问题。假如幸运的话,他找出了问题所在,就可以输入几条命令,或按照正确的顺序拨动控制台上的开关,或者用flexowriter输入一些代码来修改自己的程序。一旦程序运行顺利(假如某种修改方案生效的话,假如他将整间屋子的晶体管、电线、金属和电流通通组合在一起,让它们按照他的设计方案精确地输出运行结果,那么效果总是令人非常满意),他还会尝试让自己的程序能够更完美一些。在他的上机时间结束后(总是会有人跃跃欲试地等着轮到自己上机),桑德斯会利用接下来的几个小时分析程序失败的原因。

在每天上机的高峰时段,黑客们总是非常紧张地工作,但这之前和之后的数小时内,他们也可以进入一种精神高度集中的状态。如果为计算机编写程序,你就必须十分清楚数千个表示信息的位会如何随着指令的变化而变化,并能预测它们的变化效果,甚至学会挖掘、利用其潜在的变化。

当你将所有这些信息印在大脑中以后,就好像将自己的意念和周围的环境(或计算机)完全融合在了一起。有时,你需要好几个小时才能在自己的大脑中把所有指令连成一个整体。一旦到了这个时候,你会非常舍不得结束这种来之不易的状态,你会继续在计算机上工作,或者到隔壁找台空闲的flexowriter打字机把程序打印出来再细细地琢磨。你甚至会把这种精神高度集中的状态延续到第二天。

然而不可避免的是,这种“天人合一”情绪已经影响到黑客计算工作以外的方方面面了。由于部分痴迷tixo计算机的人加入了tmrc,“刻刀和画笔”小组sup/sup的人对此十分不满:他们将那些tx-0黑客视为旨在破坏这个俱乐部的特洛伊木马,认为他们想把俱乐部的工作中心从铁路转向计算。如果参加每周二下午5点15分召开的俱乐部会议,你就能看到这种担心:黑客们总是抓住每一个可能的议题把会议搞得像他们在tx-0上编写的程序一样复杂。他们所提出的动议只是为了提出别的动议,而别的动议又再提出另外的动议。他们反对被裁定为违反会议规则,好像它们是大量的计算机错误一样。1959年11月24日那次会议的会议纪要中便记着这么一条:“我们不赞成某些成员促进俱乐部发展的做法,他们过于强调技术研究而疏于阅读《罗伯特议事规则》sup/sup。”萨姆森便是违反规则最严重的成员之一,有时,甚至有一位怒气冲冲的俱乐部成员提出一项动议,要“买个塞子堵住萨姆森喋喋不休、大放厥词的嘴”。

把会议议程搞乱不过是一个示例,编程所需的逻辑思维方式也影响到了普通活动。你可以向黑客提问并能够感受到他脑中的累加器正在处理每一个数位,最终他会用最为精准的答案回答你的问题。玛吉(此时,她已经是桑德斯的妻子了)每周六上午都会开着自己的大众车到西夫韦超市去采购,当她回来的时候会问自己的丈夫:“你愿意帮我把车上的东西搬进来吗?”鲍勃·桑德斯回答道:“不能。”前几次玛吉觉得十分惊讶,不过还是自己将采购的东西搬进屋子。不过同样的事情发生几次后,她终于忍不住发怒了,气呼呼地冲他大发脾气,质问他为什么对她的要求说“不”。

“你问的其实是个愚蠢的问题,”他回答说,“我当然不愿意帮你把采购的东西搬进来啦。但如果你把‘愿意’两字去掉,问我是否帮你把这些东西搬进来,那就是另一回事了。”

玛吉就好像把一段程序输入到了tx-0中,结果这段程序崩溃了(如果语法错误,程序总是如此)。只有当她“调试”了自己的问题以后,鲍勃·桑德斯才会让这段“程序”在他自己大脑里的“计算机”中顺利运行。

专指汽车、火车模型的比例,1英尺比1/8英寸。

鲁宾·戈德堡(rubegoldberg),美国著名漫画家。

沃纳·冯·布劳恩(wernhervonbraun),20世纪液体燃料火箭技术和宇航工程的开创者和奠基人。

卡尔·桑德堡(carlsandburg),1878-1967,美国作家、诗人。他一生曾三次获得普利策奖,其中两次是因诗歌获奖。

指专门制作火车模型并上色的那部分成员。

该书由亨利·马丁·罗伯特编写,主要讲有关开会的各项规则,包括会议主席的规则、会议秘书的规则,也有针对不同意见的提出和表达的规则,还有辩论的规则和表决的规则等。至今已经修订过多次。