1. 程式人生 > >4年計算機博士讀下來的一些感觸

4年計算機博士讀下來的一些感觸

我是在公司工作了4年之後才去讀的博士,以前在公司的時候程式設計師、設計師、專案經理都做過,專案也參與了十幾二十個吧,不記得了。讀博動機不談,但其實壓力是相當大,畢竟大學成績一般,雖然實踐經驗比較豐富,但學術基礎非常差。當時聯絡導師的時候,有一位教授叫我發成績單。發了之後直接跟我說:“你這基礎太差了。”

現在也有很多先工作再讀博的,但那些一般都是在高校工作,比如本來就是老師。像我這種從企業出來去讀的,國外好像比較流行,但國內很少。這幾年跟我類似經歷的中國人只見過那麼2、3個。

簡單說說一些感觸。

1. 英語

最明顯的一個方面就是英語,博士之前我是四級考425的渣渣。現在不說碾壓,但聽說讀寫可以勉強稱得上個精通。

2. 研究方向

研究方向不是非常重要,但又非常重要。看起來很矛盾,但其實卻反映一種現實。李國傑院士在2017年提到:“今年全國萬人計劃青年拔尖人才的評選中,電子資訊領域20餘名候選人中,研究方向是模式識別和計算機視覺的有9人之多,幾乎沒有系統結構和軟體理論方向的候選人。同樣,在何樑何利獎評選中,電子資訊領域55名候選人中,只有一位系統結構方向的候選人,兩位與軟體專業相關的候選人,而光電子學與鐳射技術等光學專業(應屬於電子科學與技術三級以下學科)的候選人有10位。我國計算機科研和產業的弊端是“頭重腳輕,消費側強供給側弱,核心技術缺失”,資訊服務業發展不錯,但軟體和硬體還很弱。在全球企業2000強名單中,美國有14家晶片公司與14家軟體公司,中國尚沒有一家。計算機產業像一顆大樹,必須紮根在系統結構和軟體理論的深土中。

現在研究的趨勢普遍是什麼熱門就往什麼上靠,比如大資料、雲端計算、機器學習、自然語言處理、影象處理等等。最近才看到華為、騰訊招聘博士的宣傳:都是招熱門方向的博士。當然這也無可厚非,畢竟計算機基礎研究對於企業來說並沒有直接利益或者見效太慢。所以方向是基礎研究的博士們可能路就稍微窄一點。

3. 國內外公司

計算機基礎研究在國內外公司的情況感覺也是差很遠。國外公司鑑於人力成本很高等因素,對於每個環節都相當重視,所以基礎研究其實有一席之地。而國內的公司則不同,往往投入很大精力在實現上、在具體應用上、在技術上等。

就拿我的研究方向:architectural assumption來說,國外已經存在了二十多年,最近我還有一項成果被歐洲軟體架構會議("The European Conference on Software Architecture",軟體架構國際頂級會議)錄用。比如圖靈獎獲得者Fernando J. Corbató在ACM Turing Award lecture提到:“design bugs are often subtle and occur by evolution with early assumptions being forgotten as new features or uses are added to systems

”。但是國內大部分人可能聽都沒聽過assumption這個概念。曾經有人跟我說:“我知道你研究的東西很重要,比如不管理可能會有很多風險,但僅僅是風險而已,無非的可能結果就是返工、花些時間修改。這個我相信國內很多企業其實並不非常在意。

當然不否認我可能接觸面還是太窄,有以偏概全之嫌,所以這些方面只能是“僅供參考”。

4. 慢下來

慢下來並不是說節奏慢,而是說要多思考。以前在公司工作的時候,其實用了很多的Ctrl + C,Ctrl + V。儘管早就知道這不是好事,但是有時候是懶,有時候是沒辦法要趕進度,所以還是經常用。需要解決某個問題的時候,經常不是去思考怎麼解決最好,而是直接百度,把網上的解決方案拿來試。這種快餐式的開發方式其實並不是好事,雖然不否認這種方式也可以解決一些問題。

在博士階段算是認識到了思考的重要性。博士們實際上都是一群創新工作者,“複製”這個在工作中無往不利的技能顯得毫無意義。基本上我的很多成果,都花了大量的時間,每項工作幾百次反覆地想、讀、審;一百多次的修改肯定是有的。

5. 重視設計

每一項成果都需要時間打磨,不管是在學術圈還是企業裡,設計階段非常重要。輕設計帶來的後果可能是大量的返工乃至專案的失敗。因為以前在公司工作的習慣,我經常喜歡簡單設計,然後就跳到實現裡去,把大量的精力放在實現上(比如碼程式碼)。這個習慣在公司裡可能還好,因為上面還有牛人撐著,大樹底下好乘涼。即使出現什麼問題,整個團隊也會分擔。但是在博士期間讓我吃了不少虧,因為博士基本是一人一個山頭,自己要對自己負責,每項研究你自己要能撐得起來。

設計不是拍腦袋,一有什麼想法,隨便弄弄,就去實現。設計是一個反覆思考、精化的過程。

6. 重視細節

我國外的導師經常抱怨說我不重視細節,這個其實我也知道是很重要的一件事,但是可能天生對細節不敏感,總是差點意思。細節決定成敗,這個真不是隨便說說,我相通道理大家都懂。