在當今時代,如果一個人說自己是用計算機工作的,那么他的說法毫無意義,因為人人都這樣。關鍵是用計算機從事什么樣的職業:是藝人還是音樂人?是金融交易師還是銷售員?是產品設計師還是工程師?是外科醫生還是護士?是超市助理還是快餐店廚師?是大學生還是中學生?計算機已經滲透到人類生活的方方面面,掌握計算機知識的重要性再怎么強調也不為過。對這種電子機器的運用可能會貫穿于一個人職業生涯的始終(也可能會塑造其子女的生活)。
在本書中,我會跟大家分享計算機科學的奧秘,這些奧秘雖然教科書里不會提及,但卻是使計算機大行其道的當今世界順利運轉的關鍵所在。我們將一起踏上探索的旅程,探訪計算機科學家的神秘實驗室。我會給大家介紹為數眾多的研究人員(還有一、兩個白手起家的百萬富豪),是他們造就了、并將繼續造就我們身邊的技術奇跡。在他們的幫助下,我們將見識到,計算機如何在不計其數的領域中得到廣泛的運用。
我會向大家展示,計算機從大體上講非常好學;這方面的知識只要運用得當,就可以使我們在工作和休閑活動中出類拔萃。我們將一起探索這門新興學科的發展歷程:計算機科學萌芽于艾倫·圖靈(Alan Turing)等先驅提出的理論概念;到了互聯網時期,這一行業迎來了井噴式的增長;在艱難的成長階段,人工智能的前景從未實現;此后,互聯網泡沫迅速滋長,直至破裂;在最近的發展階段,計算機科學作為一個(半)成熟的領域,已經能給人類社會帶來舉世矚目的成就。在頂尖的研究人員和行業先驅的幫助下,我們將回顧計算機科學史上的成敗起伏,探討在未來的20年里,什么樣的技術革新將改變我們的世界。
我是個狂熱的向導,因為我自己就是計算機科學家。如果不是從小癡迷于這門學科,長大后絕不可能制造機器人、從事計算機編程。計算機或許是我們無聲的奴隸,盲目地執行每一項指令,但是我認為,我們可以從計算機上學到很多東西,通過它們了解這個世界乃至人類自身。
計算機科學
訂購披薩餅的故事或許已經幫你從日常生活中不易察覺的角落里找到了計算機的身影。然而,了解了計算機運行的物理設備(2)和軟件,只不過是看到了計算機的冰山一角。硅芯片和程序遠遠不是計算機的全部。這一點毋庸置疑——要不然這種電子機器也不可能會變得如此普及。
計算機科學是用數學和工程學譜寫出來的美妙音樂。正如一個人光會幾門樂器和幾首流行歌曲,根本不足以領會音樂的博大精深,我們要是光看幾個計算機和軟件包的實例,也不可能學會計算機。音樂這門學科歷史悠久,傳統深厚,百家爭鳴,激情勃發。在音樂的世界里,各種理論和想法交流碰撞,表演方法和樂器多種多樣,名家大師層出不窮。計算機科學也是如此。這門學科雖然遠遠不像音樂那般歷史悠久,但其發展史依然可以稱得上豐富多彩。它形成了自身的傳統,也不乏各種思潮的論爭和昂揚澎湃的激情。形形色色的理論和想法構成了它的核心,在此基礎上派生出各種方法,并通過計算工具加以實踐。這一領域也涌現了不少大師,不過他們和音樂家不一樣,可能永遠不會穿著燕尾服在觀眾面前表演,也很少受到公眾的熱烈追捧,盡管他們的成果改變了數百萬人的生活。這些大師很可能相貌平平,穿著牛仔褲上班,平常喝了太多的軟飲料或咖啡。
你要是向公眾詢問他們對計算機科學的看法,就會收到很有意思的回復。以下是幾個例子:
計算機科學就是與硬件和軟件有關的科學。計算機科學就是搗鼓計算機的科學。計算機科學主要涉及到編程、工程學和數學。計算機科學的領域和食品工業一樣廣泛。
這些回答并沒有錯,而且讀者朋友們可能會認同他們的觀點,但是我希望你們在讀完整本書以后,會給出稍微不同的答案。
計算機科學是一個神秘的領域,所有的計算機技術均發源于此。從業人員的工作場所往往是高校實驗室或者科技公司,但也有一些令人意想不到的地方,比如癌癥研究實驗室、銀行、計算機游戲公司、藝術工作室、汽車制造公司、出版公司等等。計算機科學家幾乎可以在任何地方從事任何職業——這也是投身于這一行業的樂趣之一。
計算機科學歷史太短,多樣性太強,有些人甚至認為,應該將其稱為工程學或數學的分支。計算機科學面臨著自我定位的問題,或許作為一門專業學科,這一點令人意外。生物學家對自己的專業范圍心知肚明,物理學家在這一問題上甚至知道得更精確。但是你要是向計算機科學的領軍人物詢問他們對這一學科的私人定義,結果就會有所不同。他們的答案五花八門,直觀而引人入勝地反映出,計算機科學領域的研發工作門類多樣。為了具體說明這一點,我給自己的郵箱聯系人、各大社交網站及計算機科學家的聊天群發送了一個問題——“你個人對計算機科學是怎么定義的?”。(你要是想與計算機科學家交流,最好的方法就是使用計算機。)世界各地的計算機科學家都給出了熱心的解答,以下僅舉出部分例子。有些科學家的名字還會在后文的章節中出現。
安吉拉·薩斯教授來自倫敦大學學院,其研究領域是以人為本的技術和信息安全。她的回答是:“計算機科學是設計和制造特定系統的科學,這些系統功能實用、物有所值,且有利于個人和群體的福祉。”
巴里·費金教授來自美國空軍學院(United States Air Force Academy),其研究領域是計算機硬件,包括機器人學。他表示:“計算機科學就是發現和創造特定事物的科學,這些事物要么可以計算,要么應該計算,要么本身就是高效計算的秘訣所在。”
德里克·希爾是IXICO公司的創始人和CEO。IXICO涉足醫藥行業,專業從事醫療成像服務。希爾的回答是:“計算機科學運用創新技術,挑戰懸而未決的科學問題,將新的科學發現轉化為改變人們生活的技術。”
佩雷·維勒茲是樸次茅斯大學(University of Portsmouth )的教師,其研究領域是音樂和音效技術。他的回答是:“計算機科學就是用技術引領新的社會風尚。”
邁克爾·菲爾曼是倫敦大學學院的博士,其研究領域是激光測距儀的數據處理。他的回答貼切地概括了計算機科學的多樣性:“將醫療影像學、人工智能、生物信息學這類多樣的學科統統歸類為‘計算機科學’,就因為這些學科剛好需要用到計算機。這樣的歸類有時顯得毫無邏輯。這就好比把英語、法學和社會學都歸類為‘鋼筆學’,就因為這些學科都需要用到鋼筆。”
我們可以看到,專業人士對計算機科學的定義不僅五花八門,而且顯然各有分歧。有些人可能會覺得這種情況很成問題,但事實上,這正是計算機科學大獲成功的秘訣所在。實驗室里并不像你們想象的那樣,聚集了一堆臉上長滿粉刺的極客,整天除了寫一些只有他們自己才看得懂的代碼之外,什么事也不做;能夠留在實驗室里的,都是世界各地百里挑一的頂尖人才,他們處理的是人類面臨的實際問題。這些研究人員有的對癌癥數據建模,預測新藥對人體的效果;有的利用虛擬現實(3)幫助恐懼癥患者走出陰霾;有的發明新的安全系統,便于人們使用網上銀行、遙控車鎖和信用卡;有的致力于完善新的醫療成像系統,讓掃描的精度更上一層樓;有的專攻移動設備,讓無線技術更可靠;有的著力于制造最好的接口(4)或外設(5),使用戶操作起計算機來更加得心應手;還有的構建更完善的金融系統,推動經濟的平穩運轉。
計算機科學多樣性強,而且這種多樣性正與日俱增。計算機科學家可以是工程師、數學家或科學家;其專業領域可以是理論、實驗或應用;輔助其工作的,可以是硬件、軟件或人。但是無論他們怎么稱呼自己,其工作內容是什么,沒有他們的共同努力,就不會有造福于人類生活的各項技術。
本書是對計算機科學界的禮贊,這一行業日新月異,精彩多樣,碩果累累。我們無法逐一細看每一個領域和每一次革新——我的筆頭趕不上它們的發明速度,但是我會向大家展示自己覺得振奮人心的精彩瞬間。希望讀者朋友們在這段探索的旅程圓滿結束之際,能夠理解為什么我等計算機科學家會對計算機如此心醉神迷。計算機科學對人類生活的影響積極、廣泛而深遠,在這一方面,沒有任何技術可以與之匹敵。我們在這段未來主義(6)的旅程中需要探訪的第一站,或許可以稱得上是這一切的起源,是整個計算機科學的根基所在。我們必須探訪支撐這座技術大廈的宏偉支柱,那里是自動計算器的發源地。
計算機的美妙之處并不在于其閃爍的燈光、旋轉的磁盤、成排的芯片和電線,而在于,這些部件的背后隱藏著一個優雅而簡單的想法。這個想法同晶體管、操作系統、網絡和文字處理器毫無關聯,也不可能有任何關聯,因為它的誕生時間比這些設備都早。這一想法是24歲的艾倫·圖靈在1936年提出的。
注釋:
(1)一種源自于意大利南部城市坎帕尼亞和那不勒斯的淡奶酪。
(2)物理設備是指硬盤和系統所掛接的各種設備。
(3)利用電腦模擬產生一個三維空間的虛擬世界,提供使用者關于視覺、聽覺、觸覺等感官的模擬,讓使用者如同身歷其境一般,可以及時、沒有限制地觀察三度空間內的事物。
(4)指連接兩裝置的電路,可使數據從一種代碼轉換成另一種代碼。
(5)外部設備簡稱“外設”,是指連在計算機主機以外的硬件設備。
(6)發端于20世紀的藝術思潮,它的一些基本原則包括對陳舊思想的憎惡,和對速度、科技和暴力等元素的狂熱喜愛。汽車、飛機、工業化的城鎮等等在未來主義者的眼中充滿魅力,因為這些象征著人類依靠技術的進步征服了自然。