文章摘錄自大教堂與集市:附錄A 如何成為一名黑客,個人認為其中強調(diào)的對待問題態(tài)度、學(xué)習(xí)的方法到現(xiàn)在讀起來也還頗有價值。
黑客的基本態(tài)度
黑客解決問題并作出東西,他們相信自由,并自愿地互相幫助。
重復(fù)下面這些事,直到你信奉它們:
1. 這個世界充滿了迷人的問題等待人們?nèi)ソ鉀Q
你必須要對解決問題、磨礪技能和智力挑戰(zhàn)有著基本的興奮感,否則能量就會被性、金錢以及社會認可這類東西慢慢耗盡。
你還必須要培養(yǎng)一種對自己學(xué)習(xí)能力的信心 --- 你要相信,即便你沒有掌握解決某個問題所需的全部知識,如果你成功處理了其中一小部分并且從中學(xué)到東西,你將會學(xué)到足夠多的知識去解決下一部分 --- 如此往復(fù),最終你會解決整個問題。
2. 不要解決一個問題兩次
創(chuàng)造性頭腦是無比珍貴的有限資源,他們不應(yīng)該浪費在重復(fù)發(fā)明輪子這種事上,尤其是有這么多迷人的問題在那里等著的時候。
3. 無聊和乏味是有害的
黑客(以及有創(chuàng)造性的人們)應(yīng)該從來不會覺得無聊,也不會去做那些乏味而愚蠢的重復(fù)性工作,如果這種事情發(fā)生,意味著他們沒有做他只有他們才能做的事 --- 解決新問題。
要當一名黑客,你必須非得非常相信這一點,并且希望盡可能將那些無趣的事情自動化。
4. 自由是件好事
5. 態(tài)度不能代替能力
要想成為一名黑客,你需要智慧、實踐、投入和努力。
你必須學(xué)會持懷疑態(tài)度并且尊重每種能力,在任何事情上的能力都是好的。
那種只有極少數(shù)人能駕馭的技術(shù)能力尤其好,那種需要思維敏銳、動手能力強和全神貫注的技術(shù)能力最好。
如果你崇尚能力,你會從動手開發(fā)中獲得樂趣 --- 辛苦的工作和投入將成為緊張的比賽而不是苦工。
黑客的基本技能
1. 學(xué)習(xí)如何編程
你可以從書本上學(xué)習(xí)到語言特征,但那只是皮毛,要想獲得將知識轉(zhuǎn)化為技能的思維模式,只能通過實踐和跟隨大師。
做法就是讀代碼和寫代碼。
學(xué)習(xí)編程就像是如何寫好自然語言,最好的方式是閱讀大師們的東西,然后寫你自己的東西,多讀一些,多寫一些,再多讀一些,再多寫一些,如此循環(huán)往復(fù),直到你寫的東西開始發(fā)展出你在經(jīng)典中所體會到的力量和簡潔。
2. 找一個開源Unix,學(xué)習(xí)使用和運行它
除了Unix,這個世上還有其他操作系統(tǒng),但都是以二進制發(fā)布的 - 你沒有代碼可讀,沒有代碼可改,嘗試在DOS、Windows、MacOS上學(xué)習(xí)黑客技能就像全身打著石膏學(xué)習(xí)跳舞。
找一個Unix,學(xué)習(xí)它、運用它、搗鼓它、用它和互聯(lián)網(wǎng)對話、讀它的代碼、該它的代碼,你會得到比微軟操作系統(tǒng)下不知道好多少倍的編程工具,你會樂在其中,你吸收的知識會比你當時意識到的更多。
3. 學(xué)習(xí)如何使用WWW和寫HTML
有一個主頁,和讓你成為一名黑客相去甚遠,網(wǎng)上到處都是主頁,但但多數(shù)是毫無意義和毫無內(nèi)容的泥巴。要想有價值,你的網(wǎng)頁必須要有內(nèi)容,必須有趣或者對其他黑客游泳。
黑客的地位
黑客文化靠聲譽運轉(zhuǎn),你在嘗試解決一些有趣的問題,但問題到底多有趣,你的方案有多好,是由你的技術(shù)同行或上司來判斷的。
你之所以獲得地位和榮譽,不是通過支配別人,不是通過美貌,也不是通過擁有別人想要的東西,而更多是通過給出。特別是給出你的時間、給出你的創(chuàng)造力、給出體現(xiàn)你技能的成果。
基本上講座一下五件事情,會讓你得到其他黑客的尊重:
1. 寫開源軟件
寫出其他黑客認為有趣或有用的程序,然后將程序源碼發(fā)布給整個黑客文化。
2. 協(xié)助測試和調(diào)試開源軟件
3. 發(fā)布有用的信息
收集、過濾哪些有用并且有趣的信息,將他們放到網(wǎng)頁或者類似FAQ列表的文檔中,并讓人們看到。
4. 幫助做一些基礎(chǔ)工作
黑客文化和互聯(lián)網(wǎng)的發(fā)展是靠志愿者推動的,有很多必要但并不吸引人的工作需要有人來做,這些事情不像玩代碼那樣有趣,做這些事情體現(xiàn)了奉獻精神。
5. 服務(wù)黑客文化自身
比如,你可以宣傳和服務(wù)黑客文化自身。