懶只有懶惰的程式設計師才會去編寫那些可以最終代替自己工作的自動化工具,才不會成天為了實現相似的功能去編寫大段大段冗餘重複的** - 這種**往往是軟體後期維護和重構的天敵。通常來說,由於惰性的驅使所產生出來的工具和程式將最終極大的提高生產開發的速度。
當然,對於乙個程式設計師來說,光光具備懶惰這個要素還是不夠的。在享受懶惰之前,他必須以最大的熱情和最高的效率去研究解放自己的途徑,比如:找到最有助於開發的工具,最能體現「一次編寫,多次復用」精神的**架構的設計。只有在這些必要的工作之後,才可能真正享受輕鬆程式設計的樂趣。所以「懶」的精髓用一句老話來描述,那就是磨刀不誤砍柴功。如果你不想辦法磨亮手中的柴刀,就算一天二十四小時都在砍柴,效果也不如拿把鋒利的斧頭一天只砍一小時。從這個角度來說,google給員工的20%自由時間是完全發揮了「懶」的能動力。為了更好的享受偷懶的樂趣,員工會更加具有創造力的去高效完成自己的任務。誇張一點來說,懶惰才是人類進步的原動力。
笨這一點似乎比懶更讓人不能接受。在解釋這裡所說的笨的具體含義之前,我們先看看乙個聰明人(或者說認為自己足夠聰明)會做什麼:
1) 停止學習新的東西
2) 不願意用批判的眼光去審視自己的工作
第1點將使我們很難去接受或者主動的去研究一項新的技術 - 即使新技術能帶給他更多工作上的便利。第2點會使我們無法清晰的分析自身工作的問題所在,要對其進行改進或者重構就更加困難。
從這兩點來考慮,作為乙個程式設計師太自以為是不見得是件好事情。由於對自身的過於自信,往往無法客觀的看待自己和自己的工作。相反的,笨一點(確切的說,謙遜一點)有時候倒有助於開發的順利進行。舉例來說,當程式出現bug的時候,最好盡早承認問題是出在自己編寫的**上面而不是在於編譯器(當然除非是位元組高低位編碼方式之類的問題,這種問題編譯器會是錯誤的根源之一)。如果你太自負的認為自己的程式沒有問題而去猜測可能是編譯器或者其他的什麼外部因素出問題的話,那麼十有**你會在除錯過程中走上一長段的彎路。程式設計師應該笨一些的更為關鍵的原因在於,當需要思考問題的最佳解決方案的時候,往往要求我們首先要跳出思維定式。你對系統了解的越多,積累了越多的經驗,就越難走出已有的侷限,可以嘗試的範圍就越小。相反的,對於乙個什麼也不懂的門外漢來說,因為沒有任何失敗的記憶和潛規則的約束,也就沒有什麼是「不可能」的,這樣的大腦所能迸發出來的在專業人士看起來愚不可及的想法往往正是解決問題所需要的關鍵點所在。
優秀程式設計師的兩大要素 懶 笨
優秀程式設計師的兩大要素 懶 笨 懶 只有懶惰的程式設計師才會去編寫那些可以最終代替自己工作的自動化工具,才不會成天為了實現相似的功能去編寫大段大段冗餘重複的 這種 往往是軟體後期維護和重構的天敵。通常來說,由於惰性的驅使所產生出來的工具和程式將最終極大的提高生產開發的速度。當然,對於乙個程式設計師...
優秀程式設計師的兩大要素 懶 笨
懶 只有懶惰的程式設計師才會去編寫那些可以最終代替自己工作的自動化工具,才不會成天為了實現相似的功能去編寫大段大段冗餘重複的 這種 往往是軟體後期維護和重構的天敵。通常來說,由於惰性的驅使所產生出來的工具和程式將最終極大的提高生產開發的速度。當然,對於乙個程式設計師來說,光光具備懶惰這個要素還是不夠...
優秀程式設計師的兩大要素 懶 笨
這兩個詞和優秀聯絡起來,似乎有些不可思議。但從辯證的角度來看,這兩項要素確實是成為一名好的程式設計師所應該具備的。philipp lenssen的原文 請看這裡 懶 只有懶惰的程式設計師才會去編寫那些可以最終代替自己工作的自動化工具,才不會成天為了實現相似的功能去編寫大段大段冗餘重複的 這種 往往是...