所有的程序員都是自學成才

來源: 外刊IT評論  發布時間: 2012-01-31 09:48  閱讀: 4766 次  推薦: 3   原文鏈接   [收藏]  

  英文原文:All Programmers Are Self-Taught

  在我十幾歲的時候就開始玩甲級棒球。我水平很差,但當我決定要做好什么事時,最終總能如我愿。現在我是計算機專業 3 年級的學生。在編程上,有些事情和體育是截然不同的:棒球教練可以教會你如何打棒球,但一個計算機教授卻不能教你如何編程。

  我很吃驚,在整個大一期間,我的老師或教授從來不點評我的代碼,大二時更是如此。我們的作業很多,題目很難,但在完成了數據結構課上的 2000 行的代碼后,我從來沒有收到過老師的任何一條評論——只要程序能編譯通過,單元測試顯示沒有錯誤,這就行了。直到遇到了一個小組開發的項目,我才認識到我的代碼寫的多爛,我才開始詢問:好的程序應該如何寫。

  但是,什么樣的代碼才是好的代碼?我花了大量的時間來提高代碼的可讀性,添加注釋。我努力模仿 UNIX 的哲學觀,力求簡約,首先讓程序能跑起來,在此基礎之上,在需要的情況在進行優化。復雜的東西要逐步增加。除非必要,我不使用線程。但是,說實話,我不知道這是不是好的代碼(說實話,我覺得自己水平很差)。

  我很幸運,能和一群優秀同學一起工作,他們都是出色的程序員,他們在微軟、谷歌、亞馬遜等公司實習。他們的觀點都很一致,認為自己的知識都是自己總結或從其他程序員那里學到的。即使是非常資深的軟件工程師也有這樣的看法。所以,我的結論是:

  所有程序員都是自學成才的

  我受的教育給了我很好的基礎:數據結構,算法,數據庫設計,并行計算,網絡編程,敏捷開發以及各種編程模式。但所有的這些,即使是它們使得編程更高效和更精巧,你仍然可能用錯它們——我曾經看過一些學生在這些課程上學習成績非常好,但寫的代碼卻讓人想哭。

  我并不認為學過計算機科學、軟件工程或得到一個大學文憑會有多大的用處,如果你想靠寫代碼為生,自學是你不可缺少的途徑。

3
0
 
標簽:程序員
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()