程式設計是個很複雜的玩意,但是成就優秀程式設計師的很多因素和我們在學校中早期學到的相差無幾。本文靈感來源於Robert Fulghum的《All I ReallyNeed to Know I Learned in Kindergarten》。
1.分享
儘可能地使用開源,並且如果有能力的話也可以把自己的成果分享給大家。整個社會的智慧結晶肯定比一些大公司自管自閉門造車要好。
2.公平的心態
不要以為你的選擇就是唯一能奏效的,試試其他技術、框架、方法和建議,也許其他的選擇比你原先的好也未可知。要用開放的心態去對待任何方法和抉擇。
3.不可攻擊他人
如第2條所言,不要因為別人恰巧使用的是.Net、Java或PHP這些技術就隨意攻擊他們(我在這方面有過教訓)。有時,這些你看不上眼的技術或許要比你想象的更有用。只要你懷著一種平和的心態,你就可以從他們那裡學到很多東西,殊不知,海納百川,有容乃大。
4.解決自己的爛攤子
自己的程式碼自己負責。永遠不要指望QA能幫你找到所有的bug。經常全面地測試自己的程式碼。
5.不是自己的東西不要拿
得到許可後方可使用,偷偷用了事後再聲稱自己無辜是可恥的。
6.如果傷害了別人要說對不起
程式碼審查是一個相當不錯卻又很少使用的主意。指導經驗比你少的程式設計師,有助於整個團隊的發展。但是切記不能公開批評他人。指導並不意味著貶低別人。在得到指導時,有的人會接受,有的人則不會。要記得有時候,從那些水平不及你的人身上,你也能學到很多東西。絕對不能門縫裡看人——把人看扁了。
7.有備而來
在正式開工寫程式碼之前要先做個徹底的瞭解。做原型、從網上搜尋例項、和其他也做這個的人討論或者先練練手。什麼都不知道就著手構建你從未嘗試過或使用過的東西簡直就是“自作孽不可活”。如果打一開始就有線索有思路,得到的結果可能會更好更有成效。
8.拿得起放得下
不要畏懼替換、重寫、重構甚至是直接刪掉程式碼。有時候,如果碰到可留可不留的程式碼,直接扔掉就是了。不要對你的程式碼死纏爛打,不肯放手。
9.舒適的工作環境
對,要想程式設計師能高效程式設計,一個好的工作環境是不可或缺的。一把舒適的椅子,一個安靜的工作場所、一代高配置的電腦以及各種有助於程式設計的工具都應該配備齊全。經理避免一些瑣事去打攪到手下的程式設計師。而作為一個程式設計師,也不必忍氣吞聲、給人做牛做馬,如果老闆對你不好,換個就是了。
10.保持生活的平衡——學習、思考、繪畫、唱歌、跳舞、工作、玩耍,每天都應該活得豐富多彩
我非常欣賞谷歌的工作方式,它會建議你花上20%的時間用來思考任何你認為值得做的事情。此外,谷歌還提供專門的休息室、遊戲房和其他一些能用來放鬆自己的場所。因為程式設計是一種高強度的腦力活動,有時候你的大腦真的非常需要稍作休息。不要盲目地不管不顧自己的身體,“工作狂”絕對是不可取的生活方式。每週工作80小時,聽上去很牛掰,但是你的工作效率肯定要打一個問號,甚至一不小心會犯個不可饒恕的小錯誤然後前功盡棄。
11.下午打個盹
就算我們把一天24個小時全都用來寫程式碼,成果也不會更多。停下來、回家、然後打個盹。很多問題都是在我回家的路上解決的。有時候,我正在開車,或者是清早一覺醒來,答案就靈機一動出現在我腦子裡。
12.不要閉門造車
對於我們相當有好處:讀讀部落格、學學新語言和框架、討論討論話題、看看同行在做什麼。自掃門前雪,絕對成就不了一個優秀的程式設計師。閉門造車型的程式設計師終將被時代的潮流所淘汰。
13..保持好奇心。我們就像一粒粒種子,因為有著對外面世界的好奇,才能從土壤中探出頭來,親眼見證這個世界。
每天我們都能看到有新鮮事物出現在程式設計世界裡。帶著“Why”去一探究竟。每天都學點新知識,擴寬自己的視野,重新整理自己的技能,讓自己跟得上時代前進的步伐。要是你覺得程式設計枯燥又乏味,那麼也許你可以考慮換一行。
14.所有事物都會逐步趨向衰退滅亡,誰都無法抵抗。
程式碼也會慢慢發舊直至死亡。這時候你能做的就是把它們埋葬,然後再重新寫過。不要為了省錢而繼續維護那些費力不討好的程式碼!
15.還記得《雌雄大盜》這本書嗎,我們學到的第一件事就是——“看”。
如果你不自己親自去試試,那麼你永遠也學不到東西。我在程式設計中學會的所有東西全都來自於我的親身實踐。每天早上,我會廣泛瀏覽網站,看看我們的程式設計世界有什麼新鮮事情發生。從80年代初我得到第一份工作開始,我就一直保持了這個習慣。(那個時候網路還沒普及,我主要是看目錄和雜誌。)
當你已經有了5年的工作經驗,在你眼中程式設計其實就是小菜一碟了。
英文原文:All I Need To Know To Be A Better Programmer I Learned InKindergarten
翻譯作者:IT新聞 – 蔣麗麗
相關閱讀
評論(0)