1987年,36年前,我考上了武漢大學(xué)計算機系。
我在圖書館里看了一本書,《硅谷之火》,建立了自己一生的夢想。
看完這本書后,我熱血沸騰,激動得睡不著覺。當(dāng)天晚上,星光很亮,我在武大操場上,走了一圈又一圈,走了整整一夜。我心里有團火:我要創(chuàng)辦一家偉大的公司。夢想之火,在我心里徹底點燃了。
但是,一個大一新生,一個剛從縣城出來的年輕人,什么也不會,什么也沒有,就想創(chuàng)辦一家偉大的公司,談何容易!
這么離譜的夢想,該如何實現(xiàn)呢?我完全理不清頭緒,干脆就不想了,還是先把書讀好。
如何才能把書讀得不同凡響呢?我琢磨了一個當(dāng)時很夸張的目標(biāo):兩年修完大學(xué)四年所有學(xué)分。那個年代,學(xué)分制剛剛開始,這樣的想法,還是石破天驚的,很少有人想到。
當(dāng)年我是如何做到的?今天時間有限,我給大家講講如何搞定三個難點。如果你正好在讀大學(xué),也許還用得上。
第一,如何選課?
上兩倍的課,寫兩倍的作業(yè),過兩倍的考試,這是用地獄模式上大學(xué)。辛苦不要緊,關(guān)鍵是如何選課。我自己琢磨好久,還是一頭霧水,下決心找個人問問!
我多少有點社恐,當(dāng)時也是沒辦法,厚著臉皮,到大三、大四同學(xué)宿舍,挨個敲門找老鄉(xiāng)。
這招在大學(xué)里特別好使,我很快就找到了幾個,學(xué)長們特別熱情,講了幾小時:把整個課程體系都講了一遍,哪些課容易、哪些課難,哪些課必須先上、哪些課可以后上,最后還八卦了各個老師的奇聞逸事。走的時候,他們還把用過的教材和教輔,甚至課堂筆記,都打包送給了我。
聊完,我感覺突然開了天眼,大學(xué)怎么讀,我基本清楚了。
就是這次經(jīng)歷,我有了一個特別重要的收獲:遇到問題,第一時間找個懂的人問問。很多人覺得,自己遇到的問題,只能自己琢磨、自己搞定。實際上,無論你遇到什么問題,別人可能都遇到過,都解決了,甚至都有標(biāo)準答案,你只要找人問問就可以。
第二,如何自學(xué)?
上兩倍的課,這意味著大量課程要靠自學(xué)。我們計算機系是從數(shù)學(xué)系分出來的,相當(dāng)于半個數(shù)學(xué)系,課程特別難。很多同學(xué)覺得《高等數(shù)學(xué)》很難學(xué),其實,我們是不學(xué)《高等數(shù)學(xué)》的,我們學(xué)的數(shù)學(xué)系的專業(yè)課,比《高等數(shù)學(xué)》難多了。
自學(xué)的時候,經(jīng)常遇到看不懂的地方,一卡就卡很久,特別痛苦。怎么辦呢?只能硬讀,就是硬著頭皮讀,讀著讀著,終于開竅了。
遇到實在看不懂的,先跳過去,咬著牙往下讀,像看小說一樣,堅持從頭讀到尾。一本書,這樣反復(fù)多讀幾遍,基本就能搞懂。
后來我才明白了其中的道理:知識不全是線性的,大部分是網(wǎng)狀的,知識點之間不一定有絕對的先后關(guān)系;前面內(nèi)容看不懂,跳過去,并不影響學(xué)后面的;后面的學(xué)會了,有時候更容易看懂前面的。
第三,如何搞定點名?
修兩倍的課程,上課時間肯定會沖突。一旦缺課,就怕遇到老師點名。在大學(xué),點名是大事。怎么辦呢?
老師點名的目的,就是怕大家不認真學(xué)習(xí)。我想出的辦法是,如果我能給老師留下深刻印象,讓他知道我沒有偷懶,應(yīng)該就可以了。
于是,上課時,我直接坐到第一排,坐到老師很容易看到的地方;老師提問的時候,我總是第一個舉手;課間休息時,有不懂的地方,我也主動找老師請教。
經(jīng)過我的努力,系里大多數(shù)老師對我的印象都不錯,缺課就不是事了。
就這樣,我克服了重重困難,終于搞定了四年所有學(xué)分!
我學(xué)的是計算機,光修學(xué)分是不夠的,把程序?qū)懞貌攀怯驳览?。所以,我定的第二個目標(biāo)是:成為一個優(yōu)秀的程序員。
30多年前,電腦非常少。大一時,全年級同學(xué)上機實踐,只有一臺68000小型機。40多年前的小型機,性能遠不如10年前的手機,還掛著20多臺終端,慢得令人發(fā)指。就是這樣的條件,還不能放開了用,上機還需要憑票,每個人一周只有兩張,每張2小時。每周就幾小時時間,時間太短了,要把程序?qū)懞?,實在太難了。
于是,我有空就跑到機房門口排隊,蹭電腦。碰到同學(xué)沒來,我就可以撿漏。如果實在排不上,我就站在邊上看同學(xué)上機,過過眼癮。如果遇到同學(xué)不會,我就去指導(dǎo)一下,特別有成就感。
為了有效利用上機時間,我每次都提前在紙上把代碼寫好,到了機房后就可以直接輸入了。
怎么輸入更快呢?我想了一個餿主意:用打印紙把鍵盤拓下來,貼在課桌上,然后,無論上什么課,一邊上課,一邊敲桌子,偷偷練打字。過段時間,我發(fā)現(xiàn)周圍的同學(xué)都這么干了。上課的時候,經(jīng)常聽到有人敲桌子,把老師都搞蒙了。
實在沒電腦用的時候,我還有一個絕招:在紙上寫程序。教材中的示范程序,往往都是寫得最好的。我合上教材,就在紙上用自己的方法重寫所有示范程序,反復(fù)寫,直到寫到同樣的水平。
我上的第一門編程課是Pascal語言程序設(shè)計。等我上大二的時候,有同學(xué)來告訴我,我寫的Pascal作業(yè)被老師編入了新版教材。我非常高興,我寫的程序得到了老師的認可。
后來我就開始在老師的實驗室?guī)兔ψ稣n題。在實驗室的電腦前,熬過一個又一個通宵,我逐步練成了同學(xué)們眼里的“技術(shù)高手”。
幾年前,我在知乎上還看到了一段匯編語言的代碼,那是我在大二時候?qū)懙摹.?dāng)時編寫的是DOS系統(tǒng)上的內(nèi)存管理工具,叫RI,這個小工具曾在國內(nèi)很火,用的人很多,我索性就全部開源了。
時隔30多年,現(xiàn)在還有人討論我的代碼,作為一個程序員,我挺自豪的。
接著,我挑戰(zhàn)第三個目標(biāo):在一級學(xué)報上發(fā)篇論文。對在校的大學(xué)生來說,這個目標(biāo)相當(dāng)困難。
我去找我的老師張德向教授請教,他建議我把之前研究計算機病毒的思考整理一下,寫成論文試試。
那個時候,國內(nèi)剛剛經(jīng)歷了第一次計算機病毒暴發(fā)。我花過不少時間琢磨,甚至還寫過一款殺毒軟件,算國內(nèi)最早的一批吧。
這個就算學(xué)術(shù)成果嗎?我心里沒底,但還是按張老師的建議,壯著膽子整理成論文。
那時論文都是寫在稿紙上。我洋洋灑灑寫了幾十頁,厚厚一沓稿紙。寫完后,我拿給幾個好朋友看,大家給我提了不少意見,有位同學(xué)最后說,字寫得實在不怎么樣,還告訴我,“字寫得好看,機會就大”,于是,他自告奮勇,辛辛苦苦花了3天時間幫我謄寫了一遍。
然后,我就把論文寄給了權(quán)威的學(xué)術(shù)期刊《計算機研究與發(fā)展》。差不多過了半年,我收到回信說,論文被錄用了!當(dāng)時,我特別激動。真沒想到,第一次投稿就被錄用了。
每次想到這件事,我都覺得:敢想敢干非常重要,年輕人要有年輕人的魄力,很多事情沒有想象的那么復(fù)雜,去試試就知道了。
這就是我在武大的求學(xué)生涯。很多人年輕時都有類似的經(jīng)歷,因為一本書、一部電影,或者一個人,夢想就被點燃了。
我幸運的是,我真的把這個夢想當(dāng)回事,想辦法拆解成一個又一個可實現(xiàn)的目標(biāo),然后竭盡全力去實現(xiàn)。
夢想的力量極其強大,我想盡辦法,把各種不可能的事情,變成了可能。這段經(jīng)歷為我以后的人生奠定了堅實的基礎(chǔ)。
(摘自小米科技創(chuàng)始人雷軍的2023年度演講,本刊有刪節(jié))