關於李家同教授(以下簡稱李)在聯合報專欄的這篇「如果 Turing 是中國人」。
時機上,李的文章刊登在 9 月 15 日,而英國首相剛在 9 月 10 日向 Turing 因其性傾向遭受的不人道待遇致歉。很自然地讀者會覺得這是應景之作,也會因此感到失望:英國談的是人道與歧視的問題,主角是計算科學的先驅。李教授恰好是國內電腦科學出身、以人文關懷著名的作家,照說是國內最有資格在這議題上多談談的,怎麼又談起產業了呢?我甚至會猜想這是在迴避,也許李教授有不願談同性戀的顧慮,因此自覺有責任寫寫 Turing,卻換了個角度。
但這麼說也許有欠公允。可能世事就是這麼不巧,李教授以前存在聯合報的稿剛剛好在這個時候刊出。即使是最近寫的,人家對這題目沒興趣,也不能強迫他非有興趣不可呀。我們僅就他的文章來談。
李伯伯講故事
文章開頭便說:「我們國家非常重視「創意」,好像我們國家萬事俱備,只欠創意。」結論大約是「我們的政府… 沒有鼓勵大家在基本技術上下功夫… 因為基本技術不夠高,而使這種創意永遠是紙上談兵。」
但這是篇令人困惑的文章。李把「創意」和「基本功夫」對立起來,指的分別是什麼?真有這種對立在嗎?這和 Turing 又有什麼關係?
回顧李之前的文章。在「你會設計放大器嗎」一文中,李說,「我國…很不在意基本功夫的。無論在機械、電機和化工,我們都不願意將基本功夫練好。」「如果我們成天注意非常高深的學問,而不注意是否有很好的基本技術,我們的研究都是紙上談兵而已。」在「核心科技是買不到的」一文中,李說:「很多人會寫字串比對的程式,但是大家可能忽略了字串比對牽涉到好多演算法上的高深學問。」
初次讀上述兩文時,我把「基本功夫」理解成「基礎科學」,或著泛指某種紮實的做學問態度。在這個假設下我是很贊同的。一些國家在應用科技上進步(甚至不用談「很應用」的應用,只談計算科學上的「應用),是因有充實的基礎研究為後盾。連字串比對都需要正規語言,而這恰是國內少強調的部份。我也曾「發願」,要好好學東西,把某些理論從最基礎之處學起,把一些編譯器原始碼好好看懂。這是我以為的「核心技術」。
但李在 15 日發表的文章中,如此談到 Turing 與 Colossus:
二次世界大戰期間,杜林向英國政府建言,說他會製造一架可以寫程式的電腦,而且可以用這部電腦破密碼,對於英國政府而言,此事非同小可,也立刻著手製造Colossus 電腦,這部電腦上的程式使英國可以破德國人的 Enigma 密碼。
這是一段過度簡化又錯誤百出的故事。且不談我不喜歡李那「跟小朋友說故事」的文風 — 姑且假設這是特意做出的風格。我同意講故事總是得講個抽象過的版本。而且我們不都說計算科學就是關於抽象的科學嗎。但好的抽象言簡意賅,壞的抽象不但失真,甚至淪為為迎合(「硬」合)主題而編故事。
李講的故事是: Turing 是個不世出的天才,有一天突然靈光一閃跑去跟英國政府說我會做電腦、會解密碼唷。這是李的「創意」。而天才雖有創意,還是要靠「優秀的工程師」「將他的理論用電子線路予以實現」。這是李的「基本功夫」。而結論是,所以,我們應該加強基本功夫。
Turing Machine 是哪臺 Machine?
我先插一個小抱怨:事實上,Turing 和 Colossus 的建造關係不大。推動 Colossus 的主要角色是數學家 Max Newman 和工程師 Tommy Flowers ,前者構思理論上的需求,後者設計製作,並參考了許多人的建議。Turing 參與設計的計算機器則包括了 bombe.
所以我們想到幾件事情,首先,Turing 不是單獨一個蹦出來的天才。他是團隊的一員。
再來,這麼多人設計製造過計算用的機器,為什麼 Turing 被稱做是電腦之父?當然不是因為第一台可程式的電腦 Colossus, 那不是他設計的,甚至在戰後多年都是機密。也不是因為他設計過、自己做或請由工程師做出來的任何一台機器。
是因為一台由他構思,但並未靠工程師去做出來、也沒有必要做出來的「機器」: Universal Turing machine.
身為電腦科學家的李教授不可能不知道這點呀。
創意 v.s 基本技術?
回到該文。李所謂「基本功夫」指的到底是什麼?如前所述,我原以為他泛指「紮實做學問」。那麼每門學問都有「基本功夫」。後經朋友提醒重看「你會設計放大器嗎」一文,發現另一種讀解:基本功夫指的是基本技術,也就是「電機工程」、「電子線路」、「設計電路的基本功夫」。再對照李教授的一篇演講,抱怨學生只會數位電路,不會類比電路,發現確有可能。
這又是另一番景象:某些領域是「基本功夫」,某些領域是「高深的學問」。大官只關心高深的學問,但我國「國情和先進國家不同,基本功夫不夠好」(參照你會設計放大器嗎)。似乎李教授近年來把興趣轉到了某些領域上,認為這些是邁向核心技術需要的基礎技術,我國欠缺的情況令他很擔心。這也是可以去理解的。
但李用 Turing 當主角講這個寓言。數學家 Turing 代表「創意」,而幫 Turing 製造電腦的工程師們代表「基本功夫」。中國沒有基本功夫,就算有 Turing 也做不出 Colossus。所以我們應該加強基本功夫。
讀者當然會問,反過來說,沒有 Turing 的構想也不會有 Colossus 呀,為什麼我們不需要開發創意?
為了避免這個問題,Turing 必須被描述成一個天才,偶然的天才,不可預期的天才。「大家都同意英國真幸運,有這麼一位極有創意的天才數學家。」天才大概是會不定期地、不可預料地蹦出來的,既然不可預測,我們還是先作好基本功夫好了。
這導向一個驚人的結論:電機工程是基本功,是需要政府投資的;而數理邏輯是天才、是「高深的學問」,我們國情不同,還是先別碰好了?
當然不是如此。二戰期間 Bletchley Park 有一整群學者與工程師一同工作,Turing 是其中之一。能培養出這麼多優秀的數學家,是基礎科學研究水到渠成的結果。這當然是需要多年投注資源的呀。
而另一方面,製造出實體計算機器需要的電機知識是「基本功夫」嗎?在二戰當時這可是「高深的學問」呢!二戰前的中國也許有人要說,還有這麼多百廢待興的事情正傷腦筋,去搞這種「高深的學問」做什麼?
如一位朋友(不知能否說出來?)所說的,如果李期望學生能有廣博的知識,電腦科學的學生也學一些電機,社會科學的學生也學一些電腦科學等等,這自然是好的。但另一方面,思考和實作不一定要在同一個單位裡發生,學問分工是不可避免的。把不同領域間的關係簡化為誰比較基本,誰是遙不可及的高深學問,這不該是李這種學者的格局。
這兩天的密集討論中,也有朋友提出這樣的推測:李的態度是對政府這幾年過度強調「創新」的反動。據說現在不管寫什麼計畫書都得跟「創新」掛勾,學校或研究單位也都陸續成立各種「創新」中心。李有意見的可能是奈米、基因等等「創新」科技。
也許如此,而李這篇文章只是一次引喻失義。否則,一個曾做過演算法和符號邏輯的學者到頭來說 Turing 的理論是天才的高深學問,先學電路設計才是務實,實在太令人匪夷所思了。
> 這兩天的密集討論中,也有朋友提出這樣的推測:李的態度是對政府這幾年過度強調「創新」的反動。
> 也許如此,而李這篇文章只是一次引喻失義。
我大致看下來的感覺也是這樣,如果把李教授文中的故事全拿掉就通順很多了。
李教授用的「創意固然重要,基本功夫更加重要」這種句型,我是一直覺得應該詮釋成「兩者一樣重要,只是這裡要強調其中一件事」啦。如果這樣子理解拿掉故事後剩下的部份,應該就滿合理了。
> 這兩天的密集討論…
欸,老師該不會回台灣了吧…?!
是在 facebook 上唷。可熱鬧的呢。
欸,你那兒會不會不准玩 facebook 呀?
不會耶,我看我一個同梯的好像在上面種田的樣子… XD
Pingback: 李家同又亂放炮了! « Pyridine
Pingback: Tweets that mention 創意 v.s. 基本功?關於李家同談 Turing 一文雜感 -- Topsy.com
Pingback: 沒見過壞人嗎? » Blog Archive » 李家同他是怎麼拿到電機及計算機學位的啊-_-