程序猿必須立即改正的 5 個壞習慣
編者按:本文編譯自Ravi Shankar Rajan發表于Hackernoon網站上的文章 You Need to STOP These BAD Developer Habits NOW 。Ravi Rajan是印度孟買人,全球IT項目經理。他也是一個狂熱的博主、詩歌作家、考古愛好者和歷史狂人。
“Ravi,你糟透了,你每天都把自己弄得很艱難。”Jim這樣跟我說,他是我多年以前的經理。
我很驚訝。或者說是“震驚”,這個詞更能形容我的情緒。
我用某種掩飾不住的諷刺語調回答他:“呵,你這么想我的哦。”
“我是一個偉大的開發者,是我團隊的寶貴財富。客戶很信任我,并且在知識上,我遠遠領先于同時代的人。”
他每說一個字我就更憤怒一分。
“Ravi,‘ 顧慮 ’太多是你的問題,除非你能提高自己的效率,否則你將永遠不能抵達 偉大 的頂峰。”Jim直視我的眼睛,繼續如是說。
我驚呆了,又氣又困惑,同時也發現他的話如此膽大妄為、不同尋常。
我克制了自己 沖出 房間的沖動,讓他繼續說出理由:
“我的代碼是***的代碼。”
弗里德里希·尼采的話精妙地解釋了這一狀況:
自負與我的進步如影隨形。
團隊需要的是那種謙虛、求知欲旺盛而聰明的人:謙虛而不自負,意味著比起注重自己來說更重視隊友;求知欲,意味著他們有著強大的職業道德,決心完成所有任務并盡其所能; 聰明,不是指智力上的聰明,而是內心聰明 。
別批評別人的代碼,它可能就在萬眾矚目之下成為你的代碼了。試著客觀地、專業地觀察他人,而不是做出判斷。要謙虛,并試著向周圍的每個人學習。
永遠記著,你的自負是你工作的障礙。如果你認為當下的你已然偉大,那么你將會失去你的創造力。自我學習終止于你認為無所學習的時刻。
“我能很快解決這個問題。”
Angela Duckworth曾說過:
真正的卓越并無捷徑可走。
行行好吧,給自己一個許可,讓自己能最充分地發揮自己的生活。如果你把所有的時間都用在拿牙刷刷洗邊邊角角,你很有可能錯過了重點。走捷徑并不意味著把最終的結果也縮小了。
走捷徑如此誘人,每個人都曾經做過。確實有一些情況,需要我們走捷徑。但總的來說,走捷徑非常危險,應當避免。走捷徑可能通向錯誤的終點,這可能為你節省了幾個小時,但最終可能需要你用數個月的痛苦、名聲的損失來挽救。
認真對待我的建議。我曾經走捷徑通向“自由”的生活,但這一自由的生活并不是真的自由生活,我痛苦地從中學習到走捷徑的壞處。
“我能記住一切,不需要記錄文檔。”
Dick Brandon編程的時候所說的話正擊要義:
文檔如性,說它好吧,它妙不可言,說它不好吧,它又比別的東西都要強一些。
文檔是編程的蓖麻油,經理們都認為文檔對程序員有好處,但程序員總是很憎惡它。
但畢竟,偉大的開發人員將寫文檔作為其日常工作的一部分。
他們有如下認識:開發團隊與任何其他業務都一樣,總是處于不斷的變動之中。程序員可能跳槽、轉崗或退休。在最壞的情況下,也是人們最不期待的情況,員工的生病、受傷與死亡可能會讓團隊失去斗志。代碼的時限也很重要,程序員一年或更長時間不接觸這一代碼的話,很容易就會忘掉自己之前寫的代碼到底是咋運行的了。
倘若程序員能夠寫好設計文檔、API規范、開發手冊和代碼注釋,上述任一情況都會有所不同。
這種態度正是他們之所以是團隊寶貴財富的原因。故意不記錄任何東西并不會讓你成為“ 不可替代 ”的團隊成員,你最終只會成為團隊“ 無法彌補 ”的責任。
“這不是我做的”
李小龍說得對:
如果有勇氣承認錯誤,錯誤總是可以被原諒的。
這個說法不能被低估,因為這是一個真正偉大的開發者最重要的特質之一。
我們總有借口……就好像說正常情況下我們絕不會犯錯一樣,說實在的,這很難令人信服。
不好的開發者會指責用戶“不正確”地使用產品,也不能對整個產品和錯誤負責。當某個錯誤是別人所犯,他們一定會讓每個人都知道該錯誤的負責人是誰。
有啥必要提出這個問題、浪費大家的時間呢?
這時候,一個健康的態度就很重要了,我們就可以這樣說:“是啊,對不起啊,現在我們需要如此如此做,來解決這個問題,這是我的鍋。”這樣說將會幫助你建立聲譽,幫你在同事中得到更多的認可。 越早承認錯誤,就有越多的時間學習、改正錯誤。就這么簡單!!!
彼“完成”非此完成
Rick Lemons說的很在點子上:
系統已經知道的信息,不要讓用戶再次提供。
如果說編程就像性,那么世界上是有很多“不行”的電腦。你不能做到一半就去睡覺。我發現你們糾結的概念之一就是“ 完成 ”。
記著,完成意味著:根據用戶的要求測試、提供支持。 最終的完成 ,并不是由程序員完成的。
一位優秀的程序員渴望學習新事物。他們努力理解程序架構的所有部分是如何協同工作的,這些部分出于何種狀態。他們對功能背后的設計及想法提出質疑,以求解決方案。他們明白什么構成了良好的用戶體驗。
糟糕的程序員則極度依賴其最喜歡的技術。他們認為“ 理想 ”是唯一的方法和編程過程,用戶體驗和狀況絕不應當驅動決策。他們給項目帶來不必要的內容,以適應其偏好。
這么惡劣的編程習慣就像公牛闖入瓷器店,笨手笨腳、粗魯不堪。最終,會導致時間的損耗、努力的白費以及信譽的破壞。
成功項目會讓用戶如臂指使,閉著眼睛也能夠完全操作,就像他們本身的DNA一樣。
總結一下
那么以一個詞總結一下上述經驗教訓吧:
態度。
總有一天,態度會比多年的經驗更重要。
僅僅工作是不夠的,你必須有正確的工作態度而不僅僅是確切的技能,迄今為止,正確的態度更為重要。如果你以自身興趣為職業,一般來講你會喜歡做這件事,工作對你來說永遠不會有單調乏味一說。作為員工,在工作場合傳播正確的態度信息是非常重要的。
正如Zig Ziglar所總結的那樣:
你的態度,而不是你的才能,決定你的高度。
原文鏈接: https://hackernoon.com/you-need-to-stop-these-bad-developer-habits-now-468ae877700f
編譯組出品。編輯:郝鵬程