程式設計師2013新年計劃
我的同事朋友Chris Eargle寫了一篇關於新年計劃的有趣文章。他讓我想到了,沒有出現那場世界末日是我們多麼大的幸運呀(還有其他我這45年中躲過的天災),於是,我也有了一些我自己的以程式設計師為主題的新年計劃。
找到一名導師/成為一名導師
在你的職業生涯中,你能做的會給你帶來最多麻煩的事就是成為屋裡最聰明的人。我說的並不是你堅信自己你就是屋裡最聰明的人。我的意思是你成為團隊裡真正的萬事通。問題終結者。終極疑難解答者。
於是,這就有了另外一個問題:你有疑問了去問誰呢?
如果你的回答是“谷歌”,那你是不思進取。去到那些你認識的(或不認識的)最聰明的人中間去。參加你們的本地社團。去你們本地的程式設計活動中發言,去和其他的講演者一起喝酒聊天。找那些你可以接觸到的人,讓他們成為你的導師。
找到一名導師
我在生活中有好幾位導師。他們是我尊敬的人和能讓我輕鬆問問題的人。有些人甚至非常的專業!沒錯,這些是我軟體開發圈外的導師。
如何去請教你的導師?這取決於你。我是在有問題時找他們。我對他們說喝杯咖啡吧,找個地方坐下來,聊聊天。如果我們能同一個城市的某個研討會上遇到,我會和他們一起出去喝酒吃飯。早些年,我很注重形式禮節,特別是我作為團隊的消防隊員的時候。如今,我已經不再有任何形式拘束了。更多的是隨心所欲的求教。
成為一名導師
同樣,我們也應該成為生活中的某些人的導師。如果你有孩子,你已經承擔起了一名導師,父母,朋友,老師的職責。當然,對於一些同齡人的指導,我們需要去掉父母那部分的角色。對他們你是不能發號施令的。
如何讓自己成為其他人的導師?當然,如果有人來請教你,那是最好了。這就有些名正言順了。但你也可以在不宣告“我是你的導師”的情況下成為某人的導師。看看是否有人在為一些事情愁眉不展,你可否幫助他們?對他們說喝杯咖啡吧(如果是九零後就喝紅牛)。去跟他們一起吃飯。跟他們聊天。更重要的是,傾聽。指導並不是宣揚你的智慧或你的經驗。導師是要成為一個耳朵,一個肩膀,一個指點方向的手指——在他們需要的時候。
2010Feb08_0123.jpg/Jerome T/CC BY
KISS
“貝絲,你在呼喚我,但我只是想去底特律搖滾城市裡每天沒日沒夜的搖滾”![歌曲KISS的歌詞]。似乎這個社會在召喚你制定一個加入這種KISS大軍,去吃喝玩樂,去體驗生活的新年計劃。但我在這裡說的可不是這些。
我說的是Keep It Simple, Stupid!作為程式設計師,我們絕大部分時間都是花在了維護程式碼上,只有少部分的時間用來創造程式碼。事實也證明,維護程式碼要比寫新程式碼要難的多。所以,按照這種邏輯,如果我們在創造程式碼時極盡所能寫出最巧妙的程式碼,那麼我們就沒有足夠更高的能力來維護它們了。
Blaise Pascal在他的第16封省府信件中說“這份信件很長,原因很簡單,我沒有時間使它更短”。抽出時間,重構你的程式碼,讓它們更短小。讓它們更容易閱讀。盡所可能的在所有地方遵循SOLID原則。
如果你不能把它向一個9歲的小孩解釋明白,這說明它太複雜了。公司僱你不是讓你來表現腦瓜好使的,如果你寫的程式碼沒有任何人能接手維護,你不會因此而得到加薪或晉升。
Keep it simple, stupid (and short)/Jegi/CC BY
去讀該死的手冊(RTFM)
這是我的第一次聖誕節裡不需要在平安夜裡去做一些東西。在以前,我會做小腳踏車,布娃娃房子,佈置廚房,以及所有類似的東西。當然,做這些東西都不需要參考手冊,只是需要在孩子們上床睡覺後才能開始,而且第二天早上天矇矇亮就會被三個孩子跳上床來吵醒。噢,這些美好的回憶!
當然,所有的這些不眠之夜都有一個相同的主題。我知道我不需要讀操作手冊就能做這些。可工作中更常見的是,文件上的圖表畫的一團糟,文字是經過了三種不同語言翻譯過來的,我對這些文件的質量的意見一致很大。我認為只要埋頭去做,我能做出任何東西,所以為什麼要讀那些無聊的手冊呢?這是不是好像是在說你上一個專案的需求文件?
不管你相信與否,人們通常大量的時間用在寫需求上。他們並不是有意的要寫這些東西來讓我們困惑。需求很難寫的面面俱到,讓每個人都理解。但它們卻是你的專案的基礎,包含了大量的專案上的知識。所以說,讀讀它們吧。如果是先讀它們,然後到它們的作者那裡問一些問題,這是更好的做法了。用心聽!聊一聊。每一次有感悟都要重讀它們。再去聊一聊。
[127/365] Immersed/pasukaru76/CC BY
不要重複自己
一個朋友對我說“如果你寫出一些程式碼,你應該把它做成一個方法。如果你寫了它兩次,你應該把它做成一個方法。如果你寫了它三次,那你就別去程式設計了!”
我舉雙手贊成。如果你把自己的程式碼從一個專案拷貝到另一個裡,你是在給自己未來的道路上挖坑。沒錯,你能記得修改手頭上這個專案裡的這段程式碼,但其它專案裡的這段程式碼呢?假設你在除錯bug,幸運的是你能清楚的知道如何糾正這段程式碼裡的邏輯問題。但不幸的是,這段程式碼在其它專案裡的拷貝卻成了問題的根源。
像JustCode這樣新式的重構工具能輕鬆的讓程式碼片段變成方法,從而減少重複程式碼,提高程式的可維護性。
相關文章
- 2013程式設計師新年增值計劃程式設計師
- 給程式設計師的2015年新年9大計劃程式設計師
- 新年程式設計師福利(多圖)程式設計師
- 程式設計師的 12 個新年願望程式設計師
- 程式設計師新年要做的10個決定程式設計師
- 程式設計師的職業規劃!程式設計師
- 一枚程式設計師的寫書計劃程式設計師
- 路在何方——程式設計師職業規劃程式設計師
- [轉]程式設計師的職業規劃程式設計師
- 祖克伯的新年程式設計計劃:有助於家務和工作的人工智慧助手程式設計人工智慧
- 程式設計師只能吃青春飯?程式設計師該怎麼規劃自己的未來程式設計師
- 程式設計師的打怪升級之路,程式設計師未來職業規劃全路線程式設計師
- 2013程式設計師面試什麼最重要?程式設計師面試
- 程式設計師的2015年9個計劃程式設計師
- 程式設計師何苦為難程式設計師?程式設計師
- 程式設計師的“非程式設計師”之路程式設計師
- 程式設計師何必難為程式設計師程式設計師
- 程式設計師如何做好技術規劃?程式設計師
- 程式設計師職業規劃-實踐篇程式設計師
- 程式設計師如何規劃職業路線?程式設計師
- 淺談程式設計師職業生涯規劃程式設計師
- Java程式設計師—Java職業生涯規劃Java程式設計師
- 程式設計師如何謀劃出月薪3萬程式設計師
- [新年讀書計劃] 技術與學術
- 《程式設計師程式設計藝術》程式設計師
- 2013工作總結與2014工作計劃(程式設計方面)程式設計
- 好程式設計師:Java程式設計師面試秘籍程式設計師Java面試
- 程式設計師必看的書-Ruby程式設計師程式設計師
- 國外程式設計師 VS 中國程式設計師程式設計師
- 《程式設計師的春天:EOM與程式設計師》程式設計師
- 中國程式設計師和外國程式設計師程式設計師
- Lisp程式設計師眼中的其他程式設計師Lisp程式設計師
- 程式設計師歌曲《程式設計師偏頭痛》程式設計師
- 給初學程式設計的人的新年乾貨程式設計
- 好程式設計師分享新手學習雲端計算的規劃程式設計師
- 程式設計師OR非程式設計師,有些程式設計的事需要知道程式設計師
- 程式設計師程式設計師
- PHP程式設計師的技術成長規劃PHP程式設計師