如何成为一个Hacker Eric.Raymond

galen_wang 2005-10-18 04:54:45
为什么会有这份文档?
作为 Jargon File 的编辑和一些其他有名的类似性质文章的作者,我经常收到充满热情的网络新手的email提问(确实如此) “我如何才能成

为一名出色的黑客?”非常奇怪的是似乎没有任何的FAQ或者Web形式的文档来说明这个十分重要的问题,因此我写了一份。

如果你现在读的是这份文档的离线拷贝,那么请注意当前最新版本(英文版)在 http://www.tuxedo.org/~esr/faqs/hacker-howto.html可以

得到。

注意:在这份文档最后有 FAQ(常问问题解答)。请在向我提出任何关于这份文档的疑问之前读两遍。

目前这份文档有很多翻译版本: 保加利亚语, 简体中文, 繁体中文, 丹麦语, 荷兰语, 法语, 德语, 匈牙利语, 印尼语, 日语, 朝

鲜语, 葡萄牙语, 俄语及 瑞典语。注意由于这份文档时有修正,所以以上翻译版本可能有不同程度的过时。


--------------------------------------------------------------------------------

什么是黑客?
Jargon File 包含了一大堆关于“hacker”这个词的定义,大部分与技术高超和热衷解决问题及超越极限有关。但如果你只想知道如何 成为

一名黑客,那么只有两件事情确实相关。

这可以追溯到几十年前第一台分时小型电脑诞生, ARPAnet 实验也刚展开的年代,那时有一个由程序设计专家和网络名人所组成的, 具有分享

特点的文化社群。这种文化的成员创造了 “hacker” 这个名词。黑客们建立了 Internet。黑客们发明出了现在使用的 UNIX 操作系统。黑客

们使 Usenet 运作起来, 黑客们让 WWW 运转起来。如果你是这个文化的一部分,如果你对这种文化有所贡献,而且这个社群的其它成员也认

识你并称你为 hacker, 那么你就是一位黑客。

黑客精神并不仅仅局限在软件的黑客文化中。有人用黑客态度对待其它事情,如电子学和音乐—— 事实上,你可以在任何最高级别的科学和艺

术活动中发现它。精于软件的黑客赞赏这些在其他领域的同类并把他们也称作黑客—— 有人宣称黑客天性是绝对独立于他们工作的特定领域的

。 但在这份文档中,我们将注意力集中在软件黑客的技术和态度,以及发明了“黑客”一词的以共享为特征的文化传统之上。

有一群人大声嚷嚷着自己是黑客,但他们不是。他们(主要是正值青春的少年)是一些蓄意破坏计算机和电话系统的人。真正的黑客把这些人

叫做“骇客”(cracker),并不屑与之为伍。多数真正的黑客认为骇客们又懒又不负责任,还没什么大本事。专门以破坏别人安全为目的的行为

并不能使你成为一名黑客, 正如用铁丝偷开走汽车并不能使你成为一个汽车工程师。不幸的是,很多记者和作家往往错把“骇客”当成黑客;

这种做法一直使真正的黑客感到恼火。

根本的区别是:黑客创造东西,骇客搞破坏东西。

如果你想成为一名黑客,请接着读下去。如果你想做一个骇客,去读 alt.2600 新闻组,并在意识到你并不像自己想象的那么聪明后去坐五到

十次监狱。关于骇客,我只想说这么多。


--------------------------------------------------------------------------------

黑客应有的态度
黑客们解决问题,建设事物,同时他们崇尚自由和无私的双向帮助。要被他人承认是一名黑客,你的行为得体现出你好像具备了这种态度一般

。而要想做得好象你具备这种态度一般,你就得切切实实坚持它。

但是如果你认为培养黑客态度只是一条在黑客文化圈中得到承认的路子,那就大错特错了。成为具备这些特质的这种人对 你自己非常重要——

有助于你学习,及给你提供源源不断的动力。同所有创造性的艺术一样,成为大师的最有效方法就是模仿大师的精神—— 不仅从智力上,也要

从感情上进行模仿。

或许, 下面这首现代的禅诗很好的阐述了这个意思:

To follow the path:(沿着这样一条道路:)
look to the master,(寻找大师,)
follow the master,(跟随大师,)
walk with the master,(与大师通行,)
see through the master,(洞察大师,)
become the master.(成为大师。)

嗯,如果你想成为一名黑客,反复读下面的事情直至你相信它们:

--------------------------------------------------------------------------------

1. 世界充满了待解决的迷人问题。
做一名黑客会有很多乐趣,但却是要费很多气力方能得到的乐趣。 这些努力需要动力。成功的运动员从锻炼身体、超越自我极限的愉悦中得到

动力。同样,做黑客,你得能从解决问题,磨练技术及锻炼智力中得到基本的乐趣。

如果你还不是天生的这类人又想做黑客,你就要设法成为这样的人。否则你会发现,你的黑客热情会被其他分心的事物吞噬掉——如金钱、性

和社会上的虚名。

(同样你必须对你自己的学习能力建立信心——相信尽管当你对某问题近乎一无所知,但只要你一点一点地试验、学习,最终会掌握并解决它

。)


--------------------------------------------------------------------------------



...全文
197 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
galen_wang 2005-10-18
  • 打赏
  • 举报
回复

风格的意义
重申一下,作为一名黑客,你必须进入黑客精神之中。当你不在计算机边上时,你仍然有很多对黑客工作有帮助的事情可做。它们并不能替代

真正的编程(没有什么能),但很多黑客都那么做,并感到它们与黑客的本质存在某些基本的连系。


学会流畅地用母语写作。尽管程序员不能写好文章的错误看法相当普遍,但是有令人惊讶数目的黑客(包括所有我知道的最棒的)都是不错的

作家。

阅读科幻小说。参加科幻小说讨论会。(一个碰到黑客和未来会成为黑客的人的好方法)

学禅,并且/或者练功习武。(精神修炼看来是惊人相似。)

练就能分析音乐的听觉,学会鉴赏特别的音乐。学会玩某种乐器,或唱歌。

提高对双关语、文字游戏的鉴赏能力。

这些事情,你已经做的越多,你就越是天生做黑客的材料。至于为什么偏偏是这些事情,原因并不完全清楚,但它们都涉及用到左-右脑能力

的综合,这似乎是关键所在(黑客们既需要清晰的逻辑思维,有时又需要偏离逻辑跳出问题的表象)。

最后,还有一些不要去做的事情。


不要使用愚蠢的,哗众取宠的ID或昵称。

不要卷入Usenet(或其他地方的论坛)的骂战。

不要自称为“cyberpunk(网络叛客)”,也不要浪费时间和那些人打交道。

不要让你寄出的Email或张贴的帖子充满错误的拼写和乱七八糟的语法。

做以上的事情,只会招来嘲笑。黑客们个个记忆超群—— 你将需要数年的时间让他们忘记你犯下的错误。

网名的问题值得深思。将身份隐藏在虚假的名字后是骇客、解密者、d00dz 及其他低等生物幼稚愚蠢的行为特点。黑客不会做这些事;他们对

他们所作的感到骄傲,而且乐于人们将作品与他们的 真名相联系。因此, 若你现在用假名,放弃它。在黑客文化里它会令你你失败的。


--------------------------------------------------------------------------------

其它资源
Peter Seebach 维护着一个非常好的 Hacker FAQ,专给那些不懂如何与黑客打交道的经理看的。如果Peter的站点不能访问,下面这个 Excite

搜索应该有一份拷贝。

我也著有 黑客文化简史。

我写了一份 大教堂与市集,对于Linux及开放源代码文化现象有详细的解释。我也在这个话题上进一步阐述导致的结局—— 开拓智域。

Rick Moen写了一份很好的关于 如何运转一个Linux用户组的文档。

我和Rick Moen合作完成了另一份关于 提问的智慧的文章,可以让你事半功倍的获得帮助。

如果你想知道PC、UNIX及Internet基本概念和工作原理,参考 The Unix and Internet Fundamentals HOWTO。

当你释放出一个软件或为其打补丁,试着按 软件发行惯例 HOWTO去做。(以上的提到的文章的中文版大多都可以在www.aka.org.cn和

www.linuxforum.net找到。)


galen_wang 2005-10-18
  • 打赏
  • 举报
回复
想知道更多关于学习Unix的信息,访问 The Loginataka。

想知道如何得到一份Linux,访问 我在哪里可以获得Linux。(译者:对于中文读者来讲,最简单的方式未过于前往附近的D版/正版光盘店。)

你可以在 www.bsd.org找到BSD Unix的求助及其他资源。

我有写一篇关于 Unix和Internet基础的入门文章。

(注:如果你是一个新手,我不推荐自己独立安装Linux或者BSD。安装Linux的话,寻求本地Linux用户组的帮助;或联系 Open Projects

Network。 LISC维护着一些 IRC频道,在那里你可以获得帮助。)


--------------------------------------------------------------------------------

3. 学会如何使用WWW和写HTML
黑客文化建造的大多东西都在你看不见的地方发挥着作用,帮助工厂、办公室和大学正常运转,表面上很难看到它对非黑客的普通人的生活的

影响。Web是一个大大的例外。即便政客也同意,这个巨大耀眼的黑客玩具正在改变整个世界。单是这个原因(还有许多其它的),你就需要学

习掌握Web。

这并不是仅仅意味着如何使用浏览器(谁都会),而是要学会如何写HTML, Web的标记语言。如果你不会编程,写HTML会教你一些有助于学习

的思考习惯。因此,先完成一个主页。(网上有很多好的教程; 这是一个。)

但仅仅拥有一个主页不能使你成为一名黑客。 Web里充满了各种网页。大多数是毫无意义的,零信息量垃圾——界面时髦的垃圾,注意,垃圾

的水准都类似(更多信息访问 The HTML Hell Page)。

要想有价值,你的网页必须有内容—— 它必须有趣或对其它黑客有帮助。这是下一个话题所涉及的……


--------------------------------------------------------------------------------

4. 如果你不懂实用性的英语,学习吧。
作为一个美国人和一个以英语为母语的人,我以前很不情愿提到这点,免得成为一种文化上的帝国主义。但相当多以其他语言为母语的人一直

劝我指出这一点,那就是英语是黑客文化和Internet的工作语言,你需要懂得以便在黑客社区顺利工作。

这一点千真万确。大概1991年的时候我就了解到许多黑客在技术讨论中使用英语,甚至当他们的母语都相同,英语对他们而言只是第二语言的

时候;据我知道的报导,当前英语有着比其他语言丰富得多的技术词汇,因此是一个对于工作来说相当好的工具。基于类似的原因,英文技术

书籍的翻译通常不令人满意(如果有翻译的话)。

Linus Torvalds,一个芬兰人,用英语注释他的代码(很明显这对他来说不是凑巧)。他流利的英语成为他能够管理全球范围的Linux开发人员

社区的重要因素。这是一个值得学习的例子。


--------------------------------------------------------------------------------

黑客文化中的地位
象大部分不涉及金钱的文化一样,黑客王国靠声誉运转。你设法解决有趣的问题,但它们到底多有趣,你的解法有多好,是要由那些和你具有

同样技术水平的人或比你更厉害的人去评判的。

相应地,当你在玩黑客游戏时,你得认识到你的分数主要靠其他黑客对你的技术的评价给出(这就是为什么只有在其它黑客称你为黑客时,你

才算得上是一名黑客)。这个事实常会被黑客是一项孤独的工作这一印象所减弱;也会被另一个黑客文化的禁忌所减弱(现在逐渐减弱但仍强

大):拒绝承认自我或外部评估与一个人的动力有关系。

特别地,黑客王国被人类学家们称为一种奉献文化。 在这里你不是凭借你对别人的统治来建立地位和名望,也不是靠美貌,或拥有其他人想要

的东西,而是靠你的奉献。尤其是奉献你的时间,你的创造和你的技术成果。

要获得其他黑客的尊敬,基本上有五种事情你可以干:


--------------------------------------------------------------------------------

1. 写开放源代码软件
第一个(也是最集中的和传统的)是写些被其他黑客认为有趣或有用的程序,并把程序源代码提供给整个黑客文化使用。

(过去我们称之为“free software (自由软件)”,但这却使很多不知 free 的精确含义的人感到困惑。现在我们很多人,根据搜索引擎网

页内容分析至少有2:1的比率,使用“ open-source”software(开放源代码软件)这个词)。

黑客王国里最受尊敬的偶像是那些写了大型的、好用的、具有广泛用途的软件,并把它们公布出去,使得每人都在使用他软件的人。


--------------------------------------------------------------------------------

2. 帮助测试并调试开放源代码软件
黑客也尊敬那些使用、测试开放源代码软件的人。在这个并非完美的世界上,我们不可避免地要花大多数的开发时间在调试阶段。 这就是为什

么任何有头脑的开放源代码的作者都会告诉你好的beta测试员(知道如何清楚描述出错症状,很好地定位错误,能忍受快速发布中的bug,并且

愿意使用一些简单的诊断工具)象红宝石一样珍贵。 甚至他们中的一个能判断出哪个测试阶段是延长的,哪个是令人精疲力尽的噩梦,哪个只

是一个有益的小麻烦。

如果你是个新手,试着找一个你感兴趣的正在开发的程序,做一个好的beta测试员。你会自然地从帮着测试,进步到帮着抓臭虫,到最后帮着

改程序。你会从中学到很多,并且与未来会帮你的人结下友谊。


--------------------------------------------------------------------------------

3. 公布有用的信息
另一个好事是收集整理有用有趣的信息做成网页或文档如FAQ列表,且让他们容易获得。

主要技术FAQ的维护者受到几乎同其他开放源代码的作者一样多的尊敬。


--------------------------------------------------------------------------------

4. 帮助维护基础设施的运转
黑客文化(还有Internet的工程方面的发展,就此而言)是靠自愿者运转的。要使Internet能正常工作,就要有大量枯燥的工作不得不去完成

——管理mail list,新闻组,维护大型软件库,开发RFC和其它技术标准等等。

做这类事情的人会得到很多尊敬,因为每人都知道这些事情是十分花时间又不象编程那样好玩。做这些事情需要奉献精神。


--------------------------------------------------------------------------------

5. 为黑客文化本身服务
最后,你可以为这个文化本身做宣传(例如,象我这样,写一个“如何成为黑客”的正面的教程 :-) )(译者:不知道Barret把它翻成中文算

不算?)。这并非一定要在你已经在这个圈子呆了很久,因以上四点中的某点而出名,有一定声誉后才能去做。

黑客文化没有领袖。精确地说,它确实有些文化英雄、部落长者、历史学家和发言人。若你在这圈内呆的够长,你或许成为其中之一。记住:

黑客们不相信他们的部落长者的自夸的炫耀,因此大举追求这种名誉是危险的。与其奋力追求,不如先摆正自己的位置等它自己到你的手中—

—那时则要做到谦虚和优雅。


--------------------------------------------------------------------------------

黑客和书呆子(Nerd)的联系
同流行的迷思相反,做一名黑客并不一定要你是个书呆子。但它确实有帮助,而且许多黑客事实上是书呆子。做一个深居简出的人有助于你集

中精力进行十分重要的事情,如思考和编程。

因此,很多黑客都愿意接受“书呆子”这个外号,更有甚者使用更尖刻的“geek(怪人)”一词并引以为豪—— 这是一种宣布他们独立于主流

社会的声明方式。访问 The Geek Page 参加更多的讨论。

如果你能集中足够的精力做好黑客工作同时还能有正常的生活,这很好。现在作到这一点比我在1970年代是新手的时候要容易的多;如今主流

文化对技术怪人要友善的多。甚至有越来越多的人意识到黑客通常是很好的恋人和配偶的材料。

如果你因为生活上不如意而迷上做黑客,那也没什么——至少你不会分神了。或许以后你会找到自己的另一半。


--------------------------------------------------------------------------------

590

社区成员

发帖
与我相关
我的任务
社区描述
提出问题
其他 技术论坛(原bbs)
社区管理员
  • community_281
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧