Skip to content

只是为了好玩 by Linus Torvalds

作者是 Linus Torvalds,Linux 内核的最初作者。

战争是建立社会秩序的手段。

初听骇人听闻,往深处思考还真是这样。战争能让本国人民团结起来,一致对外,提高国家凝聚力。如果战胜了,大概率成为一个经济军事强国。

没错。但它也是把人自己塑造成社会秩序中一部分的手段。

在所有的事物中,一部分动机可能是生存,另一部分可能是社会秩序,剩下的就是娱乐。

Linus 对世界的认知角度。

我问尼基他是否对电脑程序表示过任何兴趣,或让李纳斯教给他一些最基本的电脑常识。他回答说从来没有。他说父子完全是不同的个体,而深入探究李纳斯的激情就等于“侵犯他的灵魂”。

作者问 Linus 的父亲与电脑相关的问题,“侵犯他的灵魂”让我忍俊不禁。不能质疑一个人对一件事情的热情。

李纳斯在很小的时候,有一次对我袒露出对他妹妹的佩服。他那时大概是五岁或七岁,突然严肃地对我说:‘你瞧,我脑子里从来没有新的思想,我想的事都是别人先想出来的,我再把它们重新组织起来。但萨拉想的事都是别人从没有想过的。

这些回忆让我觉得,我至今仍认为他没有什么‘特殊的’才华,肯定没有在‘计算机’方面的才华--假如他没有这方面的才华,断然会把精力放在其他方面。在某一天或某个年代,他就会集中于应付另一个不同的挑战。我想他会的(我的意思是说,我希望他不要永远陷在Linux软件上)。因为我认为他的动力并非是‘计算机’,也决不是名声和财富,而是诚实的好奇心和征服所面临的困难的愿望,以及用最好的办法去克服困难。因为事情就是如此,他决不会后退。

如果 Linus 不是 Linux 之父,那么他也可能在其他方面让世界各地的人们惊叹他的创造。

但是计算机在一开始让你入迷的盲从性,显然不得它成为招人喜爱的伙伴。事实上,这种特性很快就让人厌烦了。真正使编程令人欲罢不能的是:你能让电脑做你想做的事,但是你还必须想出怎样做到的办法。

我现在的状态就是,我知道计算机能做很多事,但因为没有掌握足够多的编程知识,我还不能让计算机为我做事。

我个人认为,计算机科学和物理科学有很多相似之处。两门学科都是在一个相当基础的层面上探讨一个体系是怎样运行的。当然,区别在于,在物理学中,你探究的是一个已经存在的客观世界的构成。而在计算机科学中,你却是在创造一个前所未有的体系。

现在的计算机科学,已知的内容已经无法学完,未知的内容还暂时没有能力开拓。

探究计算机工作原理的过程,是吸引我走进编程世界的最初原因。在这其中获得的最大的乐趣在于,我认识到了计算机科学与数学的类似:你必须从该体系自身的规则出发,推演出整个世界,在物理科学中,你被客观规律所束缚。但是在数学和编程中,只要能合乎逻辑地推演,就可以成立。思考数学问题,不会受到客观世界的逻辑的限制,数学只是逻辑自洽的符号体系。

数学是逻辑自洽的符号体系。

但是在大部分时间中你却不能欣赏自己创造的美妙世界。你只不过是在编写执行某一任务的程序。这时你就不是在创造一个新世界,而是在电脑世界中解决一个具体的问题。问题通过将思考结果应用到问题中而得到解决。而能够坐下来,盯着电脑屏幕,将一个问题彻头彻尾地贯穿思考,就需要某种特定的人。

这种特定的人就是程序员。

还记得那些在课上总能答对问题的同学吗?他们的答案比别人来得快,他们能这样是因为他们没有刻意去追求。他们不在乎他们应该怎样来答题。他们只不过找到了合理的考虑问题的方法。人们一听到正确答案,一切听起来就都是那么回事了。

找到思考问题的方法,答案就显而易见了。

在电脑上也是这样。你可以鲁莽、生硬地行事,愚蠢地死死纠住问题不放,直到问题不再成为问题。也可以通过找到正确的方法,使问题突然消失。你可以从不同的角度看问题。直到灵光突现地认识到:问题之所以成为问题只在于你的方法错了。

问题之所以成为问题,就在于方法错了。

一个伟大的数学家不会采用平庸而繁琐的方法,因为他能看到隐藏在问题背后的真正内涵,并应用这一理解去找到更为简便的方法。

寻找更为简洁的办法。

我本来可能会在1991年底之前就洗手不干了。我已经做了很多自认为有意思的事。并非一切都绝对圆满,但在软件世界中,一旦你已解决了最根本的问题,兴趣就容易很快地消失。我也是那样。解决软件中存在的小问题并不是什么吸引人的工作。但接下来发生了两件让我继续下去的事,第一:由于失误,我破坏了我的MINIX分区;第二,人们不停地传给我反馈的意见。那时,我在导入Linux时仍要把MINIX作为主要的开发环境。我在Linux系统下做的大部分事只是这我写的终端仿真器从学校的电脑上读邮件和新闻。学校的电脑总是很难登录,所以我编了个可以自动拨号的程序。但是在十二月时,我本想自动拨devtty1――这是系列电话线,但却错误地拨成了devhda1,既硬盘分区,结果是我无意中覆盖了保存的MINIX中最重要东西的空间。是的,这也就意味着我不能再进入MINIX的环境了。那就是我要做出抉择的一刻。我可以重新装入MINIX系统,或者也可以将错就错,自认Linux已是足够的好,以至不再需要MINIX了。我将通过在Linux下编程来编译Linux,而只要我觉得需要MINIX中好的功能,我就把这些MINIX的优点编到Linux中。无疑,这是观念上重要的一步,因为你要摆脱原有的系统环境,使新的系统真的能够自我包容。这一步十分重大,因此我将十一月底发布的版本命名为0.10版。几个星期之后,就升级到了0.11版。

使用 Linux 编译 Linux。抛弃旧有系统,使用新系统,是变革的第一步。

我认为这种做法很愚蠢。是的,每一个单独的部分是简单的,但是相互作用的多种功能如果放在一起就要复杂得多,而Linux就是后者的情况。想一想自己的大脑。每一个单独的部分都很简单,但是各部分的相互作用构成了一个复杂的系统。这是一个整体比个别更大的问题。拿一个问题来说,如果你简单地将问题一分为二,说半个问题要容易一半,那么你就忽略了一个事实,即:你必须要考虑到两个半个之间的联系所带来的复杂性。

具体与整体的复杂性程度不同,前者简洁明了,后者复杂度呈几何级数上升。

感谢上帝安排微软发明了这种软件。

是 Power Point。Linus 不擅演讲,放映 PPT 可以缓和尴尬气氛。

在埃德的那次演讲几乎使我确信我能应付任何事情,既然连站在一群俨然陌生的人面前并成为他们注意的中心这样难堪的事我都可以应付,我的信心在其他方面也渐渐建立了起来。

信任不是没有用的,在人们相信你时,他们更容易领会你的建议。

获取信任,有助于别人听取你的建议。

当然,你首先要建立别人之所以信任你的基础。对我而言,我猜想主要不是因为我发明了Linux的核心部分,而是因为我最终做出了将它放到互联网上、并且对所有希望使用或改进它的人公开源代码的决定。

我很早就明白,最好的领导者不是让手下做他要求他们做的事情,而是让手下做他们自己想要做的事。同时,最好的领导者也明白,当手下犯错时,要让他们自己有能力纠正而不要总是自己出面纠正。最佳的领导者是能够让手下自作主张的人。

最好的领导者会让手下自作主张。

黑客们的很大一部分动力,也来自于靠实实在在的贡献获得同行的认可和尊重的企图,这是一个重要的激励因素。

只有塔芙,她邀请我和她出去约会。

Linus 在学校任教,在一堂课上让学生课下发邮件给他(家庭作业),只有塔芙很特别,邀请他约会,其他人发的就是写笔记或者其他内容。

我女儿卡蕾认为,能让人给你买一只企鹅可真是件不得了的事。在晴朗的夜空底下,我们围坐在篝火旁,李纳斯讲述着一个在英国布里斯托尔市的Linux用户组织是怎样买了一只企鹅送给他。让卡蕾想不到的是,那些人并没有真的给他买一只企鹅,李纳斯解释说,是那个组织曾向某个动物保护组织捐款赞助,然后以李纳斯的名义认养了一只企鹅。托沃兹一家咂摸着李纳斯的故事背后的含义。不知是谁,在烤蜀葵的当口抬起头来,问了一个笨问题:你们是怎么想起用企鹅来做Linux风靡全球的形象标识的?“这是我的主意。”塔芙说道,“因为人们总是在问,‘难道你们不该做个标识吗?’所以李纳斯才在这方面动起了脑筋。Linux的各公司都有他们各自的标识,其中有一家用的是一个粉色三角,但我知道这个标识早已被同性恋者们相当广泛地用上了。我就把这个消息告诉了他。他说,他要找出一个优雅的、有亲和力的东西来做标识。”“我就想到了企鹅。李纳斯在澳大利亚的时候曾被一只动物园里的漂亮企鹅咬了一口。他喜欢逗弄小动物,总是爱把手探出去。那些企鹅大概有一英尺高,他刚好能把手探到笼子那儿摸着它们。他晃动着手指,扮成鱼的样子。企鹅被招了过来,咬了他一口:咳,这口感可不像是鱼。他虽然挨了企鹅的咬,可还是喜欢它们。我觉得他这辈子跟企鹅是没完了,只要一有机会,他就非去看企鹅不可。所以,当他在为找个标识而大伤脑筋的时候,我就提醒他,‘你这么喜欢企鹅,为什么不用企鹅来做标识呢?’他说,‘哦,让我想想。’”

Linux 标志来源说法之一。

如果你把更多的时间花在睡觉上,那的确会损失一些工作时间,但如果你的睡眠很充足,在不睡觉的情况下,你的头脑就比别人都要清醒。

这是真理。

你曾经思索过狗为什么那么喜爱人类吗?不是因为它们的主人每六个星期就带它们到整形师那里去一趟,也不是因为它们的主人偶尔会在人行道上捡起它们的粪便。狗喜欢人类是因为人类喜欢命令它们怎样去做,那是它们活着的一个(这一点非常重要,因为它们大部分都被阉割,所以它们已从繁衍下一代犬科动物的工作中被解脱出来。另外,它们对项圈下的交配也没有多少欲望)。作为一个人,你是狗群体的领导者,你告诉狗该怎样做。狗的情感服从于你的命令,而且它们喜欢那样。不幸的是,人类的性情也是如此。人们希望有人告诉他们该如何行动。这种倾向植根在我们的基因核里。任何社会性的动物都本性如此。所以,那些具有个人意识,敢于对别人说“不,我不遵循”的人就变成了领导者。要变为一名领导者并不很难(肯定如此。我不就变成其中一员了吗?)。那些没有这种信念的人,在某种程度上,更喜欢领导者替他们做出决策并告诉他们该怎么做。

不甘听人指挥的人,最后都成了领导别人的人。

当然,人们遵循他们所选出的领导者的吩咐去做是正确的。我争论的并不是这一点,我所要说的是,不论领导者还是跟从者,都想把他们自己的想法强加于对方,正是这一点令人难以接受。这不仅令人沮丧而且可怕。令人沮丧的是人们会盲目服从任何事物,其中包括服务我;而令人可怕的是,人们希望把他们的盲从心理强加于他人,当然也包括强加于领导者。

不仅自己盲从别人,也希望别人和自己一样盲从别人。

他妈的,如果由于我这家伙出什么事的话,将会有上百万的电脑呆子们来找我的麻烦。

哈哈!

那么,社会为什么要进化?其驱动因素是什么?技术的发展驱动着社会前进这一观点大家能够达到共识吗?是否真的是蒸汽机的发明使欧洲开始进入工业社会,并最终通过诺基亚和移动电话将我们带入了信息社会?看起来那就是哲学家的看法,他们的兴趣主要集中于技术是如何改变社会的。而我,作为一名技术专家,知道技术是不能够驱动任何事物的。是社会在改变着技术而不是相反。技术仅仅是限定了我们所能够做的事物的边界,以及能够以多大的成本来做。

技术对社会产生影响,还是社会允许技术发挥作用?

技术,就像它所创造的设备一样,至少迄今为止是天生愚蠢的。它之所以令人感兴趣的是仰仗着你所能够用它来实现的东西,它背后的驱动力实际上是人类的需求和兴趣。

人类的需求和兴趣,决定了技术的发展方向。