在漫天的星河中,有這樣一顆星,他樸實無華,卻又熠熠生輝,照亮了無數(shù)人的人生。他就是金庸先生。隨著一代大俠的駕鶴西去,“飛雪連天射白鹿,笑書神俠倚碧鴛”,成為絕響。
每一個少年心中,都有一個英雄夢。曾經(jīng)幻想自己,長劍佩腰,浪跡江湖,十步殺一人,如閑庭信步;曾經(jīng)幻想自己,青衣長袍,長蕭悠遠(yuǎn),百年等一人,訴兒女情長;曾經(jīng)幻想自己,墮萬丈淵,偶遇奇人,習(xí)蓋世武功,救民于水火。夢醒時分,心碎了一地,結(jié)局只是一個猥瑣大叔,面對代碼與bug。憂慮著遠(yuǎn)方,焦慮著當(dāng)下,俠義的心腸,英雄的夢想,都逐漸的遠(yuǎn)去。
但是,有人的地方就有江湖。程序員的世界,未嘗不是另外一種武俠的世界。有的程序員,神功蓋世,俠之大者如喬峰,以一敵百;有的程序員,似裘千丈,編程多年,不過一江湖術(shù)士;有的程序員,功名在身,卻深居簡出,低調(diào)隱居,如同風(fēng)清揚。
我們總結(jié)金庸武俠小說里面絕頂高手的共同特征,可以發(fā)現(xiàn)如下特點:
有極強的內(nèi)力修為
至少深入掌握一門絕世武功
對多種神功均有一定了解
我們下面來逐一剖析。
有極強的內(nèi)力修為
令狐沖最開始在習(xí)得風(fēng)清揚的獨孤九劍之后,已經(jīng)可以解決田伯光這樣的senior engineer了。獨孤九劍強調(diào)的是招式的牛逼,無招勝有招,但是,他還是有致命的弱點,那就是內(nèi)功不強。令狐沖在獨孤九劍大成之后,在地下室和principle engineer任我行對練的時候,任我行還是用內(nèi)力震昏了他。直到令狐沖學(xué)到了《易筋經(jīng)》,成功融合桃谷六仙、不戒大師分別注入的八道真氣,方生大師給他輸入的真氣,黑白子全部內(nèi)力,岳不群大部分內(nèi)力后,這個時候的令狐沖,可以說是真正的獨孤求敗了。
這件事情對我們的啟發(fā)是,內(nèi)力不強,招式再多,也會限制最后在技術(shù)領(lǐng)域的成就。由于大學(xué)階段計算機學(xué)習(xí)的整體缺陷,導(dǎo)致很多童鞋畢業(yè)數(shù)年后仍然不具備一些基本的內(nèi)力
a. PV操作
b. 信號量,初值為1的信號量通常做互斥,初值為0的信號量通常做同步
c. 互斥
d. 通信分為同步和互斥
e. LRU
…
很多很多不可盡數(shù),比如有的童鞋,在公司里面都工作幾年了,還是不知道堆和棧的區(qū)別。你這個時候,練再多的招式,懂再多的語言,C/C++/Java/Python…全部都擼過一遍,也難逃程序員的終極宿命,那就是越到后期越悲涼,它的曲線類似:
因為到了35歲,這種大齡程序員,很多公司對他的定位,已經(jīng)是要能夠獨擋一面,解決性能、架構(gòu)等方面的需要突破的問題。這個時候,內(nèi)力不強,計算機的基本原理都不通,就極可能在這個時間點上,技術(shù)生涯自由落體,變地非常被動。
我們認(rèn)為,有兩門基礎(chǔ)課,對程序員練習(xí)內(nèi)力尤其重要,一是微機原理,二是操作系統(tǒng)。微機原理讓我們理解計算機是怎么工作,CPU、CACHE、內(nèi)存、硬盤、外設(shè)彼此間的牽絆;操作系統(tǒng)讓我們理解軟件是怎么工作,系統(tǒng)的硬件資源如何被軟件消耗,各個軟件組件如何互動。這里我們推薦兩門書:
《深入理解計算機系統(tǒng)》
《Operating System Three Easy Pieces》
“Linux閱碼場”公眾號也數(shù)次推薦了這兩門書。相信有很多童鞋已經(jīng)在研讀。
至少深入掌握一門絕世武功
有很多童鞋,一生隨波逐流,今天在這個公司干這個,明天在這個公司干那個,沒有明確的興趣點和技術(shù)成長目標(biāo),這樣很難形成堅實的技術(shù)沉淀。比如你把凌波微步學(xué)一招,打狗棒學(xué)一招,降龍十八掌學(xué)一招,每個都學(xué)一招,一共學(xué)了100招,但是隨便來一個會兩招降龍十八掌的人就可以把你干掉。所以,任何一個頂級的程序員,必有他的成名武學(xué),他在這個領(lǐng)域,成為大師。
喬峰、郭靖 |
降龍十八掌 |
張無忌 |
九陽神功 |
小龍女 |
玉女心經(jīng) |
洪七公、黃蓉 |
打狗棒 |
楊過 |
黯然銷魂掌 |
張三豐 |
太極拳劍 |
… |
… |
現(xiàn)在的技術(shù)領(lǐng)域這么多,熱點層出不窮,追逐熱點固然不是壞事,但也可能讓你筋疲力盡。其實這樣無窮追逐,不如找到一個自己的興趣點,比如Linux內(nèi)核也罷、TensorFlow也罷、GPU多媒體也罷、Android也罷,至少你要在某個領(lǐng)域里面成為高手,這是吃飯的本錢,也是行走江湖的籌碼。就是說,只要想到某個技術(shù)領(lǐng)域,就能想到你名字;想到你名字,就能想到這個技術(shù)領(lǐng)域。
根據(jù)我們的觀察,擁有成名武學(xué)的程序員,到了35歲,甚至40歲后,不僅沒有在江湖上被遺忘,還逐步進入了更加頂級的公司的更加頂級的技術(shù)團隊,待遇之高,達(dá)到如果在微信群透露,就會讓其他程序員活不下去的程度。
對多種神功均有一定了解
既要低頭拉車,又要抬頭看路。有成名武學(xué),也不能故步自封。仍然要看一看別人在玩什么,這是聊天的資本,在廣泛的場合,可以和更多的人好好聊天。不能低估聊天的重要性,不能聊天,尤其是不能和高級領(lǐng)導(dǎo)聊天,會限制自身的可見性。另外一個方面,知識面廣,對自身技術(shù)領(lǐng)域可形成交織互補,因為很多技術(shù),做到后來,發(fā)現(xiàn)它們會交織互融。在金庸武俠小說里,經(jīng)常出現(xiàn)練習(xí)某種武功久久不能突破,但是在練習(xí)了另外一種武功的情況下,突然前一種武功的最后一層就練成了的例子。
下面我們看看頂級高手的武功配置:
張無忌融合九陽神功、乾坤大挪移、太極拳劍和圣火令神功四大蓋世武功為一體,當(dāng)世無敵,此外還精研醫(yī)術(shù)和毒術(shù),術(shù)絕塵寰。
虛竹為少林派弟子,學(xué)以羅漢拳和韋陀掌。意外破解珍瓏棋局后,承得無涯子七十年深厚的內(nèi)力,而其中也含有無涯子本身所學(xué)的北冥神功以及小無相功。獲得了天山童姥傳授的逍遙派天山折梅手以及天山六陽掌和生死符。在繼承天山靈鷲宮后得見靈鷲宮后殿壁上無數(shù)精妙武功。
令狐沖學(xué)會了華山的劍法,寧式一劍、思過崖山洞的其他門派劍法,之后習(xí)得獨孤九劍,在梅莊地牢中習(xí)得吸星大法,最后一個階段,習(xí)得少林易筋經(jīng)。
…
因此,我們總結(jié)頂級程序員的三大特點:內(nèi)功強(1),某個領(lǐng)域深(2),多個領(lǐng)域廣(3)。這三者之間的關(guān)系是:1是2的必要條件(如果基礎(chǔ)不牢,不可能在某個領(lǐng)域深),1+2是技術(shù)生涯成功的必要條件,3是1和2的補充(3是技術(shù)路線發(fā)展的充分條件,不是必要條件)。下面圖示最好到最差的技術(shù)配置:
因此,我們總結(jié)頂級程序員的三大特點:內(nèi)功強,某個領(lǐng)域深,多個領(lǐng)域廣。當(dāng)然,無論武功有多高,都必須具備一個品質(zhì):那就是仁義。
沒有仁義,武功高強如任我行、東方不敗、岳不群、歐陽鋒、成昆者,都不會成為任何人的榜樣。
謹(jǐn)以此文,紀(jì)念金庸先生。
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!