無我編程十誡

簡評:這十戒是出自 1971 年的經典書 The Psychology of Computer Programming(程序開發心理學),字字珠璣。雖然技術日新月異,但這些對人性的觀察確實經得起時間的考驗。

StackOverflow 聯合創始人 Jeff Atwood 寫了注釋。

  1. 人非聖人,孰能無過。理解並接受不完美的自己// 關鍵在於正式發布前儘早找到問題

  2. 行有不得,反求諸代碼// 記住重點是找出問題,而且終會解決,不要因為代碼而針對寫代碼的人。

  3. 人外有人天外有天// 虛心求教,只要你問總有人會教你;當你認為不需要的時候,更應該去虛心求教

  4. 溝通好再重構// fixing code 和 rewriting code 有著差別,了解差異,框架內尋求最優解,而不是孤獨的碼字機

  5. 用尊重、順從和耐心對待那些寡聞之人// 開發者和非技術人員的爭吵往往是很糟的,不要用憤怒和不耐煩來刻畫程序員的不好相處的形象

  6. 白衣蒼狗,世界永恆不變的屬性是變化// 開放、微笑地接納新工具、新架構、新技術、新改變、新平台,將其視為新的挑戰,而不是麻煩

  7. 真正的權威源於知識而不是地位// 知識產生權威,權威贏得尊重。所以如果你想在一個公平無私的環境贏得尊重,去獲得知識吧

  8. 屢敗屢戰 雖敗猶榮// 要明白我們的觀點會被推翻。即使我們是正確的,也不要說諸如「我告訴過你」的話,不要像烈士一樣大喊大叫

  9. 不要坐井觀天// 不要成為那個辦公室只知道編程和買可樂的那個人。不要被困於小小的辦公室,失去光明,失去視野,失去控制。

  10. 評價代碼而不是評價人,對程序員好而不是代碼// 儘可能地讓所有評論都是積極的,並著重於改進代碼。評價關乎 local 的標準、程序規範、新能提升等要素

英文版:

  1. Understand and accept that you will make mistakes.

  2. You are not your code

  3. No matter how much "karate" you know, someone else will always know more.

  4. Don"t rewrite code without consultation.

  5. Treat people who know less than you with respect, deference, and patience.

  6. The only constant in the world is change.

  7. The only true authority stems from knowledge, not from position.

  8. Fight for what you believe, but gracefully accept defeat.

  9. Don"t be "the guy in the room."

  10. Critique code instead of people – be kind to the coder, not to the code.

原文:The Ten Commandments of Egoless Programming

日報延伸閱讀:程序員誓言

歡迎關注,專欄「極光日報」,每天為 Makers 導讀三篇優質英文文章。

特別鳴謝 @張青 幫助翻譯。

夏安。


推薦閱讀:

【遊戲框架系列】五彩繽紛
談點編程之外的事情
看不見的設計
LeetCode刷題筆記 06 ZigZag Conversion
Python3 & OpenCV 視頻轉字元動畫教程

TAG:编程 | 程序员 | 程序员修养 |