一位程序員工作10年總結了這些忠告

展望未來,總結過去10年的程序員生涯,給程序員小弟弟小妹妹們的一些總結性忠告。

1、自己的戶口檔案、養老保險、醫療保險、住房公積金一定要保管好。

由 於程序員行業每年跳槽一次,我不隱瞞大家,我至少換過5個以上的單位,這期間跳來跳去,甚至是城市都換過3個。還好戶口沒丟掉,其他都已經是亂了,好幾個 城市裏,都有交過三金,甚至是一個程序的2個區裏交的都有,那些東西,10年後,會變得很重要。你買房子若有公積金,可以取出來,貸款利率也會比較低一 些,有孩子了,還需要上學,生病了還需要醫療保險。

2、讀>寫代碼>讀>寫代碼(日復一日)

關於如何高效學習編程我要給出的第一條建議是在閱讀代碼和編寫代碼之間循環往復。閱讀代碼(書籍,博客文章,開源代碼)將幫助你查看解決方案,瞭解最佳做法,並大致瞭解語言或系統。但是在你這樣做之後,你需要自己實際去寫代碼。可以是任何東西。可以是小的編碼練習或業餘項目,但確保你能將之付諸於實踐,並用某種方式使用你學到的東西。如果你不這樣做,那麼你會發現自己面對編輯器會無所適從無從下手。

所有事情所花費的時間總是比你預期的要長

特別是在編程中,即使一切進展順利,我們也很難對功能所需的時間做出正確的預算。並且,開發軟件時碰到各種意想不到的問題是非常常見的。一個簡單的合併操作會導致一系列小bug,一次框架升級意味着一些函數必須改變或者一些API不按照你想象的那樣工作。

Hofstadter Law( 霍夫施塔特定律)其實道出了真諦:做事所花費的時間總是比你預期的要長,即使你在預期中已經考慮了 Hofstadter Law( 霍夫施塔特定律)。

先了解現有的代碼

大多數的編碼都需要以某種方式改變現有的代碼。即使是新功能,也需要適應現有的程序。所以,在你加進去新的內容前,首先需要了解當前的解決方案。否則,你一不小心就很有可能會打破現有的功能。這意味着,閱讀代碼和編寫代碼都是必要的技能。這也是爲什麼看似微小的變化仍可能需要很長時間才能解決的原因之一,因爲你首先必須瞭解上下文。

成爲開發者社區的一員

當我還在大學的時候,我總是懶得參加各種社團和俱樂部活動。當我找到我的第一份開發工作時,最不樂意做的也是和其他開發者閒聊閒逛。

但是我錯了。

同行聚會和進入開發羣是很有趣的事情,是結識開發者夥伴的好地方。如果你想在這個行業裏做到最好,就儘量不要消極被動。與坐在你旁邊的人交談,提供你的幫助,分享你的經驗。每個人都喜歡談論自己的經歷,更何況你也許會遇到很多潛在的僱主。

在那裏你會碰到許多需要教練的初學者團體,你可以指導新手,給他們提供練手的機會,甚至贊助活動。

當然,要學習別人的開發技巧並且勇於實踐,要熱情地歡迎不同意見的人講話,勇敢地聽取他們的意見。

編程並不是一件什麼神祕的東西

編程跟其他東西一樣,是一門技術。跟語言學習一樣,有需要掌握的語法和詞彙;跟數學一樣,有解決特定類型問題的流程方法;像各種工藝和藝術創作一樣,有技術、工具以及人們經年累月發展起來的最佳實踐方案,專門解決各種不同類型的任務,你可以自由的使用、修改或棄之不用。

但是編程也不是每個人都可以學好學懂學會的,曾經面試過從培訓班出來的新人,一問三不知,最基本的知識點都模糊不清,一問他以前的專業職業,原來是高中沒畢業,去了工廠做工人,覺得太辛苦,後來看到培訓機構說沒基礎也可以學習編程,就把掙的錢全送給了培訓機構去學習編程。結果呢?很清楚,他選擇了不適合他的道路,註定沒有出路。

雖然編程不神祕,但是它和美術、音樂、藝術、銷售、設計等一樣,也分人,也不是每個人都能學會都能幹的。

這是一場馬拉松,不是百米賽跑

這三個月對我來說絕對不容易。這三個月,我每週都要辛苦六天用於找工作和學**。不過我還是把自己照顧得很好。

有的時候,我會和朋友一起學。有的時候,我會找個咖啡館自己一個人學,或者去 Hack Reactor 提供的休息室學。每週我還會和教練報告我的進度。

在這個過程中很容易耗盡熱情。那麼就吃好,睡好,繼續學。

而且會很容易感到孤單。和一羣學友們在一起會好一點。

建議:要有長期作戰的心理準備,照顧好自己的身體。

開發效率

開發效率可以用這些方式提升:

1 . 構建公用工具類,方便大家使用

2 . 使用開源的一些包,例如 ORM 思想的數據庫等

3 . 可以很快的找到問題。開發中,找 bug 的時間,往往是很多的。我用的方法有3個: 使用 try catch; 攔截所有 crash 到我指定的地方;超多的 Log,Log 有統一的控制開關。

4 . 借力:數據上報用燈塔,崩潰上報用 bugly,公司 KM 上很多經驗,拿過來用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章