大學裡專業的選擇將有可能決定你一生的航向。我一直認為自己喜歡法律,希望將來做一名律師,哥倫比亞大學新生入學時,沒有規定專業,學生可以表明自己的大概意向,我毫不猶豫地填了「政治科學」(politicalscience)。
大學二年級,我開始主修「政治科學」,這屬於一種「法學博士預科(prelaw)」的專業。但是,上了幾門課後,我就發現自己對此毫無興趣,便開始和家人商量轉系的事情。
我入學時,學校安排我加入了一個「數學天才班」,那裡集中了哥大所有的數學尖子,一個班只有七個人。我們在那裡學習微積分特別理論,但很快,我就發現我的數學突然由「最好的」變成「最差的」了。這時我才意識到,我雖然是「全州冠軍」,但是我所在的州是被稱為「鄉下」的田納西州,當我與這些來自加州或紐約州的真正的「數學天才」交手時,我不但技不如人,連問問題都膽怯了,生怕我的同學們看出我這個「全州冠軍」的真正水平。這麼一來,我越來越落後。當我上完這門課後,我深深地體會到那些「數學天才」都是因為「數學之美」而為它癡迷,但我卻並非如此。一方面,我羨慕他們找到了最愛;另一方面,我遺憾地發現,自己既不是一個數學天才,也不會為了它的「美」而癡迷,因為我不希望我一生的意義就是為了理解數學之美。
因此數學系的「備選」,在當時看來,也必須放棄了。失去了政治科學、數學,我的未來之路將通往何方?好在我心中已經有了一個合適的選擇,那就是當時還默默無聞的計算機專業。
我在高中時就對計算機有很濃厚的興趣。有一個週末,我寫了一個程序,讓它去解一個複雜的數學方程式,然後把結果打印出來。當時機器的運行速度非常慢,寫完程序後我就回家了。週一回到學校,我被老師叫去罵了一通:「你知不知道我們所有的紙都被你打印光了!」我心裡一驚,原來,這個數學方程式有無數的解,週五我走後,程序一直在運行,計算機也就一直在打印結果。當時一箱打印紙可能要花掉學校幾十美元,就這樣被我全部打光了,老師當然很生氣。
大一時,我很驚訝不用打卡也可以使用計算機了,而令我更驚訝的是,這麼好玩的東西也可以作為一個「專業」。於是,我選修了一門計算機編程課,當時,計算機軟件的概念剛剛開始興起,正從過去科學編程所用的FORTRAN走入結構化編程的Pascal和C。我對這樣充滿魔力的語言無比好奇。
幾個月下來,我發現自己在計算機方面相當有天賦,而且遠遠超過我的數學天賦。我和同學們一起做編程,他們還在畫flowchart(流程圖),我就已經完成了我所有的題目。考試的時候,我比別人交卷的時間幾乎早了一半,我發現自己不用特別準備,就可以得高分,同學們說我是「計算機天才」。通過學習計算機,我還感覺到一種前所未有的震撼:「未來這種技術能夠思考嗎?能夠讓人類更有效率嗎?計算機有一天會取代人腦嗎?」而我知道,解決這樣的問題才是我一生的意義所在。
當時,IBMPC還沒有推出,我們的功課都是在兩台大型機上執行的。一台是上百萬美元的IBMS/360,它的速度是16MHz!不到如今一台普通PC(至少2000MHz)的1%(雖然它的價錢貴了1000倍)。更讓人不能相信的是,使用這台IBM,我們要把程序打在一疊卡片上面,每張卡片是一條程序的指令,每一個指令都要用穿孔機(cardpunch)刻出孔來表示,然後,我們把一疊卡片放入讀卡機,幾分鐘後,IBM處理完畢,把結果打印出來。十次有九次打出來的是「程序錯誤」、「編譯失敗」等問題,但是,我們沒有任何工具,只有自己一行一行地去找錯在哪裡。沒有屏幕,沒有互動,用卡片輸入,在紙上輸出。白天,這台機器主要是學校用來排課,到了晚上才輪到學生用。往往到了半夜,還有很多紅著眼睛的學生在那裡,翻著一張張卡片來找自己的程序為何出錯。
另外一台大電腦是DECVAX11/780。這台號稱「迷你電腦」的中型機也是個龐然大物,價值數十萬美元。但是,學生們都瘋狂地喜歡這台電腦,因為這台機器不用打卡,而用上了分時(time-sharing)的技術,可以讓幾十個人實時地分享這台電腦。每一個學生能夠很容易地用一台終端,接到機器上,感覺就像整台DEC只屬於自己,但是其實每一秒鐘都被分割成很多份,用戶輪流使用。就是在這台DEC機器上,我學會了編程,發掘了我在計算機方面的天賦和興趣。
我每天都盼望著晚上去電腦室,每晚都過得特別快樂,往往一不注意就是一個通宵,第二天自然要逃課了。我深深地體會了那句話:「Youaregoodatwhatyoulove;youlovewhatyouaregoodat.(興趣就是天賦,天賦就是興趣。)」
著名記者懷特·霍布斯說,「成功就是當你醒來,無論身在何處,無論年齡多大,你很快從床上彈起,因為你迫不及待地想去做你愛做的、你深信的、你有才華做的工作。這工作比你個人偉大、神聖。你迫不及待地要起床,跳進它的懷裡。」當時,我在計算機方面的表現和天賦給了我強烈的自信,也給了我對這個專業的嚮往和熱情。而這份熱情更激發了我在計算機方面的興趣,讓我自發地讀書。我分明感覺到一種向前的動力在指引著我。於是,「放棄政治科學」的火種,也在心裡越燒越旺。
大一第一學期期末,我開始在計算機中心打工,酬勞雖然不多,但也是一種鼓勵。同學們有什麼計算機方面的問題,都會來找我解決,當時,「會計算機」在學校裡是一件很時髦的事情,大家都覺得這個人太酷了。那時候,我的ID都跟別人不一樣:一般人的ID都是「院系名+姓名」,比如學計算機的就是「cs.kaifulee」,學政治的就是「ps.kaifulee」,而我的是「cu.kaifulee」,cu代表哥倫比亞大學,哥倫比亞+李開復,和校長一樣,多牛啊!
記得在計算機中心打工時,有一個鑽石工廠的總裁滿臉愁容地跑來,他說他們有一個精確到小數點後幾位的電子秤,每次都是工人將鑽石稱重以後,輸入電腦裡,可是工人有可能在輸入的過程中,修改鑽石的重量,然後以小換大,不容易被發現。所以,他希望有一個電腦軟件來記錄流水線上鑽石的重量,也就是鑽石稱重以後數據直接記錄在電腦裡,然後流水線上方安裝一個攝像頭進行監視。總裁先生希望哥倫比亞大學能夠幫他設計一個相應的軟件,所以找到了我。我覺得這個程序編起來不難,就一口答應下來。當時我用一顆顆石子作試驗,很快就把這個程序編了出來。這件事情,也在哥大引起了不小的轟動。
哥大法律系當時在全美排名第三,如果選擇法律系,我的前途大概可以預見到:做法官、律師,參選議員等等。因為在我之前有很多範本,我可以照著規劃。而計算機系只是新設的一個專業,前途看起來並不很明朗,我甚至連將來要做什麼都想不出來,當時也沒有軟件工程師這種職業。
但是,我想的更多的是「人生的意義」和「我的興趣」(做一個不喜歡的工作多無聊、多沮喪啊!)而沒有讓這些就業的現實問題影響自己。大二時,我決心從「政治科學」轉到「計算機科學」。
當時,一個物理系的同學開玩笑說:「任何一個學科要加『科學』做後綴,就肯定不是真的科學。看看你,從一個『假科學』跳到另一個『假科學』,跳來跳去還是成不了科學家。」
大學二年級的下半學年,我正式決定改變專業。我的導師非常認真地和我談了一次以後,發現我是慎重考慮過後作出的決定。他拍了拍我的肩膀,沒有多說什麼,還幫我辦理了轉繫手續。現在,我非常感謝哥倫比亞大學靈活的轉系制度。它給了學生一整年的時間,一邊在基礎學科裡學習,一邊尋找自己真正的興趣所在,學生大都在興趣的指引下,有激情地學習。而在中國的教育體系裡,我很遺憾地看到,高校設置了非常難的轉系制度。而且,還有服從調劑制度,讓很多孩子去學自己不喜歡的專業。這對於人才的培養,其實是個弊端。
隨後,我在計算機專業的學習也證明了,一個人的興趣能夠激發出最大的學習熱情,找出我那時的成績單,你能鮮明地感受到分水嶺一般的變化。
之前在「政治科學」專業,我的成績單上不是B就是C,到了「計算機」專業,我如魚得水,每天都像海綿一樣吸收著知識。茲維·郭歷理(ZviGalil)教授的「可計算性和形式語言」的課,被公認為是計算機專業裡最難通過的一門課。雖然教授是個以色列的數學天才,但是他的英語很難懂,因此,同學們上這門課都很撓頭。這樣一門課,我居然考了100分,也就是A+的分數,創造了該系的一個紀錄。郭歷理教授找到我說,「這門課程從來沒有人得到過100分,你居然就得到了。」他多年以後見到我,竟然還記得我就是他的課上唯一得滿分的那個學生。
大三大四,我就開始和研究生一起選修碩士和博士的課程,接手各種各樣的項目。那些項目就是一個個的課題,在這些領域中,我嘗試著攻克一些難關。
在「自然語言處理」課上,我提出:「能否挑戰圖靈測試?」圖靈測試就是說能否用計算機寫一個程序,表現和人一模一樣,讓人都無法分出真偽。我當時提出的想法是做一個即時通訊的系統,通話的另一端不是人,而是軟件。我當時和另一位非常有才華的華人同學胡林肯(LincolnHu)一起,做了一個模仿老師的軟件,可以回答任何和「自然語言處理」相關的問題。雖然我們的程序並沒有100%模仿成功,但是其表現超過了老師的期望。老師非常喜歡我們的創意和成果,給了我們最高的A+分數。
在約翰·坎德(JohnKender)教授的計算機視覺課程上,我和胡林肯做了一個運動光顯示(movinglightdisplay)的項目。這個項目是在人的四肢上綁上燈光,然後在人自然行動時捕捉燈光的移動,再從中推算人的四肢物理移動公式,探索如何模擬人的四肢行動,做出人類走路和其他行動的仿真合成。這個問題有許多數學方面的難度,我們找到一篇著名的博士論文,是裡克·雷斯特(RickRashid)博士寫的,然後我們在他的基礎上發揚光大。而成績發下來,我依然是那個無可爭議的「歷史最好成績A+」。
約翰·坎德教授很驚訝,他對我說:「開復,真沒想到你做得這麼好,你應該和卡內基·梅隆大學的教授裡克·雷斯特直接交流交流。」
「什麼,約翰,我只是一個大學三年級的學生啊!」我很驚訝地說。
「怕什麼,這對你們的研究大有好處啊!」坎德教授對我的說法不以為然。
我當時並沒有意識到,坎德教授其實是在為我申請卡內基·梅隆大學鋪路。後來,我真的給裡克·雷斯特打了電話,交流了我們關於這個課題的一些看法。就是這個電話,讓我後來的人生又有了一些戲劇性的變化。我畢業的時候,坎德教授推薦我去卡內基·梅隆大學念計算機博士,而雷斯特教授一直記得我的論文,所以,他就幫我作了一個建議錄取的推薦。更富有戲劇性的是,後來我的職業生涯一直和雷斯特教授有著千絲萬縷的聯繫,他跑去微軟工作,我當時去了蘋果,我想去找他合作,被他婉拒了。後來,又是他把我挖到微軟,成了我的老闆,而我從微軟離職的時候,又是他警告我,「小心,鮑爾默真的會告你!」
值得一提的是當時和我合作的胡林肯,他也是從台灣來的小留學生。這兩個項目的成功也給了他很大的信心,尤其是在計算機視覺和圖形學方面。胡林肯後來成為工業光魔公司(IndustrialLights&Magic)的首席技術官,他在《深淵》、《終結者》等著名影片中負責用計算機圖形來模擬特殊效果,兩度得到奧斯卡科學技術金像獎。
在整個大學裡,我第一學期的GPA(gradepointaverage,意思就是平均分)只有3.5,第二學期的平均成績下滑到2.9,而從我轉到計算機專業以後,我此後三年的GPA達到了4.1(2個A-,14個A,10個A+),這提升了我整個大學四年的GPA,使之達到了3.9。這個成績在計算機專業,是史無前例的高,我最終以全系第一名的成績在哥倫比亞大學計算機專業畢業。可以說,轉系的關鍵性決定,改變了我的一生,讓我此後的人生都能在計算機技術領域孜孜不倦地追求。
有趣的是,多年以後,我的一位政治科學系的同班同學,現在的哥倫比亞大學法律系教授,和我分享舊照片的時候,我猛然發現,美國現任總統奧巴馬也在我們的班級合影裡。我驚訝地問他:「難道奧巴馬曾經是我們的同班同學?」對方說:「是啊,你難道忘記了,班裡有個喜歡戴帽子的黑人同學?」我恍然大悟,原來坐在教室右後方的角落裡,總是戴著一個大帽子睡覺的那位,就是如今的美國總統奧巴馬啊!而當時的我,總是坐在教室的左後方睡覺。
後來我見到一位從事律師行業的老同學,他笑著對我說:「轉系虧了吧,不然說不定你現在也是教育部長呢?」我哈哈大笑說:「你沒轉系,現在也不是司法部長啊。可惜的是,我都沒怎麼和奧巴馬說過話呢。」