1. 程式人生 > >給年輕程式設計師的幾句話

給年輕程式設計師的幾句話

我收到了不少新手的來信,他們都希望能成長為一名真正的程式設計師。我絕對不是第一個談論這個話題的人,所以,我不知道應該做哪方面的補充。不管怎樣,下面的是一些一直記在我心頭的、有必要讀一下的建議:

  • 找其他開發人員合作開發。我們正處在科技歷史上第一個絕好的時代,你幾乎不用在意在哪工作、為誰工作。只要你有一個還過得去的網路,你就可以和另外一個在世界任何角落裡的人一起來完成某段程式。我知道,越來越多的有經驗的開發人員開始把他們的一部分時間投入到這種知識共享裡。我的朋友Evan Light特地留出了時間來開發一個幫助Ruby愛好者合作行動的網站。我從事這樣的事情也有一段時間了。你想開發一些FLOSS程式嗎?發郵件給我,我們會幫你準備些東西。
  • 閱讀WikiWiki (有時也被稱作WardsWiki)。這一條怎麼強調也不為過。經常我會感覺到所有我學到的真正關於程式設計的知識都是在瀏覽這些網站的過程中慢慢的學到的。
  • 學習別人的程式碼。 GitHub萬歲!如果你會一點Ruby,想從別人整理好的現成經驗入手,你可以讀一下《Best of Ruby Quiz》
  • 參與開發者論壇。如果沒有這樣的網站,建立一個。討論問題。我不在意你認為自己是一個多麼菜的菜鳥。沒有任何一種形式能比通過討論一個問題來學習這個問題更有效的方法了。
  • 寫部落格。不要在意是否是原創。網際網路上很多非常有用的部落格都是廣泛的蒐集程式設計師的經驗和錯誤,以及如何克服這些問題的部落格。反省是學習過程中最重要的一件事情,寫部落格能幫助你反省。會出乎你的意料,你不久就會收到你的讀者的反饋。
  • 我相信你之前聽說過這一條:參與開源專案,修改其中的bug或捐獻程式碼。
  • 丟硬幣。是頭像就選擇Vim,否則選擇Emacs。學習使用這些編輯器。應該讓這兩種編輯器伴隨你餘下的程式設計生涯。強大靈活的編輯器會讓好程式設計師更好。
  • 多學習幾種程式語言。但起初應該先學一種語言。你應學習一種重要的語言,它能讓你對程式語言有個大致的認識,讓你第一天就愛上程式設計,你需要花大量的時間去學習這種語言中的各種知識,否則你漏掉知識點或不久就會忘記。一旦你掌握了這種語言,你需要學習新的語言來驗證在第一種語言中學到的知識。儘量選擇風格迥異的語言。我曾看過Seven Languages in Seven Weeks這本書,它讓我認識了各種各樣的程式設計模式,很好的書。
  • 訂閱跟你使用的語言和平臺相關的郵件新聞。人們有時會忘了,在各種部落格,Hacker News,以及Twitter裡,還有一個精彩的充滿討論的世界。郵件列表是一個很通用、很有用的來比較各種討論觀點的工具。
  • 不要花太多的時間去研究所謂的“最好的“工具。我曾經愚蠢的花上數天或數週去為某個專案找出一種”最好“的框架來提高開發效率。不要落入這種陷阱。當你還是一個不太熟練的程式設計師時,選一種大家都在用的語言和框架。重要的是當你遇到瓶頸是你知道如何處理。之後你才可以去尋找一種完美的…
  • 尋找實習機會。
  • 以及最基本的:練習,練習,練習。在班上練,在家裡練。鍛鍊程式設計基本功。程式設計跟其它技術一樣:最終,一切歸結於練習。