《黑客與畫家》

《黑客與畫家》

《黑客與畫家:矽谷創業之父paul graham文集》是矽谷創業之父paul graham 的文集,主要介紹黑客即優秀程式設計師的愛好和動機,討論黑客成長、黑客對世界的貢獻以及程式語言和黑客工作方法等所有對計算機時代感興趣的人的一些話題。書中的內容不但有助於了解計算機編程的本質、網際網路行業的規則,還會幫助讀者了解我們這個時代,迫使讀者獨立思考。

基本信息

作者簡介

保羅·格雷厄姆,《黑客與畫家》一書的作者,矽谷創業之父。1964年,出生於匹茲堡郊區的一個中產階級家庭。父親是設計核反應堆的物理學家,母親在家照看他和他的妹妹。青少年時代,格雷厄姆就開始編程。但是,他還喜歡許多與計算機無關的東西,這在編程高手之中是很少見的。

保羅·格雷厄姆在康奈爾大學讀完本科,然後在哈佛大學獲得計算機科學博士學位。1995年,他創辦了Viaweb,幫助個人用戶在網上開店,這是世界上第一個網際網路應用程式。1998年夏天,Yahoo!公司收購了Viaweb,收購價約為5000萬美元。

此後,他架起了個人網站,在上面撰寫了許許多多關於軟體和創業的文章,以深刻的見解和清晰的表達而著稱,迅速引起了轟動。2005年,他身體力行,創建了風險投資公司Y Combinator,將自己的理論轉化為實踐,目前已經資助了80多家創業公司。現在,他是公認的網際網路創業權威。

圖書目錄

《黑客與畫家:矽谷創業之父paul graham文集》

1 為什麼書呆子不受歡迎 1

他們的心思在別的地方。

2 黑客與畫家 18

黑客也是創造者,與畫家、建築師、作家一樣。

3 不能說的話 34

如果你的想法是社會無法容忍的,你怎么辦?

4 良好的壞習慣 52

與其他美國人一樣,黑客的成功秘訣就是打破常規。

5 另一條路 59

網際網路軟體是微機誕生後的最大機會。

6 如何創造財富 90

致富的最好方法就是為社會創造財富。創造財富的最好方法就是創業。

7 關注貧富分化 111

“收入分配不平等”的危害,會不會沒有我們想的那樣嚴重?

8 防止垃圾郵件的一種方法 124

不久前,許多專家還認為無法有效地過濾垃圾郵件。本文改變了他們的想法。

9 設計者的品味 133

如何做出優秀的東西?

10 程式語言解析 148

.什麼是程式語言?為什麼它們現在很熱門?

11 一百年後的程式語言 156

一百年後,人類怎樣編程?為什麼不從現在開始就這樣編程呢?

12 拒絕平庸 169

別忘了你的對手與你一樣,能用任何想用的語言編寫網際網路軟體。

13 書呆子的復仇 180

在高科技行業,只有失敗者採用“業界最佳實踐”。

14 夢寐以求的程式語言 198

一種好的程式語言,是讓黑客可以隨心所欲使用的語言。

15 設計與研究 213

研究必須是“新”的,而設計必須是“好”的。

致謝 219

術語解釋 221

圖片授權說明 236

譯者序

你現在拿在手裡的,是一本非常重要、也非常獨特的書。

它的作者是美國網際網路界舉足輕重、有“創業教父”之稱的哈佛大學計算機博士保羅·格雷厄姆(Paul Graham)。本書是他的文集。

書中的內容並不深奧,不僅僅是寫給程式設計師和創業者的,更是寫給普通讀者的。作者最大的目的就是,通過這本書讓普通讀者理解我們所處的這個計算機時代。

1968年至1972年期間,美國出版過一本叫做《地球商品目錄》(Whole Earth Catalog)的雜誌,內容從植物種子到電子儀器,無所不包,出版目的據說是要幫助讀者“理解整個系統”。多年後,蘋果公司的總裁賈伯斯盛讚它“有點像印刷版的谷歌”。從某種意義上說,本書也是如此,作者試圖從許許多多不同的方面解釋這個時代的內在脈絡,揭示它的發展軌跡,幫助你看清我們現在的位置和將來的方向。

電子技術的發展,使得計算機日益成為人類社會必不可少的一部分。

每個人日常生活的很大一部分都花在與計算機打交道上面。家用電錶是智慧型的,通信網路是程控的,信用卡是聯網的,就連點菜都會用到電子選單。越來越多的跡象表明,未來的人類生活不僅是人與人的互動,而且更多的將是人與計算機的互動。

想要把握這個時代,就必須理解計算機。理解計算機的關鍵,則是要理解計算機背後的人。表面上這是一個機器的時代,但是實際上機器的設計者決定了我們的時代。程式設計師的審美決定了你看到的軟體界面,程式設計師的愛好決定了你有什麼樣的軟體可以使用。

我們的時代是程式設計師主導的時代,而偉大的程式設計師就是黑客。

本書就是幫助你了解黑客、從而理解這個時代的一把鑰匙。

在媒體和普通人的眼裡,“黑客”(hacker)就是入侵計算機的人,就是“計算機犯罪”的同義詞。但是,這並不是它的真正含義(至少不是原意),更不是本書所使用的含義。

要想讀懂這本書,首先就必須正確理解什麼是“黑客”。

為了把這個問題說清楚,有必要從源頭上講起。1946年,第一台電子計算機ENIAC在美國誕生,從此世界上一些最聰明、最有創造力的人開始進入這個行業,在他們身上逐漸地形成了一種獨特的技術文化。在這種文化的發展過程中,湧現了很多“行話”(jargon)。20世紀60年代初,麻省理工學院有一個學生團體叫做“鐵路模型技術俱樂部”(Tech Model Railroad Club,簡稱TMRC),他們把難題的解決方法稱為hack。

在這裡,hack作為名詞有兩個意思,既可以指很巧妙或很便捷的解決方法,也可以指比較笨拙、不那么優雅的解決方法。兩者都能稱為hack,不同的是,前者是漂亮的解決方法(cool hack或neat hack),後者是醜陋的解決方法(ugly hack或quick hack)。hack的字典解釋是砍(木頭),在這些學生看來,解決一個計算機難題就好像砍倒一棵大樹。那么相應地,完成這種hack的過程就被稱為hacking,而從事hacking的人就是hacker,也就是黑客。

從這個意思出發,hack還有一個引申義,指對某個程式或設備進行修改,使其完成原來不可用的功能(或者禁止外部使用者接觸到的功能)。在這種意義上,hacking可以與盜竊信息、信用卡欺詐或其他計算機犯罪聯繫在一起,這也是後來“黑客”被當作計算機入侵者的稱呼的原因。

但是,在20世紀60年代這個詞被發明的時候,“黑客”完全是正面意義上的稱呼。TMRC使用這個詞是帶有敬意的,因為在他們看來,如果要完成一個hack,就必然包含著高度的革新、獨樹一幟的風格、精湛的技藝。最能幹的人會自豪地稱自己為黑客。

這時,“黑客”這個詞不僅是第一流能力的象徵,還包含著求解問題過程中產生的精神愉悅或享受。也就是說,從一開始,黑客就是有精神追求的。自由軟體基金會創始人理察· 斯托爾曼說:“出於興趣而解決某個難題,不管它有沒有用,這就是黑客。”

根據理察· 斯托爾曼的說法,黑客行為必須包含三個特點:好玩、高智商、探索精神。只有其行為同時滿足這三個標準,才能被稱為“黑客”。另一方面,它們也構成了黑客的價值觀,黑客追求的就是這三種價值,而不是實用性或金錢。

1984年,《新聞周刊》的記者史蒂文· 利維出版了歷史上第一本介紹黑客的著作——《黑客:計算機革命的英雄》(Hackers: Heroes of the Computer Revolution)。在該書中,他進一步將黑客的價值觀總結為六條“黑客倫理”(hacker ethic),直到今天這幾條倫理都被視為這方面的最佳論述。

. (1) 使用計算機以及所有有助於了解這個世界本質的事物都不應受到任何限制。任何事情都應該親手嘗試。

(Access to computers—and anything that might teach you something about the way the world works—should be unlimited and total. Always yield to the Hands-On Imperative!)

(2) 信息應該全部免費。

(All information should be free.)

(3) 不信任權威,提倡去中心化。

(Mistrust Authority—Promote Decentralization.)

(4) 判斷一名黑客的水平應該看他的技術能力,而不是看他的學歷、年齡或地位等其他標準。

(Hackers should be judged by their hacking, not bogus criteria such as degrees, age, race, or position.)

(5) 你可以用計算機創造美和藝術。

(You can create art and beauty on a computer.)

(6) 計算機使生活更美好。

(Computers can change your life for the better.)

根據這六條“黑客倫理”,黑客價值觀的核心原則可以概括成這樣幾點:分享、開放、民主、計算機的自由使用、進步。

所以,“黑客”這個詞的原始含義就是指那些信奉“黑客倫理”而且能力高超的程式設計師。歷史上一些最優秀的程式設計師都是“黑客”。除了上文提到的理察·斯托爾曼,還包括Unix作業系統創始人丹尼斯·里奇和肯·湯普森,經典巨著《電腦程式設計藝術》的作者、史丹福大學計算機教授高德納,Linux作業系統創始人萊納斯·托沃茲,“開源運動”創始人埃里克·雷蒙德,微軟公司創始人比爾·蓋茨等。正是黑客把計算機工業推向了更高的高度。

“黑客倫理”的一個必然推論就是,黑客不服從管教,具有叛逆精神。

黑客通常對管理者強加的、限制他們行為的愚蠢規定不屑一顧,會找出規避的方法。一部分原因是為了自由使用計算機,另一部分原因是為了顯現自己的聰明。比如,計算機設備的各種安全措施就是最常被黑客破解的東西。史蒂文·利維對這一點有過一段生動的描述:

“對於黑客來說,關著的門就是一種挑釁,而鎖著的門則是一種侮辱。……黑客相信,只要有助於改進現狀、探索未知,人們就應該被允許自由地使用各種工具和信息。當一個黑客需要一樣東西來幫助自己創造、探索或者改正某種設備時,他不會自找麻煩,不會接受那些財產專有權的荒謬概念。”

這就是黑客有時會入侵計算機系統的原因,他們的主要目的並不是侵犯別人的利益,這與那些計算機罪犯是不同的。

但是,20世紀80年代初,事情發生了變化。

1983年,一幫密爾沃基市的青少年黑客入侵了美國和加拿大的一些計算機系統,這件事被廣泛報導,同年9月5日的《新聞周刊》封面報導的標題就是“小心:黑客在行動”,這是歷史上主流媒體第一次使用“黑客”這個詞。在報導的時候,媒體只注意和強調黑客行為一個很窄的方面:入侵系統。(可能因為這種行為容易引起公眾的注意,提升報導的關注度。)他們把黑客簡單定義為入侵系統、破壞安全設施的人。從此,大多數人對於黑客有了錯誤的看法。同時,那些入侵計算機的程式設計師也自稱“黑客”,使得這個問題進一步複雜化。

雜誌、電視劇、電影、小說都對黑客的這種形象大肆渲染。黑客成了反社會的技術高手的代名詞,仿佛只要他坐在鍵盤前,就有一種從事犯罪活動的魔力,可以操縱任何與網路相連的機器,從核彈到車庫大門,都在黑客敲打鍵盤的操作之中被控制。根據這種觀點,黑客在最好的情況下是一個沒有認識到自己能力的清白的人,在最壞的情況下則是一個恐怖分子。在過去幾年中,隨著計算機病毒的泛濫,黑客在大眾心目中已經成了一個有害的人群。

那些傳統意義上的黑客不認同這樣使用“黑客”這個詞。他們認為,歷史上確實有一些正直的黑客,為了親自了解系統,做過違反法規的入侵舉動。但是,那些人並沒有惡意,而且從一開始惡作劇就是黑客文化的一部分,僅僅由此推斷入侵和破壞系統就是黑客文化的實質完全是錯誤的。真正的黑客致力於改變世界,讓世界運轉得美好。媒體對黑客的定義未免過於片面。

為了澄清“黑客”這個概念,他們提出只有傳統意義上的黑客才能被稱為hacker,而那些惡意入侵計算機系統的人應該被稱為cracker(入侵者)。這個觀點已經在程式設計師社區中得到普通認同。

本書正是在這個意義上使用“黑客”這個詞。在本書中,“黑客”就是指最優秀的程式設計師,而不是入侵計算機系統的人。

為了幫助讀者理解黑客,全書15章可以大致分成三個部分。

第一部分從第1章到第4章,解釋了黑客是如何成長的以及他們看待世界的一些觀點。

第二部分從第5章到第9章,解釋了黑客怎樣做出自己的成果,這些成果又是怎樣對全世界產生了影響。

第三部分從第10章到第15章,解釋了黑客的工具(程式語言)和工作方法,這是黑客文化的基礎和核心。

作者想讓公眾了解,黑客並不神秘,更不是技術怪人。Hackers and Painters這個書名就是在提示應該把黑客與畫家當作同一種人看待。和畫家一樣,黑客只是懷有一門特殊手藝、有創造天賦的普通人。這個書名還有另一層含義,即編程是一種藝術創作,黑客就是藝術家,開發軟體與畫家作畫、雕塑家雕刻、建築師設計房屋並沒有本質不同。

總之,這是一本幫助你理解這個時代的書。作者想教給你的其實是新思想。讀完以後,你看待世界的眼光很可能會完全不同了。如果你想在21世紀立足,理解這一次新的技術革命,做一個掌握自己命運的成功者,我建議你讀這本書。

翻譯過程中,我已經盡了最大努力,力求把原文忠實、清晰地譯成中文。本書的一些章節中作者談論的都是計算機行業的專業問題,但是他又希望讓普通讀者看懂,試圖用口語化、生活化的語言解釋專業概念,我個人感覺效果不太理想,反而使得行文稍顯冗餘和模糊,這一點提醒讀者注意。總的來說,這是一本計算機行業的經典著作,2004年在美國出版後一直暢銷不衰,深受好評,很多讀者都被作者的遠見卓識所折服。

最後,本書第13章涉及Lisp語言的部分曾請田春幫助校譯,在此表示衷心感謝。

阮一峰

2010年12月25日,寫於上海

媒體評論

此書將迫使你重新思考計算機編程的本質。

—— Robert Morris,麻省理工學院

人類社會還沒有充分理解程式設計師帶來的美和智慧。Graham的這本書卻做到了這一點,寫得清晰又動人。任何願意傾聽的人都會有所收穫。如果我們不願意馬上就失去一些重要的東西,那么我們這個社會就應該傾聽。

—— Lawrence Lessig,史丹福大學法學院,《Free Culture》的作者

真正睿智之士的腦力激盪,讀來令人著迷。單單是《為何書呆子不受歡迎》一文就值回書價,它回答了我們這個時代的關鍵問題。

—— Chris Anderson,Wired雜誌主編

Paul Graham的思維站在高處,文筆優雅清晰,且不乏幽默,這不僅在像他這樣的電腦高手群體中實屬罕見,而且足以躋身於優秀作家的行列。

—— David Weinberger,《Cluetrain Manifesto》的作者

Paul Graham的《黑客與畫家》是一本內容廣泛的書,但是重要的地方,不是你從中學到了為什麼書呆子在高中時備受挫折,或者計算機語言設計和實現的奧妙,而是他在講述每一個題目時的那種方法,那樣生動有趣,富有啟迪性,讓你莞爾一笑,然後陷入思考。高度推薦此書給所有讀者。

—— Rob “CmdrTaco” Malda,Slashdot的創始人和管理者

Paul Graham是一個電腦高手,還是一個畫家,以及一個出色的作家。他的文章清晰易懂、幽默生動,充滿了與眾不同的看法和切實可行的高見。他從藝術、科學、商業互相交織的角度,談論如何寫出優秀的代碼。你可能會因為他的文章,而想要用Lisp語言編程。

—— Andy Hertzfeld,《Macintosh Computer》的作者

Paul Graham的《黑客與畫家》是我最近讀到的最發人深思的書籍之一。行文明白流暢,主題多樣,而且十分有趣。

—— Jeff “hemos” Bates,OSDN的主管和Slashdot的開發者

相關評論

《黑客與畫家》從解釋為什麼書呆子(nerd)不受歡迎到闡述黑客精神的意義,實際上是給程式設計師進行了正名。保持黑客精神,就有可能改變這個世界。那些不服從管教的人們,是這個社會力量與財富的源泉,是的,現在很少有人關心這些了,大家更關心房子和油價,糧食和蔬菜。

從利己角度來說,強烈建議每一個從學校即將畢業的人,或是所有的技術人都先讀一下這本書的第六章,"如何創造財富"(HowtoMakeWealth),技術人有必要建立起對財富的價值觀。說到"財富",似乎是很讓人不齒的事情,但是又是看到周圍有很多技術人熱衷談論股票、炒房,誰讓我們生活在這個糟糕的時代呢?少有人同時談談財富和技術的關係,還好有這本書。金錢只是財富的一種表達方式,但財富不等於金錢,不止是房子與車子。PaulGraham的觀點是:致富的最好辦法是創造財富(而不是掠奪),自己創業或是加入創業團隊是致富的可靠方法(就我來看,如果你是官二代或是富二代,那么另當別論)。Paul與那些常見的忽悠大師不同的地方在於,他同時也會給出稍顯冰冷的事實:創業的付出與回報總體上是成比例的,但是在個體上是不成比例的,不要把創業過於神話,但創業的確給了我們更多的可能。

給我帶來不小啟發的還有關於"不能說的話"的論述。身處當前這種複雜的社會環境中,如果你發現了這個社會的某種禁忌--你肯定會發現的,發現了不能說的話,怎么辦?最恰當的辦法是挑選合適的場合再說,而不是到處去說,我們要學會"只打值得打的仗"。想想我們平時在網上耗費大量精力而做的口水戰,難道不是么無謂之爭么?別去贊同這個社會任何一種歇斯底里,但是又不告訴他們你具體不贊同哪種狂熱。如果不得不面對這樣的挑釁,要么將爭論提升到一個抽象的層次-實際上這比較難;要么,使用隱喻-這也不容易,作者還提示了一個辦法,那就是幽默(他媽的,這傢伙太有意思了)。如果自己是潮水的一部分,你無法看清潮水的方向,唯一的辦法是永遠保持質疑,提升自己的思辨能力。

相關詞條

相關搜尋

熱門詞條

聯絡我們