毫無疑問,軟體開發是一項最需要久坐的工作之一,每天在電腦前要坐 8 到 16 個小時,中間幾乎沒有休息,這就很容易長肉。而肥胖很很可能會引起其它的疾病,心臟病就是其中一種嚴重的疾病。當然,你可以通過一些鍛鍊避免它,比如花點兒錢去辦一張健身卡。
長時間不符合人體工程學的打字姿勢,會造成軟體開發人員重複性的肌肉損傷,比如腕管綜合徵。你應該每隔幾個小時的打字後就活動伸展一下手腕,防止這樣的損傷,或者選擇買帶有手腕保護功能的滑鼠和鍵盤。總盯著螢幕也會給你的眼睛帶來壓力,這就是為什麼建議你戴一副防閃光的眼鏡而不是普通眼鏡的原因(假設你是戴眼鏡的)。
1. 提高你的數學能力
數學可以提高你的邏輯思維能力,拓寬解決問題的角度,還有培養你的耐心。有一些數學分支,比如離散數學,可以直接應用到軟體開發上,還有一些可能你會忘記,但也沒關係,看你是從事的是哪個領域的開發了。比如說,遊戲開發人員經常會用到物理和微積分,但我作為一名企業應用的開發人員,就很少有能用上它們的地方。無論怎樣,數學能力的提升可以讓你變得更優秀,做更好的程式設計師。
2. 提高你的英語水平
所有程式語言,指令碼語言和標記語言都是英文的,而且像 Linux 這樣的開源專案的註釋通常也都是英文的。世界各地的開發人員都在使用英語來合作開發,針對國際客戶的開發者都必須學習英語,因為這樣才能夠將業務需求轉化為實際的解決方案。明白了吧,英語對開發者而言就和二進位制對於計算機一樣。
3. 一個屬於自己的域名和網站
你不覺得有一個屬於自己的郵箱地址很酷嗎?不是那種像 something@yahoo.com 或 someone@gmail.com 一樣的大眾郵箱。有一個自己的域名能讓你在其他人中脫穎而出,關鍵是每年只需要花很少的錢就可以實現它。我買的這個 lambdageek 域名只花了 13 美金,個人域名還能給你的個人品牌,也就是你自己,增添自信和專業性,讓潛在的使用者或者同事瞭解到你。當然這一切的前提都是你的域名不是像什麼 hotmale-loves-chicks.com 一樣瞎起的。
4. 一個活躍的 Github 賬號
Github 賬號對於程式設計師而言,就如同作品集對於藝術家一樣。有了它,其它的就不需要說什麼了。
5. 一臺好的裝置
你沒有聽說過程式設計師沒有自己的電腦的吧?我也沒聽說過。沒有自己電腦的程式設計師就好比沒有鐳射劍的絕地武士一樣。我說的一臺好的電腦至少得有 4GB 記憶體,我比較推薦的是 4000 刀的 Macbook Pro,當然不排除那些有極端需求的特例。
6. 足夠快的網速
網路對於程式設計師就像氧氣一樣,所以沒有網路的世界就好比斷了空氣供給,是無法忍受的。一個穩定的網路連線可以讓你多學習,看線上視訊,泡泡論壇,然後及時關注 Hacker News 上的最新文章。
7. 閱讀經典的電腦科學書籍
有一些書我認為是軟體開發領域的經典之作:
- 計算機程式的構造和解釋(Structures and Interpretations of Computer Programs)
- 程式碼大全2(Code Complete 2)
- 程式設計師的修煉之道(Pragmatic Programmer)
- 重構-改善既有程式碼的設計(Refactoring)
- 演算法導論(Introduction to Algorithms)
- 離散數學及其應用(Discrete Mathematics and Its Applications)
- 人月神話(Mythical Man Month)
8. 學士學位
一個本科學歷能夠增加找到工作的概率,無論是新的畢業生還是剛辭職準備找下一份工作的人都一樣。想像一下這樣的情況:很多畢業生都在爭搶一份工作,那麼一個在校生的簡歷是不是更容易被忽視呢?
9. 資格認證(可選)
資格考試可以檢驗你某一方面的技術能力,而通過了某項認證意味著這個人在某一方面有著比較深入的瞭解,而恰好這方面是一個企業認可的。有一些公司會給有相關認證的程式設計師提供更高的薪水,當然,也有些公司根本就不在乎這些。比如說,作為一名有資格認證的 Java 程式設計師說明你對 Java 語言還是有比較好的理解,但同時它不意味著你可以直接將你的理解轉為解決問題的能力。所以,一些公司更看重個人的思考能力,而非某種程式語言的經驗,因為程式語言可以學得很快,但是解決問題能力的培養不是一朝一夕的。
英文原文:Things a Software Developer Must Invest In
來自:PHP100
相關閱讀
評論(1)