程序猿必須立即改正的 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所總結的那樣:
你的態度,而不是你的才能,決定你的高度。
編譯組出品。編輯:郝鵬程
TAG:36氪 |