为什么会有这份文档?
作为 Jargon File (译注:黑客行话大全)的编辑和几份其他类似性质知名文章的作者,我经常收到充满热情的网络新手的电子邮件询问:“我如何才能成为一名出色的 Hacker?”早在 1996 年,我注意到网 上似乎没有任何的 FAQ 或者 Web 形式的文档提到及这个至关重要的问题,因此我写了这份文档。现在,很多 Hacker 都认为这是一篇权威性文档,那我也姑且这么认为吧。不过,我不认为 我是这个话题的绝对权威;如果你不喜欢这篇文档,你也可以自己写一份。
如果你读到的是这份文档的离线拷贝,你可以在 ~esr/faqs/hacker-howto.html 读到最新版本。
注意:文档的结尾有一份 FAQ(常见问题解答)。如果你想通过邮件询问我关于这份文档的 问题,请先读这份 FAQ 看看能否找到答案――一遍不行就读两遍。
目前这份文档有很多翻译版本:阿拉伯语、白俄罗斯语、丹麦语、 荷兰语 、爱沙尼亚语、德语、希腊语、意 大利语 、希伯来语、 挪威语 、葡萄牙语(巴西)、罗马尼亚语 、西班牙语、土耳其语、瑞典语 。注意由于这份文档时有修正,所以以上翻译版本可能有不同程度的过时。
装 饰本文的“五点九宫格”图像被称作“glider”,在一种叫做Life的数学模型中,这个简单的样本有一些异乎寻常的属性,多年以来 Hacker 们都为此着迷。我认为这个图像是一个很好的黑 客徽标:它显得抽象而且神秘,而且像是一扇大门,通向一个截然不同的有其内在逻辑的世界。你可以阅读更多关于Glider 徽标 的内容。
什么是黑客?
Jargon File讲了一堆关于“hacker”这个词的定义,大部分是关于“技术高超”、“热衷解决问题”、以及“超越极限”的内容。但如果你只想知道如何成为一名黑客的话,真正重要的只有两条。
这可以追溯到几十年前,那时候第一代分时微型计算机才刚刚诞生, 而 ARPAnet 的实验也才刚展开。那时的编程专家和组网高手建立了一个具有共享性质的文化社群, “hacker” 这个名词就是其中的成员创造的。黑客们建立了互联网,黑客们让 Unix 操作系统演化到现在的模样,黑客们经营着 Usenet,黑客们让万维网运转起来。如果你是这个文化的一部分,如果你对这种文化有所贡献,而且这个社群的其它成员也认识你并称你为 hacker,那么你就是一名黑客。
黑客的思维方式并不仅仅局限在软件黑客的文化圈内。也有人用黑客态度对待其它事情,如电子和音乐方面――其实你可以在任何最高级别的科学和艺术活动中发现它的身影。软件黑客对这些领域的践行者尊重有加,并把他们也称作黑客――有人宣称黑客天性是绝对独立于他们工作的特定领域的。但在这份文档中,我们将集中书写在软件黑客的技术和态度,以及发明了“黑客”一词的、以共享为特征的文化传统。
有另外一群人大声嚷嚷着自己是黑客,但他们根本不是。他们主要由青少年男性构成,是一些蓄意破坏计算机和电话系统的人。真正的黑客把这些人叫做“骇客”(cracker),并不屑与之为伍。黑客们通常认为他们是一群懒散、没有责任心、而且不是很聪明的人。会通过热接线发动汽车并不意味着你是一个汽车工程师。一样的道理,会破坏安全也不意味着你是一名黑客,不幸的是,很多记者和作家往往错把“骇客”当成黑客;这种做法一直使真正的黑客感到恼火。
根本的区别是:黑客搞建设,骇客搞破坏。
如果你想成为一名黑客,请接着读下去。如果你想做一个骇客,就去读 alt.2600 新闻组吧,顺便准备好去蹲个五到十年的监狱,而且最终你会意识到你并不像自己想象的那么聪明。
关于骇客,我能说的只有这些。
黑客的态度
黑客们解决问题,建设事物,同时他们信仰自由和无私的双向帮助。要想作为一名黑客被社群认同,你需要体现出自己已经具备了这种态度。而要体现出这种态度,你就得真正相信和赞同这种态度。
但是,如果你认为培养黑客态度只是进入黑客文化圈的敲门砖,那就大错特错了。这种态度将有助于有助于你的学习,并且能为你提供源源不断的动力,所以它对你而言是至关重要的。和所有创造性的艺术一样,成为大师的最有效方法,就是模仿大师的精神――智力上的模仿还不够,还要从感情上进行模仿。