您现在的位置: 主页 > QQ黑客资讯 > QQ黑客技术 > 文章内容

做黑客必须进入黑客精神

作者: QQ黑客 来源:未知 时间: 2015-08-22 阅读:
------基本黑客技术

黑客态度是重要的,但技术更加重要。态度无法替代技术,在你被别的黑客称为黑
客之前,有一套基本的技术你必须掌握。 这套基本技术随着新技术的出现和老技
术的过时也随时间在缓慢改变。例如,过去包括使用机器码编程,而知道最近才包
括了HTML语言。但现在明显包括以下技术:


1 学习如何编程

这当然是最基本的黑客技术。如果你还不会任何计算机语言,我建议你从Python开
始。它设计清晰,文档齐全,对初学者很合适。尽管是一门很好的初级语言,它不
仅仅只是个玩具。它非常强大,灵活,也适合做大型项目。

但是记住,如果你只会一门语言,你将不会达到黑客所要求的技术水平,甚至也不
能达到一个普通程序员的水平---你需要学会如何以一个通用的方法思考编程问题
,独立于任何语言。要做一名真正的黑客,你需要学会如何在几天内通过一些手册
,结合你现在所知,迅速掌握一门新语言。这意味着你应该学会几种不同的语言。

如果要做一些重要的编程,你将不得不学习C语言,Unix的核心语言。其他对黑客
而言比较重要的语言包括Perl和LISP。 Perl很实用,值得一学;它被广泛用于活
动网页和系统管理,因此即便你从不用Perl写程序,至少也应该能读懂它。 LISP
值得学习是因为当你最终掌握了它你会得到丰富的经验;这些经验使你在以后的
日子里成为一个更好的程序员,即使你实际上可能很少使用LISP本身。

当然,实际上你最好四种都会。 (Python, C, Perl, and LISP). 除了是最重要的
四种基本语言,它们还代表了四种非常不同的编程方法,每种都会让你受益非浅。


这里我无法完整地教会你如何编程---这是个复杂的活儿。但我可以告诉你,书本
和课程也无济于事。几乎所有最好的黑客都是自学成材的。真正能起作用的就是
去亲自读代码和写代码。

学习如何编程就象学习用自然语言写作一样。最好的做法是读一些大师的名著,
试着自己写点东西,再读些,再写点,又读些,又写点....如此往复,直到你达
到自己在范文中看到的简洁和力量。

过去找到好的代码去读是困难的,因为很少有大型程序的可用源代码能让新手练
手。这种状况已经得到了很大的改善;现在有很多可用的开放源码软件,编程工
具和操作系统(全都有黑客写成)。这使我们自然地来到第二个话题...


2 得到一个开放源码的Unix并学会使用、运行它。

我假设你已经拥有了一台个人计算机或者有一个可用的( 今天的孩子们真幸福
:-) )。新手们最基本的一步就是得到一份Linux或BSD-Unix,安装在个人计算机
上,并运行它。
当然,这世界上除了Unix还有其他操作系统。但它们都是以二进制形式发送的---
你无法读到它的源码,更不可能修改它。尝试在DOS或Windows的机器上学习黑客技
术,就象是在腿上绑了铁块去学跳舞。

除此之外,Unix还是Internet的操作系统。你可以不知道Unix而学会用Internet,
但不懂它你就无法成为一名Internet黑客。因为这个原因,今天的黑客文化在很大
程度上是以Unix为中心的。(这点并不总是真的,一些很早的黑客对此很不高兴,
但Unix和Internet之间的共生关系已是如此之强,甚至连微软也无可奈何)

So,装一个Unix---我个人喜欢Linux,不过也有其他选择。(你也可以在同一台机
器上同时运行DOS,Windows和Linux)学会它。运行它。用它跟Internet对话。读它
的代码。试着去修改他。你会得到比微软操作系统上好的多的编程工具(包括C,
Lisp, Python, and Perl),你会得到乐趣,并将学到比你想象的更多知识。

关于学习Unix的更多信息,请看 The Loginataka.

要得到Linux,请看: 哪里能得到 Linux.

3 学会如何使用WWW和写HTML

大多黑客文化建造的东西都在你看不见的地方发挥着作用,帮助工厂、办公室和大
学正常运转,表面上很难看到它对他人的生活的影响。Web是一个大大的例外。即
便政客也同意,这个巨大而耀眼的黑客玩具正在改变整个世界。单是这个原因(
还有许多其它的), 你就需要学习如何掌握Web。

这并不是仅仅意味着如何使用浏览器(谁都会),而是要学会如何写HTML,Web的
标记语言。如果你不会编程,写HTML会教你一些有助于学习的思考习惯。因此,先
建起自己的主页。

但仅仅建一个主页也不能使你成为一名黑客。 Web里充满了各种网页。多数是无意
义的,零信息量垃圾。

要想有价值,你的网页必须有内容---必须有趣或对其它黑客有用。这样,我们来
到下一个话题....


------黑客文化中的地位


象大部分不涉及金钱的文化一样,黑客王国的运转靠声誉维护。你设法解决有趣的
问题,但它们到底多有趣,你的解法有多好,是要有那些和你具有同样技术水平的
人或比你更牛的人去评判的。

相应地,当你在玩黑客游戏时,你知道,你的分数要靠其他黑客对你的技术的评估
给出。(这就是为什么只有在其它黑客称你为黑客是,你才算得上是一名黑客)这
个事实常会被黑客是一项孤独的工作这一印象所减弱;它也会被另一个黑客文化的
禁忌所减弱(此禁忌的效力正在减弱但仍很强大):拒绝承认自我或外部评估是一
个人的动力。

特别地,黑客王国被人类学家们称为一种精英文化。在这里你不是凭借你对别人的
统治来建立地位和名望,也不是靠美貌,或拥有其他人想要的东西,而是靠你的奉
献。尤其是奉献你的时间,你的才智和你的技术成果。

要获得其他黑客的尊敬,你可以做以下五种事情:


1. 写开放源码的软件

第一个(也是最基本和传统的)是写些被其他黑客认为有趣或有用的程序,并把程
序的原代码公布给大家共享。
(过去我们称之为“自由软件-free software”,但这却使很多不知free的精确含
义的人感到不解。现在我们很多人使用“开放源码-open source”这个词)

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



2. 帮助测试并修改开放源码的软件

黑客们也尊敬也那些使用、测试开放源码软件的人。在这个并非完美的世界上,我
们不可避免地要花大量软件开发的时间在测试和抓臭虫阶段。 这就是为什么任何
开放源码的作者稍加思考后都会告诉你好的beta测试员象红宝石一样珍贵。 (他
知道如何清楚描述出错症状,很好地定位错误,能忍受快速发布的软件中的bug,
愿意使用一些简单的诊断工具) 甚至他们中的一个能判断出哪个测试阶段是延长
的、令人精疲力尽的噩梦,哪个只是一个有益健康的玩意儿。

如果你是个新手,试着找一个赶兴趣的正在开发的程序,作一个好的beta测试员。
从帮着测试,到帮着抓臭虫,到最后帮着改程序,你会不断进步。以后你写程序时
,会有别人来帮你,你就得到了你当初善举的回报。



3. 破解QQ聊天记录公布有用的信息

另一个好事是收集整理网页上有用有趣的信息或文档如FAQ。许多主要FAQ的维护者
和其他开放源码的作者一样受到大家的尊敬。


4.黑客 帮助维护基础设施的运转

黑客文化是靠自愿者运转的。要使Internet能正常工作,就要有大量枯燥的工作不
得不去完成----管理mail list,newsgroup,维护大量文档,开发RFC和其它技术
标准等等。做这类事情的人会得到很多人的尊敬,因为每人都知道这些事情是耗时
耗力的苦役,不象编码那样好玩。做这些事情需要毅力。

5. 为黑客文化本身服务

最后,你可以为这个文化本身服务(例如象我这样,写一个“如何成为黑客”的初
级教程 :-) )(hehe,象我这样把它翻成中文 :-) ) 这并非一定要在你已经在这
里呆了很久,精通所有以上4点,获得一定声誉后后才能去做。

黑客文化没有领袖。精确地说,它确实有些文化英雄和部落长者和历史学家和发言
人。若你在这圈内呆的够长,你或许成为其中之一。
记住:黑客们不相信他们的部落长者的自夸的炫耀,因此很明显地去追求这种名誉
是危险的。你必须具备基本的谦虚和优雅。

------黑客和怪人(Nerd)的联系

同流行的传说相反,做一名黑客并不一定要你是个怪人。然而,很多黑客都是怪
人。做一个出世者有助于你集中精力进行更重要的事情,如思考和编程。
因此,很多黑客都愿意接受“怪人”这个标签,更有甚者愿意使用“傻子(geek)”
一词并自以为豪---这是宣布他们与主流社会不合作的声明。

如果你能集中足够的精力来做好黑客同时还能有正常的生活,这很好。今天作到这
一点比我在1970年代是个新手是要容易的多。今天主流文化对技术怪人要友善的多
。甚至有更多的人意识到黑客通常更富爱心,是块很好的做恋人和配偶的材料。
更多信息见 Girl's Guide to Geek Guys.

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



------风格的意义

重申一下,做一名黑客,你必须进入黑客精神之中。当你不在计算机边上时,你仍
然有很多事情可做。它们并不能替代真正的编程(没有什么能替代编程),但很多
黑客都那么做,并感到它们与黑客精神存在一种本质的关联。

阅读科幻小说。参加科幻小说讨论会。(一个很好的寻找黑客的场合)
研究禅宗,或练功习武。
练就一双精确的耳朵,学会鉴赏特别的音乐。学会玩某种乐器,或唱歌。
提高对双关语的鉴赏。
学会流畅地用母语写作。(令人惊讶的时,我所知道的所有最棒的黑客,都是很不
错的作家)

这些事情,你做的越多,你就越适合做黑客。至于为什么偏偏是这些事情,原因并
不很清楚,但它们都涉及到了左-右脑的综合技巧,这似乎是关键所在。(黑客们
既需要清晰的逻辑思维,有时也需要强烈的跳出逻辑之外的直觉)

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

不要使用愚蠢的,过于哗众取宠的ID。
不要自称为网络崩客(punk) ,也不要对那些人浪费时间
不要寄出充满拼写和语法错误的email,或张贴错误百出的文章

做以上的事情,会使大大损害你的声誉。黑客们个个记忆超群---你将需要数年的
时间让他们忘记你的愚蠢。

------其它资源

Peter Seebach为那些不知如何同黑客打交道的经理们维护了一个非常精彩的黑客
FAQ。

The Loginataka 有许多关于如何正确培养一个Unix黑客的态度的材料。

我也曾写过一篇“黑客文化简史”。

我还写过另一篇文章,“大教堂与集市”,解释了许多Linux和开放源码文化的运
做原理。我还在它的续集“开拓智力疆域”一文中有更直接的论述。

------FAQ(常问问题解答)

问:你会教我如何做黑客吗?

自从第一次发布此页,我每周都会得到一些请求,要我“教会他如何做黑客”;遗
憾的是,我没有足够的时间和精力来做这个;我自己的编程项目已经占用了我110%
的时间。
甚至即便我想教你也不可能,黑客基本上是一项需要你自行修炼的的态度和技术。
你会发现即使真正的黑客想帮助你,如果你乞求他们填鸭一样教你的话,你不会赢
得他们的尊敬。
首先去学习。显示你在尝试,你能靠自己去学习。然后再去向黑客们请教问题。


问:你会帮我“黑”掉一个站点吗?或者教我怎么黑它?

No. 任何在读完FAQ后还问此问题人,都是愚不可及的家伙,即使有时间我也不会
理睬。 任何发给我的此类mail都会被忽略或被痛斥。

问:哪里能找到真正的可以与之交流的黑客?

最佳办法是就近参加一个Unix或Linux的用户组,参加他们的会议。

问:我该先学哪种语言?

HTML, 如果你还不会的话.
但它不是一个真正的编程语言。当你准备编程时,我建议你从 Python开始. 会有
很多人向你推荐Perl,它比Python还受欢迎,但却难学一些。

C 是非常重要的,但它却是最难学的。不要一开始就尝试学C。

Windows用户不要满足于 Visual Basic。 它会教给你坏习惯,而且它不可以移植,
只能在Windows下运行。避免它。


问:我需要什么样的机器配置?


答:过去个人电脑能力相当不够并且内存小,结果给黑客的学习过程设置 了人为的障碍。
不过一段时间以前开始就不是这样了;任何配置比一台 Intel 486DX50 好的 机器都有足
够的能力进行开发工作,X,及 Internet 通讯,同时你现在买的最小的磁盘 都大得富足
了。(依Barret之见,现在要至少Pentium 166MMX才够。)


选择用来学习的机器时重要的一点是注意配件是否是Linux兼容的(或BSD兼容,如果你选
择学 BSD)。同刚才提到的一样,大多数现在的机器都是符合的;唯一的值得注意的区域
在于 modem和打印机;有些具备为Windows设计的配件的机器不会在Linux下工作。


关于硬件兼容性有一个FAQ;最新版本在 这里。


问:我得因此憎恨和反对Microsoft吗?


答:不,你不必如此。不是因为Microsoft不令人讨厌,而是因为黑客文化早在 Microsoft
出现之前就存在了,且将在Microsoft成为历史后依然存在。 你耗费在憎恨Microsoft的任
何力气不如花在爱你的技术上。写好的代码—— 那会相当有效地打击Microsoft又不会让
你得到恶报应。


问:开放源码的自由软件不会使程序员饿肚子吗?

这似乎不大可能---到目前,开放源码软件产业创造了而不是消灭了大量工作机会。
如果写一个程序比不写一个程序只是个纯粹经济上的收益的话,无论它是否免费,
只要它被完成,程序员都会从中得到回报。而且,无论软件是由多么的free的方法
开发的,对更新的软件应用的需求总是会有的。

问:我从何学起?哪里有免费的Unix?

本页的其他地方指向最常用的免费Unix。要做一名黑客,你需要自立自强,以及自
我教育的能力。

现在开始吧......