當前位置:
首頁 > 最新 > 教你如何成為10倍速的程序員

教你如何成為10倍速的程序員

國外有個詞叫做10x Programmer,直譯是以一當十的程序員。我並不認為一個技術大牛能完成10個普通程序員的工作,技術大牛會花1/10的時間把工作做完,然後用剩下9/10的時間平衡生活、愛好和未來,所以我僅把10x Programmer叫做10倍速的程序員。

也許有人會覺得這種定義太過狹隘,沒錯,確實狹隘。不同的程序員處在不同的技術水平階段,有著不同的人生追求和生活訴求,我謹以此文讓大家換個角度去審視這個職業,也許你會有些感觸和啟發。


Keep You Sane

這是我很喜歡的這句英文,保持清醒。我希望所有人都能做到工作和生活的平衡,有更多的精力去做自己愛做的事,陪自己愛的人。這是本文的最終目的。

善用工具

業界有句話叫做「不要重複造輪子」,人類就像一台內存有限、CPU有限、硬碟有限的伺服器,既然可以選擇調用API,就不要試圖在本地跑各種服務,那樣只會讓自己變得臃腫、耦合、滿負荷。

像Beyond Compare(代碼比較合併), Notepad ++(關閉時無需保存), Chrome(現代瀏覽器), VPN(google必備), FastStone Capture(截屏、測量、錄屏、取色等)、Chrome 翻譯插件(快速翻譯網頁英文)、反編譯工具(不同語言開發者各異)、CookieInjector(cookie注入工具)等。這些工具可以說是程序員必備的,沒有下載的可以下載,最後一個在github里搜。


不要記憶

不要記憶。這個觀點同樣狹隘。但我認為把JDK源碼看一遍這種事大可不必去做。如果你把JDK裝載腦子裡佔用了太多"硬碟"不說,還浪費了過多精力。我建議的做法是索引。還記的索引的定義嗎?它就像是一本書的目錄。我通常會記一遍JDK的API列表,知道哪個Function對應在哪個庫里。當需要的時候去取就可以。我相信做過資料庫的都應該知道索引的意義和用處。

舉例來說,你記住concurrent包是用來處理多線程的,你記住反向代理有nginx、Apache,你記住python適合計算、Java庫比較多、C++適合原生、Zepto適合移動終端、XML比Json佔用更多位元組、SVG比PNG更適合比例放大、無論Mysql/Oracle/SQLite/Cubrid都是ANSI SQL類似這樣就足夠了,用什麼才去取什麼,無需都記在腦子裡。只需記住,在哪裡能找到答案就可以了。

善於記錄

即使你的思維再清晰,也需要記錄。正如「好記性不如爛筆頭」這句俗語所說。把需要做的工作,手頭做了一半的工作記錄下來,然後可以迅速的切換自己的思維到生活狀態。當然,翻開自己的TODOs也可以迅速切換回工作狀態。現在手機電腦都可以下載各種各樣的記事本,像Evernote、有道雲筆記這種有checkbox、列表的,完成一項勾一項。

博客。這種最原始內容載體,開放於互聯網,不限於某個產品的生態圈。在你記錄博客的同時,你重新審視了自己的技術,並且為了複述清楚,你會更加謹慎的思考技術邏輯。同時,假如你陷入了某些思維誤區,會有熱心的朋友幫你指出,共同進步。


設置鬧鐘

程序員都是專註的。即使你生性不是如此,也會在長期的職業生涯中漸漸變得專註、謹慎、注意細節、邏輯清晰。但是正因為這份專註你可能陷入思維的死循環中。當你低頭專註於某項技術的時候,外界的技術每天都在快速的迭代、增長、創新。正式這份專註可能會讓你錯過很多東西,就好像一個bug嵌套另外一個bug,你整天都在解決bug,然後就陷入了遞歸、for、do...while裡面去了。你需要設置一個觸發器(trigger?break?whatever),讓自己跳出自己的思維,重新認識這個世界。這裡我說的不僅僅是技術,而是一種思維,跳出程序員的思維,也許……你會有女朋友的。

鬧鐘的作用就是叫醒你。當你無法解決一個問題是,放下,換個角度,也許用10分鐘就可以了,而不是你鑽研一個晚上。


廣交朋友

技術是不分城市、國界的。有時候與其閉門造車,不如結交一些像尤雨溪、stormzhang、justjavac、Sean Larkin、caiyongji這樣的人。他們的觀點和技術分享是引領國內技術潮流的(雖然最後一個比較渣),和他們探討技術也是別有一番樂趣。我有幸有上面其中幾位的微信,比如caiyongji的微信是takeurhand。

當你遇到技術難點需要攻克的時候,可能牛人們已經遇到了,與其上網搜索,不如直接和牛人們探討。


善用口訣

口訣是需要記憶的東西。比如快捷鍵、JVM優化方法、SQL的執行順序、資料庫分庫分表技巧、鎖的原理、內存結構。這些是IT界的元素周期表。


放棄完美

String和StringBuffer的區別並不是很大,如果不是在大量重複的循環語句中,不要在乎那點內存浪費。不完美的成果會在快速迭代中解決。也許你過度優化的時間成本足夠為伺服器加一條內存了。

文章來源於網路,如有侵權請聯繫我們,將予以刪除

資源分享

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 程序猿崛起 的精彩文章:

TAG:程序猿崛起 |