成為一名黑客的基本要求

1、黑客的精神態(tài)度是很重要的,但技術(shù)則更是重要。黑客的態(tài)度雖然是無(wú)可取代,隨著新科技的發(fā)明和舊技術(shù)的取代,這些工具隨時(shí)間在慢慢的改變。例如:以往總是會(huì)學(xué)會(huì)用機(jī)器碼寫(xiě)程序,直到最近我們開(kāi)始使用HTML。不過(guò),在1996年末,當(dāng)然,這是基礎(chǔ)的hacking技能。在1997年,理所當(dāng)然的,你必須學(xué)會(huì)C。 但,如果你只是學(xué)一種語(yǔ)言,那么你不能算是一位黑客,了不起只能算是一個(gè)programmer。除此,你還必須學(xué)會(huì)學(xué)會(huì)以獨(dú)立于任何程序語(yǔ)言之上的概括性觀念來(lái)思考一件程序設(shè)計(jì)上的問(wèn)題。要成為一位真正的黑客,你必須要能在幾天之內(nèi)將manual內(nèi)容和你目前己經(jīng)知道的關(guān)連起學(xué)會(huì)一種新的語(yǔ)言。也就是說(shuō),你必會(huì)學(xué)還了C之外的東西,你至少還要會(huì)LISP或Perl(Java也正在努力的擠上這個(gè)名單; 譯者注: 我很懷疑這份名單)。除了幾個(gè)重要的hacking常用語(yǔ)言之外,這些語(yǔ)言提供你一些不同的程序設(shè)計(jì)途徑,并且讓你在好的方法中學(xué)習(xí)。

  程序設(shè)計(jì)是一種復(fù)雜的技術(shù),我沒(méi)辨法在這提供完整的學(xué)習(xí)步驟。但是我能告訴你一些在書(shū)本上和課堂上所沒(méi)有的東西(有很多,幾乎全部最好的黑客們都是自習(xí)而來(lái)的)。(a) 讀別人的程序碼;(b)寫(xiě)程序,這兩項(xiàng)是不錯(cuò)的方法。學(xué)習(xí)寫(xiě)程序就像在學(xué)習(xí)寫(xiě)一種良好的自然語(yǔ)言,最好的方法是去看一些專(zhuān)家們所寫(xiě)的東西,然后寫(xiě)一些你自己的東西,然后讀更多,再寫(xiě)更多。然后一直持續(xù),一直到你發(fā)展出一種屬于自己的風(fēng)格和特色。要找到好的程序碼來(lái)看是很一件很困難的事,因?yàn)椋瑢?duì)菜鳥(niǎo)黑客們而言,適于供他們閱讀和努力的大型程序的source數(shù)量很少。但這事己有了戲劇性的變化了; 現(xiàn)在免費(fèi)的供應(yīng)的軟件、程序設(shè)計(jì)工具和操作系統(tǒng)(大都公開(kāi)提供 source,而且全都是由黑客們寫(xiě)成的)到處可看。進(jìn)入下一個(gè)主題。

  2、取得一個(gè)免費(fèi)的 UNIX,并學(xué)習(xí)使用和維護(hù)。我先假設(shè)你己經(jīng)有一部個(gè)人電腦或者是可以使用任何一部(現(xiàn)在的小孩子真幸福,可如此輕易的擁有 :-))。 取得黑客技巧的第一個(gè)步驟是取得一份Linux 或者一份免費(fèi)的 BSD-Unix,并將它安裝在自己的機(jī)器,并使之順利的運(yùn)作。沒(méi)錯(cuò),在這個(gè)世界上除了Unix之外,還有其它的操作系統(tǒng)。但是他們只提供bianry,你不能看到他們的程序碼,你也不能修改他們。想要在DOS或Windows或MacOS開(kāi)始hacking,無(wú)疑就是要你綁著枷鎖跳舞一樣。

  除此之外,Unix是Internet上的操作系統(tǒng)。當(dāng)你在不懂Unix的情況下學(xué)習(xí)使用Internet時(shí),你沒(méi)辨法在不懂Unix的情況下成為Internet的黑客。因?yàn)檫@個(gè)原故,現(xiàn)在的黑客文化還是很牢固的以Unix為中心。(這并不完全是正確的,而且有些活在舊時(shí)代的黑客甚至也不喜歡這種情形,但是Unix和Internet之間的共生共成己經(jīng)到了牢不可破的地步,即使是Microsoft的大塊肌肉也沒(méi)能在上面留下明顯的傷痕。) 因些,把Unix裝起來(lái)吧! (我自己是喜歡Linux,但是還有其它的東東可用。) 學(xué)習(xí)它,讓它運(yùn)作起來(lái),讓它陪你努力精進(jìn)。 用他向整個(gè)Internet喊話(huà)。看程序碼,改程序。

  有一天你成為一位高竿的黑客,你回頭往后看時(shí)會(huì)發(fā)現(xiàn),你得到比Microsoft操作系統(tǒng)所能提供的還要好的程序設(shè)計(jì)工具(包括 C,Lisp和 Perl)。而且得到快樂(lè),并學(xué)到比共生共成己經(jīng)到了牢不可破的地步,即使是Microsoft的大塊肌肉也沒(méi)能在上面留下明顯的傷痕。) 因些,把Unix裝起來(lái)吧! (我自己是喜歡Linux,但是還有其它的東東可用。) 學(xué)習(xí)它,讓它運(yùn)作起來(lái),讓它陪你努力精進(jìn)。用他向整個(gè)Internet喊話(huà)。 看程序碼,改程序。有一天你成為一位高竿的黑客,你回頭往后看時(shí)會(huì)發(fā)現(xiàn),你得到比Microsoft操作系統(tǒng)所能提供的還要好的程序設(shè)計(jì)工具(包括 C,Lisp和 Perl)。而且得到快樂(lè),并學(xué)到比你想像中的還要多的知識(shí)。關(guān)于學(xué)習(xí)Unix,在Loginataka有更多的資料。(http://www.ccil.org/~esr/faqs/loginataka。)
看一下Linux distribution的目錄或 Linux CD,并把自己交付給它。

  3、學(xué)習(xí)使用World Wide Web并學(xué)會(huì)寫(xiě) HTML。

  在黑客文化創(chuàng)造出來(lái)的東西,大多在他們的活動(dòng)范圍外被使用著,如,在工廠和辨公室或大學(xué)被漠漠的使用著。但Web是一個(gè)很大的例外,這個(gè)黑客眼中的大玩具甚至還被政客們接受,并巧巧的在改變這個(gè)世界。因此(還有很多好的理由),你必須學(xué)習(xí)Web。并不只是學(xué)習(xí)使用browser(這太容易了)而己,還要學(xué)會(huì)寫(xiě)HTML這個(gè)Web的標(biāo)簽語(yǔ)言。如果你不知道如何設(shè)計(jì)程序,寫(xiě)HTML也可以給一些習(xí)慣上的幫助。嗯!! 建立home page吧! 不過(guò),有一個(gè)home page 并沒(méi)任何特別之處能讓你成為一位黑客。Web上到處都是home page,而且大部份都沒(méi)什么重點(diǎn),沒(méi)什么內(nèi)容的爛泥 -- 很好看的爛泥巴,但是看起來(lái)都一樣,差不多。

  4、至少學(xué)會(huì)以下的其中兩種:

  一、網(wǎng)站服務(wù)器程序ASP、PHP、CGI、JSP

  我個(gè)人認(rèn)為CGI是最難學(xué)的其中一種。

  二、程序語(yǔ)言:C語(yǔ)言、C++、VB、JAVA、PERL、DELPHI、匯編語(yǔ)言

  不過(guò)我認(rèn)為C語(yǔ)言的通用性最好,可以跨平臺(tái)(操作系統(tǒng))使用。

  還要試著自己寫(xiě)程序、開(kāi)發(fā)軟件等工作。

  三、數(shù)據(jù)庫(kù)管理軟件:MYSQL、SQL、FOXPRO……等。

  四、幾種常用的操作系統(tǒng):WIN98、WIN2000、WINNT、WINXP、UNIX、LINUX、要是能學(xué)到UNIX那是最好不過(guò)的了。最最基本的WIN2K、WINNT也要學(xué)會(huì)吧。

北大青鳥(niǎo)網(wǎng)上報(bào)名
北大青鳥(niǎo)招生簡(jiǎn)章