軟體開發人員和開源倡導者埃裡克·史蒂文·雷蒙德說,學習如何成為駭客就像學習演奏樂器一樣。正如他經常提到的,ESR列出了七個步驟來幫助潛在的程式設計師學習如何駭客。
這裡的“駭客”定義為“在開源環境中進行探索性程式設計”——一種程式設計風格,而不是破壞安全或犯罪。這裡所建議的“增量駭客迴圈”對於任何一個採用實踐方法學習程式碼的人來說可能都很熟悉:選擇一個你感興趣的開源程式,找到一個小的特性來更改或新增,做出你的更改,並與開源社群分享。然後選擇一個更難的新專案(還有更多,但這就是要點。)
ESR說,將補丁傳送給程式維護人員是一個重要的部分:
我最初將此描述為可選步驟;一位睿智的朋友指出,也許我不該這麼做。單獨在你的樂器上拉麵是很好的練習,但是當別人聽到音樂中的創造力時,音樂就完成了,並且得到了驗證。單獨在你的電腦上玩麵條也是一種很好的練習,但是當別人使用你寫的東西時,駭客就完成了。這個真實世界的測試很重要。
有時(通常是剛開始的時候)你的補丁會被拒絕。你需要學會應付這種情況。這並不意味著你註定會失敗;通常情況下,這意味著你沒有足夠仔細地閱讀程式碼,或者(就像通常一樣)你錯過了一些重要的東西,比如你試圖貢獻的開發團隊的文化和實踐。這些錯誤是可以彌補的。
這種漸進式方法的好處是,你沉浸在大量程式碼中,複雜性不斷增加,然後最終你將能夠建立更多的原始程式碼,就像擁有豐富音樂聆聽和練習的音樂家能夠將音樂模式轉化為原始作品一樣。
更多詳情,請檢視《大教堂與集市》尊敬的作者的完整文章。
如何學習駭客|埃裡克·史蒂文·雷蒙德
塞巴斯蒂安·特伯格攝。
... Android使用者有很多語言學習應用程式可供選擇。你的決定應該基於你想學習的語言和你想學習的方式。英語、日語、普通話、法語和西班牙語等語言都包含在大多數主要應用程...
...你的工作是編寫驅動你的機器人走向成功的人工智慧——使用Java、Scala、C#等真正的語言。要開始學習,請檢視Robocode基礎知識和教程。 ...
人們通常使用LinkedIn來尋找新工作。這家社交媒體網站擁有當之無愧的聲譽,因為它是尋找新工作的最佳去處之一。 ...
...和影響力所提供的廣告機會。這為擁有大量Instagram粉絲的使用者提供了賺錢的機會。下面是一些在Instagram上賺錢的方法。 ...
... 你將使用各種工具,如不同顏色和大小的鉛筆和蠟筆。有很多層次和階段需要經歷。如果你有靈感,你可以為其他玩家搭建自己的舞臺。 ...
...免費打字應用程式。雖然有些包含應用內購買,但您可以使用“先試用後購買”選項,以確保它們適合您,然後再掏出現金。 ...
...心,這並不像聽起來那麼難(或者那麼煩人)。 硬體:使用滑鼠右鍵完成任務 像Razer這樣的遊戲配件公司的誇張營銷有時有點荒唐。不,買一隻價值150美元的遊戲滑鼠,用鐳射,這樣你就可以用它做Lasik手術,不會讓你一夜之...