從職高到杭電、浙大、MIT計算機(jī)博士!
作者 - 胡津銘,浙江大學(xué)
周信靜?是我最好的朋友之一,也是我最敬佩的同齡人。我早就想寫寫文章講講他的故事,但由于各種原因,始終未能動筆。適逢前段時間他成功申請到了MIT的CS PhD(計算機(jī)博士),遂趁此機(jī)會講講他的故事,或者說是講講我眼中的他吧。
初識信靜:安靜又狂熱的技術(shù)極客
說實(shí)在的,與信靜的相識頗有幾分偶然。當(dāng)時是2017年春季,那時我們都剛參加完浙大計算機(jī)學(xué)院的研究生考試。為了準(zhǔn)備考研復(fù)試的機(jī)試,當(dāng)時我天天埋頭苦刷PAT。而我剛開始屁顛屁顛地刷PAT甲級題目的時候,就已經(jīng)有一位同學(xué)早早地刷完了的所有題目。ID“無敵大餃子”在PAT的排行榜榜首上孤高地掛著,個性簽名“:)”透露成一股絕世高手的氣息。當(dāng)時我就好奇,這位“絕世高手”究竟是何許人也。某次考研群里討論問題的時候,信靜現(xiàn)身回答了幾句,我敏銳地注意到了他的QQ昵稱就是“無敵大餃子”。懷著巴結(jié)大神的忐忑不安心情,我申請了信靜的好友;他很快通過了。然而那時候我的水平還太次,并未達(dá)到能與他交流的程度,所以只是怯怯地打了個招呼,就沒再進(jìn)一步交流。
后來我們考研復(fù)試要確定實(shí)驗(yàn)室。彼時的我還有些迷茫,不知道該投遞哪個實(shí)驗(yàn)室。于是我想,不如問問大神的意向吧。信靜告訴我說他應(yīng)該會去數(shù)據(jù)庫實(shí)驗(yàn)室。于是,抱著跟著大神走的想法,我也同樣投遞了數(shù)據(jù)庫實(shí)驗(yàn)室。后來我們都很輕松地拿到了數(shù)據(jù)庫實(shí)驗(yàn)室的offer。他沒有任何猶豫就選擇了接受,而那時的我還并不懂他對數(shù)據(jù)庫的熱愛;而我則猶豫糾結(jié)了很久,最后也選擇了數(shù)據(jù)庫實(shí)驗(yàn)室。
2017年暑假,我們與其他兩位比較熟悉的考研同學(xué)商量,打算在入學(xué)之前就提前組一個宿舍。于是我和信靜前往學(xué)校辦理宿舍手續(xù)。在土木科技館的門口,我們見到了彼此的第一面。信靜高高瘦瘦,身材與我頗有幾分相似,一身都是運(yùn)動裝束。見到我之后,信靜靦腆又羞澀地笑了笑,打了個招呼,”你好,我是周信靜?!拔疑锨昂退樟藗€手,”百聞不如一見啊,我是胡津銘,以后就靠你帶我了?!半S后拍了拍他的肩以示好。他被我拍了之后有些不適應(yīng),往邊上讓了一小步,又略有些尷尬地笑了笑說,“互帶,互帶?!?/p>
之后我們在校園里邊逛邊聊。我一開始試圖找一些共同話題,如動漫、電影之類的聊聊,但信靜面對任何話題都是只說三兩句,搞得我像追求女生時尬聊找話題的男生一般。無奈之下,我只能問他最近在干嘛。誰料這一下就打開了他的話匣子,他告訴我他最近在一家數(shù)據(jù)庫創(chuàng)業(yè)公司實(shí)習(xí),并開始滔滔不絕地講他在那邊做的工作,諸如什么重寫hash map(哈希表)比STL快幾十倍啦,什么Raft、PAXOS啦。這眾多名詞的突然襲來打得我是措手不及。他就這樣臉色微紅、語氣略有些急促地開始講那些數(shù)據(jù)庫技術(shù),手指不停地筆劃,告訴我這些工作有多么得激動人心,而這與剛剛羞赧的、不善言辭的他判若兩人。看著這樣的他,我突然生出了一種感覺:這家伙以后可能是會改變數(shù)據(jù)庫領(lǐng)域的。
再識信靜:低調(diào)逆襲的奮斗者
雖然很遺憾最后因?yàn)橐恍┰蛭覀儧]能成功組成宿舍,但是開學(xué)之后我們還是會常常討論一些學(xué)術(shù)問題。我倆的背景頗有些不同:我本科是畢業(yè)于航天專業(yè)的,所以計算機(jī)基礎(chǔ)很是缺乏,因此我當(dāng)時更傾向于好好補(bǔ)一些基礎(chǔ);而他本科則是正統(tǒng)科班出身,基礎(chǔ)很是扎實(shí),而且他有強(qiáng)烈的做research的意愿,因此會大量地去看paper、提idea與我討論、并做實(shí)驗(yàn)嘗試。在與他的討論中,我常常被他深不見底的數(shù)據(jù)庫、系統(tǒng)的知識儲備所震驚?,F(xiàn)在回顧起來,當(dāng)時初入科研門檻的我們其實(shí)提出了不少有意思的想法。比如我們在2017年的時候就預(yù)見到了機(jī)器學(xué)習(xí)會在數(shù)據(jù)庫/系統(tǒng)領(lǐng)域有廣泛的應(yīng)用,甚至我們在課堂演講的時候還說了這么一句話“任何需要決策的地方、調(diào)整參數(shù)的地方,也許都可以使用機(jī)器學(xué)習(xí)”(when there is a decision needed, there is potentially ML needed)。我們也嘗試了一些機(jī)器學(xué)習(xí)應(yīng)用在系統(tǒng)上的想法 ,不過很遺憾的是,那時候我們并沒有比較好的實(shí)驗(yàn)條件與機(jī)器,這些想法最終都沒能變成完整的工作。
如果僅僅是這樣的話,那信靜在我心中只是一位基礎(chǔ)扎實(shí)、動機(jī)強(qiáng)烈(highly self-motivated)、刻苦勤奮的很強(qiáng)的朋友罷了。真正讓我震驚的是無意中得知的信靜之前的故事。
有次我們在討論算法題,信靜隨意說了一句自己之前有一些ACM經(jīng)歷。我閑著無聊,想搜搜看他之前的ACM成績。這一搜不得了,無意中搜到了這樣一條推送:不忘初心 篤行致遠(yuǎn)——記軟件技術(shù)122班畢業(yè)生周信靜?。我這才驚訝地得知原來信靜不止是從杭電辛苦地考上浙大計算機(jī)的,他甚至之前還是專升本到的杭電!震驚之下,我把這條推送發(fā)給了信靜,表示了自己的膜拜與佩服之心。誰想到信靜轉(zhuǎn)而說出了讓我更震驚的事情。信靜尷尬一笑,說自己小時候不懂事,也沒啥人管,天天就知道亂玩。到了初三的時候,職高來他們初中宣傳,一忽悠,信靜就一沖動,放棄了中考而選擇了去職高。結(jié)果在職高讀到第三年,他突然醒悟,覺得自己不想就這樣度過一生,于是開始奮發(fā)圖強(qiáng),努力學(xué)習(xí)。無奈積重難返,且偏科嚴(yán)重,后來仍然只有考上一所大專。信靜并沒有因此而絕望,而是進(jìn)入大專之后,繼續(xù)維持著之前努力的勢頭,積極學(xué)習(xí)高質(zhì)量的公開課,最終完成了專升本和考研到浙大的逆襲。職高->大專->專升本->考研到浙大!我實(shí)在無法想象信靜背后是付出了多少努力,才能走出這樣的道路。
附:這里有信靜在大專二年級時寫的一些項(xiàng)目:raft-core。大家一看代碼就知道他當(dāng)時的水平了。誠實(shí)地說,現(xiàn)在的我仍然距此仍有相當(dāng)距離,很難想象當(dāng)時的他付出了多少努力。
與信靜的科研合作:永不放棄的堅定前行者
又過了一段時間,由于一些原因,我轉(zhuǎn)出了原來的實(shí)驗(yàn)室。由于信靜所在的數(shù)據(jù)庫實(shí)驗(yàn)室已經(jīng)基本沒有同學(xué)做數(shù)據(jù)庫(都去做機(jī)器學(xué)習(xí)了),故信靜仍然常常來找我這個不做也不懂?dāng)?shù)據(jù)庫的人來討論想法(idea)、實(shí)驗(yàn)和寫作方面的問題。某天晚上,信靜突然非常激動地跑到我的寢室,和我說他新想出了一個想法。這個想法是針對一種新的存儲硬件NVM的(Non-Volatile Memory,非易失存儲)。這個想法的動機(jī)(motivation)是來源于NVM的一個特點(diǎn):NVM的讀很快,具有接近DRAM(Dynamic Random Access Memory,動態(tài)隨機(jī)存取存儲器,即我們平時所說的內(nèi)存)的速度,但是寫比DRAM慢很多。這樣的特點(diǎn)使得NVM上的寫在很多時候成為了一個瓶頸,因此這篇工作就希望能夠降低NVM的寫的頻率。使用的方法啟發(fā)于以前一篇數(shù)據(jù)庫領(lǐng)域的論文。那篇論文設(shè)計了一種混合多階段索引(hybrid multi-stage index)來減少寫操作。啟發(fā)于此,信靜設(shè)計了一個雙階段(dual-stage)的索引來減少NVM上的寫操作。(關(guān)于這篇論文詳細(xì)的說明可以參考這篇文章)信靜有些忐忑又有些期待地看向我:“你覺得這個想法怎么樣?靠譜嗎?做出來能中頂會嗎?”我很肯定地告訴他:“我覺得非常靠譜,做出來的話應(yīng)該能中?!毙澎o歡欣雀躍地說:“我也這么認(rèn)為!那我就去實(shí)現(xiàn)了!”
在這項(xiàng)工作中,還有一些讓我印象深刻的事情。在與以前的相關(guān)工作進(jìn)行實(shí)驗(yàn)對比的時候,我們發(fā)現(xiàn)之前的工作基本都沒有開放源代碼(開源)。數(shù)據(jù)庫、系統(tǒng)方面的論文實(shí)現(xiàn)是極其復(fù)雜且困難的,常常會耗費(fèi)巨大量的力氣,因此如果之前的工作有開源的話,那就會大大減少復(fù)現(xiàn)的代價;否則的話,則可能要花大量的精力在復(fù)現(xiàn)論文上。信靜抱著試試看的想法給作者們寫了郵件,想看看能不能要到源代碼,這樣就可以省下大量精力。遺憾的是,所有最新的相關(guān)論文的作者都表示無法提供源代碼,但是有幾位作者表示,如果信靜復(fù)現(xiàn)論文的過程中碰到問題的話,他們愿意提供幫助?!斑@怎么辦呢?要不就比較一些老一些的但是開源了的工作?”我問信靜?!安恍校@樣的話,實(shí)驗(yàn)結(jié)果就缺乏說服力了。不提供代碼就不提供代碼吧,我自己來實(shí)現(xiàn)!”信靜堅定地回復(fù)我。后來,信靜就憑借自己驚人的工程能力,將所有需要對比的工作都復(fù)現(xiàn)了出來。
這項(xiàng)工作在做了半年之后進(jìn)行了第一次投遞,投遞在VLDB2020(VLDB是數(shù)據(jù)庫領(lǐng)域最頂尖的兩個會議之一)上。不幸的是,第一次審稿(review)結(jié)果出來,審稿人(reviewer)的意見都比較負(fù)面,主要的批評在于工作的實(shí)驗(yàn)是在NVM的模擬器上做的,審稿人覺得這不太具有說服力,希望能在真實(shí)硬件上做實(shí)驗(yàn)。審稿人寫道(此為翻譯):“如果是以前也就罷了,那時候Intel沒有提供硬件給外界使用,那不得不用模擬器。現(xiàn)在Intel已經(jīng)提供硬件了,那么沒理由只是在模擬器上做實(shí)驗(yàn)?!薄昂?!提供個啥!明明只有和Intel有合作的企業(yè)才能拿到?!毙澎o很委屈地和我吐槽。我當(dāng)時和信靜說,實(shí)在不行的話,就再投下一個會議吧,我想總有審稿人愿意接受模擬器上的實(shí)驗(yàn)結(jié)果的吧。信靜不服氣,覺得不能就這樣放棄。后來他自己想辦法聯(lián)系到了阿里的一個數(shù)據(jù)庫的組去實(shí)習(xí),并與實(shí)習(xí)的組商量好,在實(shí)習(xí)期間把這篇工作的實(shí)驗(yàn)給做了。在真實(shí)硬件上重新做了實(shí)驗(yàn)之后,信靜再次將這篇論文提交到VLDB。審稿人看到這樣的改進(jìn)之后都非常高興,紛紛給了接收(accept),這篇工作就這樣中了。
信靜想辦法拿到真實(shí)NVM硬件做實(shí)驗(yàn)的這件事情讓我意識到了自己和信靜的一個巨大差距的地方:信靜是能夠打破限制(break the box)來解決問題的人(problem solver),碰到?jīng)]有NVM硬件這樣的限制,他會想辦法打破限制;而我則是一個只敢在限制內(nèi)行動的人。
三識信靜:沉默著扛起所有壓力的男子漢
接下來要說的這件事情,應(yīng)該說是信靜人生最曲折最悲慘的一件事情,卻也是最讓我震驚而敬佩他的一件事情。
2019年暑假的某天晚上,我問信靜VLDB的審稿結(jié)果出來了嗎。信靜突然回我說:”我回家了,我爸因病去世了?!?/p>
信靜的父親是因?yàn)槭彻馨┒ナ赖?。信靜告訴我說他父親是在信靜研究生入學(xué)前幾天查出來食管癌晚期的,而像他父親那樣的病人,平均生存周期一般是不超過半年的,他父親能堅持一年半多,家里人已經(jīng)很知足了。我說你這幾年怎么都不和我們說這事兒。他覺得也沒啥好說的,說了也幫不上什么。我眼中彷佛看到了當(dāng)年收到確診噩耗的信靜:他也許先是當(dāng)場愣住了,沒想到一直安分守命的他們會遭遇這樣的天災(zāi);而愣了一會兒之后,他握緊拳頭告訴自己,自己已經(jīng)是一個頂天立地的男子漢了,能夠也必須扛起家里的負(fù)擔(dān)了。盡管家里很窮苦,他也沒有和任何其他人去說這件事情,也許是不希望大家不必要地去可憐他;他只是自己默默地找了個遠(yuǎn)程實(shí)習(xí),一邊讀研一邊賺錢給家里提供醫(yī)藥費(fèi)的支持。他什么也沒有說,什么也沒有抱怨,沉默地扛下了所有壓力。男子漢所謂頂天立地,不外如是。
離開校園后的科研:時間是海綿里的水
在那之后,許是上天不忍心再捉弄信靜了,他的運(yùn)氣終于好了起來。DPTree的論文被接受了。而之后,這篇論文的一位審稿人 Joy Arulraj (他是佐治亞理工的助理教授)因?yàn)樾澎o的出色工作而主動聯(lián)系他尋求合作。在得知了信靜還沒有攻讀博士后,Joy還主動找了funding(資金支持)并邀請信靜去佐治亞理工讀博。
到了秋招,我們都要找工作了。我和信靜都非常希望能和彼此做同事。我先拿到了一家高頻交易公司的offer,而后信靜也非常希望能拿到這家公司的機(jī)會,我們一起當(dāng)同事,但很遺憾這家公司秋招時候的系統(tǒng)開發(fā)崗位只有1個名額,不再繼續(xù)面試信靜。無奈之下,信靜只能再去尋找其他大公司的數(shù)據(jù)庫組的機(jī)會。后來我率先拿到了騰訊云數(shù)據(jù)庫內(nèi)核組的offer,之后介紹信靜去面了這個組,信靜也沒有辜負(fù)大家的期望順利地砍下了SSP。這本是我們成為同事的絕佳機(jī)會,然而我已經(jīng)先答應(yīng)了那家高頻交易公司,而我向來是言出必行,故而也就未選擇去騰訊與信靜共事,現(xiàn)在想來還非常后悔和遺憾。
信靜畢業(yè)去了騰訊,在那個組做了許多很不錯的工作。更厲害的是,信靜還利用業(yè)余時間與Joy合作做科研。那時候,信靜工作日的白天上班,晚上和周末擠時間做科研。我們同屆的幾位朋友基本上都因工作忙得焦頭爛額,掙扎在廠子里日復(fù)一日的搬磚之中,而他卻能在將工作任務(wù)完成得非常出色的同時,還做了一項(xiàng)頂級的科研工作,真是令人敬佩。他們的這項(xiàng)工作SpitFire最終發(fā)在SIGMOD2021上(SIGMOD是數(shù)據(jù)庫領(lǐng)域最頂級的兩個會議中的另外一個)。
博士申請:百二秦關(guān)終屬楚
讀博是信靜多年的夢想。我剛認(rèn)識信靜不久的時候,他就問過我了不了解申請美國大學(xué)博士的事情。他問我說有沒有認(rèn)識去CMU(卡耐基梅隆大學(xué),美國計算機(jī)排名前四的大學(xué))計算機(jī)系讀博的同學(xué)。當(dāng)時我告訴他說,這個級別的大學(xué)極難申請,浙大一年也不一定能有一位申請成功。說實(shí)話,那時候我和信靜的交流還不多,對他的了解和認(rèn)識都不夠,心里還覺得他有些“好高騖遠(yuǎn)”,甚至是“不知天高地厚”;現(xiàn)在想來,當(dāng)時的我是燕雀不知鴻鵠之志了。到了2020年的時候,我才知道為什么信靜當(dāng)時會問CMU的事情了。實(shí)際上,信靜入門數(shù)據(jù)庫的時候,用的是CMU的Andy Pavlo開放在網(wǎng)上的公開課程15-445和15-721;Andy的課程讓他產(chǎn)生了對數(shù)據(jù)庫的強(qiáng)烈興趣,并一直持續(xù)至今,也讓當(dāng)年的信靜產(chǎn)生了對CMU的憧憬與向往。值得一提的是,信靜的SIGMOD2021的論文,三作就是Andy,不得不讓人感慨命運(yùn)的神奇。
2020年年底,信靜開始申請美國的博士機(jī)會,并且只申請了幾所頂級學(xué)校,我也一起幫他參考了一些文書方面的工作。在申請的學(xué)校中,信靜出人意料而又情理之中地拿下了MIT計算機(jī)系的PhD offer,并選擇去MIT就讀。說出人意料,是說考慮到信靜的故事背景,他也許是唯一一個從職高大專走到MIT PhD(或同等水平的學(xué)校)的人,就我所知是前無古人,后會不會有來者我也說不準(zhǔn);說情理之中,是說以我對他的實(shí)力和秉性的了解,他能拿到MIT的offer我毫不意外,甚至可以說這也只不過是他的一個新起點(diǎn),他的征程才剛剛開始。目前,MIT的數(shù)據(jù)庫實(shí)驗(yàn)室已經(jīng)有三位教授向信靜拋出了橄欖枝,這其中就包括數(shù)據(jù)庫領(lǐng)域現(xiàn)存的唯一圖靈獎獲得者M(jìn)ike Stonebraker,而Mike已經(jīng)有好幾年沒有招學(xué)生了。
生活中的信靜
我與信靜的交流頗多,甚至我們現(xiàn)在還是室友——他從騰訊離職以后,我們與另外一位好朋友三人一塊合租。生活中,信靜最令我印象深刻的當(dāng)屬他的勤奮。除了每天的鍛煉身體以外,我?guī)缀鹾苌倏吹叫澎o在做學(xué)習(xí)、工作以外的事情——而他最大的熱愛就是在數(shù)據(jù)庫與計算機(jī)系統(tǒng)上,幾乎將全部的時間與精力投注于其上。前兩天,我們?nèi)嗽诩依锪淖约簶I(yè)余時間有什么興趣愛好,當(dāng)我們紛紛說出自己愛好的時候,信靜卻微笑著說:“對我來說,數(shù)據(jù)庫就是我的興趣愛好?!倍?,由于信靜多年以來一直堅持跑步,他也擁有強(qiáng)健的體魄,這更支持著他數(shù)年如一日般地專注學(xué)習(xí)??梢哉f,信靜是我熟悉的人中最為勤奮的一位。這里順帶一提,就我個人觀察到的情況而言,可以說計算機(jī)領(lǐng)域多數(shù)情況下就是這樣一個領(lǐng)域,天賦在其中的作用或許不算多大,而努力與勤奮才是最重要的。我從未見過一個勤奮努力并使用正確學(xué)習(xí)方法卻學(xué)不好計算機(jī)的人,也沒見過任何一個“聰明”但卻不勤奮努力但卻能學(xué)好計算機(jī)的人。一分耕耘,一分收獲。
除此以外,信靜還是一位非常溫柔善良的青年。記得2020年有一天晚上,我在上海某醫(yī)院看病。由于某些原因,我個人的行動能力出了點(diǎn)問題。信靜知道之后二話不說,從家里趕到醫(yī)院,全程陪著我看完了病,并送我回家,確認(rèn)我平安無事之后才離去。印象最深刻的還是信靜剛到醫(yī)院時,從包里掏出了兩根(有點(diǎn)壓壞了的)香蕉和一個蘋果。我說你這是干嘛。信靜淳樸一笑,說,怕你餓了,給你帶點(diǎn)水果充饑。我笑了笑,說,還好你帶的不是橘子。
不過,很高興的是,信靜近日脫離了我們的單身隊(duì)伍,從此業(yè)余生活終于不再是一味的數(shù)據(jù)庫了(笑)。
結(jié)語
信靜出生于浙江一個貧困的小島。盡管早年他對讀書沒任何興趣,因而進(jìn)了職高大專,但他后來奮起讀書,立足杭州,放眼世界,最終驚人地拿到了MIT CS PhD的offer,他的奮斗歷程毫無疑問是極其勵志的。更難能可貴的是,除了他出色的技術(shù)水平與學(xué)術(shù)研究水平以外,信靜還是一位非常溫柔、善良、誠懇、堅毅、果敢的青年,盡管生活在很長的一段時間內(nèi)并未溫柔地對待他,但他仍然對生命充滿著熱愛。抬頭仰望星空,低頭腳踏實(shí)地,這是對他的最好寫照。他是我永遠(yuǎn)的學(xué)習(xí)榜樣。
最后,希望所有出身貧寒的孩子,都能抬頭看天,向著自己的夢想奮斗、努力;希望所有以前荒廢了時光,現(xiàn)在卻想“浪子回頭”的同學(xué)都能相信自己,踏實(shí)勤奮地去學(xué)習(xí),你永遠(yuǎn)想象不到未來的你會有多強(qiáng)大;希望所有出身“低下”的同學(xué)都能不再自卑,為自己的經(jīng)歷感到自豪;希望所有心中有夢的同學(xué),都能腳踏實(shí)地而又勇敢地追尋自己的夢想。
謹(jǐn)以此文表達(dá)我們的這些希望。
轉(zhuǎn)載自知乎:https://zhuanlan.zhihu.com/p/360390223