五。電腦先驅
許楓究竟是怎樣一個人?他與柳倩是怎樣結下冤仇的?其實,最初,他們不僅不是仇人,還是並肩戰鬥的戰友。
事情還要從文化革命說起。1966年,文化大革命以不可思議的方式發動,展開。但不久,也陷入了不可收拾的局麵。運動以這樣的方式開始,的確氣魄非凡。不同於以往任何運動,事先下達文件,各級領導層層布置,有計劃,有步驟進行。相反,這次運動的目標是打倒各級領導,讓年輕人起來“造反”,亂打亂砸。沒有章法就是章法。整個國家就靠“最高指示”以及中央文革幾個人指揮,讓人覺得匪夷所思。雖然打倒國家主席的目的達到了,但各單位群眾分成對立的兩派,爭吵越來越激烈,文化革命發展為”武化革命“。群眾分派的原因就是因為是非沒有標準。一部分人響應造反有理的號召,打倒一切。另一部分人覺得不能什麽都否定,一些基本原則不能反對。事實也這樣,有些幹部先被打倒了,以後又起用了,說明原來保他沒有錯。可是,這次運動的特點,是陰謀詭計,是突然襲擊,就是要癱瘓黨政係統,讓對手無法利用合法手段來控製局勢。不然,國家主席無法打倒。所以,不管好人壞人,先都打倒,好人以後再落實政策。但這是不能公開說的。所以,許多群眾無法理解。中央文革也不可能對每一件具體事表態,裁決。中央文革本身在許多方麵是無理的,強行支持一派,壓製另一派,隻是使中央文革自己喪失威信。後來靠知識青年上山下鄉,以及派工宣隊,軍宣隊到各高校,才使局勢穩定下來。文革派反對政府部門維持正常生產活動,認為這是反對突出政治。其實他們也知道,人不能不吃飯,社會不能不生產。他們反對抓生產其實是整人手段,他們掌權也要抓生產。派工宣隊,軍宣隊,是以首都大學等為樣板。抓生產他們也想以首都大學為樣板。盡管天天批判知識分子,搞科技還要靠知識分子。
為了與國務院對著幹,文革派要求首都大學研製先進的計算機。盡管那些年科技基本停頓,文革派也知道計算機是非常有用的。於是,1969年底,首都大學在軍宣隊的領導下,從無線電係,數學係,物理係等抽調教員,組建電子計算機廠。無線電係教員負責計算機硬件的研製,數學係教員負責計算機軟件的研製,物理係教員負責大規模集成電路的研製。電子工業部(當時叫第四機械工業部)所屬全國主要計算機工廠837廠也派工程師和技工來協助。這個項目的代號叫051工程。任務是製造一台為石油勘探進行數字分析的大型計算機。技術指標是主機每秒能進行100萬次四則運算。當時是一個先進的指標。工程的特點是:政治掛帥。強調革命加拚命的奮鬥精神。技術上的不足,各種困難,都用這種精神來克服。經過全體人員三年半的日夜苦幹,項目終於獲得了成功。這無疑是一個成就。尤其在全國科技基本停頓的情況下,能有這樣一個成績,總是好事。不過,這不等於這種搞法沒有問題,是應該堅持和推廣的。首先,這種搞法效率不高。集中那麽多教員搞一台計算機,代價太大。這在當時普遍無所事事的情況下,是好的。但正常情況不能這麽幹。這種搞法是不可能趕上發達國家的。精神動員是有效果的,尤其在戰場上,勇敢是非常重要的。但對科技,要強調尊重規律,搞成了不等於最佳的。問題還在於,把學校變成了工廠。學校不是工廠,學校要搞教學,科研。當時,教學,科研都停止了,隻有校辦工廠有事幹。這是短視,是殺雞取蛋。
文化革命結束後,學校當然要恢複到傳統形態。其它係的恢複相對容易一些,因為這些學科有多年曆史。當然也有如何趕上現代步伐的問題,但基礎課程不會根本變化。計算機就不同了,它是一個新興學科,而且發展迅速,影響巨大。我們在搞文化革命,國外正是軟件大發展時期。到文化革命結束,國外大學已經普遍設立了計算機科學係,而國內絕大多數高校連什麽是軟件都不知道,更沒有計算機科學的概念,更不用說一般人了。首都大學因為搞了051工程,在這方麵獨占先機, 對軟件的理解上,在文化革命結束時遠遠領先於其它院校。但是,對整個計算機科學的了解還是極為有限。中國的計算機發展起步還是很早的。1957年首都大學在全國首次招收計算機專業學生。當時,對計算機的理解隻是用來進行科技計算,即解數學方程。當時沒有軟件概念,隻有程序概念。計算機的利用過程是這樣的:對一個科學或工程問題,列出數學方程,確定解題算法,編寫程序。然後上計算機求解。當時,其實是有軟件的,即編譯。不過不叫編譯軟件,而叫編譯程序,或編譯係統。它的功能是把用計算機“高級語言”寫的程序轉化為計算機能執行的代碼(“低級語言”)。文化革命期間,通過051工程的開展,了解了一些國外情況,知道了軟件概念。並且自己開發編譯係統和操作係統。編譯係統是已知的,操作係統是新的。它的作用是管理計算機自身資源。由於計算機硬件結構的複雜化,計算機外圍設備的多樣化,以及計算機使用中人機界麵的改善,需要有專門軟件來管理,以提高係統效率,和方便使用,這就是操作係統的任務。文化革命結束後,工廠結構顯然不適合發展學科。按照原來學科體係,搞硬件的應該回到無線電係。搞軟件的應該回到數學係。搞集成電路的應該回到物理係。但有些人已經意識到,應當成立計算機科學係。其中,柳倩和許楓是最積極的鼓吹者。所以,當時他們是密切合作的。柳倩是建立首都大學計算機專業最早的幾個人之一。051工程她是軟件組負責人。許楓是首都大學計算機專業成立後招收的首屆學生,畢業後留校。051工程他參加了操作係統組。
雖然柳倩和許楓都在呼籲計算機科學,其實許楓對計算機科學的理解遠比柳倩深刻。文化革命中,雖然國內教育和科技基本停止了,但還是經常有來自國外的專家學者訪問首都大學。訪問者幾乎都談計算機,包括一些其它學科的訪問者。如化學家,他們的接待單位是化學係,但來訪者大談計算機對化學的意義。化學係的教師對計算機一無所知,隻好找計算機係的教員幫忙。許楓參加過多次這樣的接待。從而對軟件的重要性有著深切的體會。所以文化革命結束後,雖然對什麽是計算機科學,他還說不清楚,但有一點他清楚,計算機科學係要以軟件為中心。在今天,這已是眾所周知的了,在當時,沒有什麽人理解。兩年以後,他得到了一個計算機科學的定義。也就是對計算機科學已經有了一個全局的,明確的認識。當時沒有地方發表。為了宣傳他的觀點,他自己邀請了幾個學生,做報告。題目是“從馮.諾意曼到計算機科學”。馮.諾意曼是計算機發明思想奠基人之一。報告的意思就是,計算機從發明,作為一種計算工具,到今天,已經形成一門獨立的學科,有著豐富的內容和廣泛的應用。計算機所以迅速發展,除了由於技術指標的不斷更新,包括存儲容量和處理速度的突飛猛進,主要還是因為它突破了僅僅是一種計算工具,而是有著邏輯分析能力,從而使它有著廣泛應用。
幾年以後,他開設了”計算機科學概論”這門課。在這門課中,他全麵介紹了計算機科學的研究領域,計算機的廣泛應用,以及這些應用對各個領域的深遠影響。他還談到計算機對整個人類社會的影響,話題涉及經濟,法律,哲學,道德,等等。指出了,人類正在經曆一場信息革命,正在走向向信息化社會。
一位學生,寫下了如下對這門課的感想:
“。。。大大出乎我的意料,我竟被這門概論課強烈地吸引,而且興趣之高也是前所未有的。課堂上的講授方式,講課內容都合我的口味。這曾經導致幾場幾個同學的舌戰,中心論題是“講課印象”。
他們認為“散、亂、淺”,而我的觀點是“形散神不散,通俗蘊含著深刻”。當然首都大學學生頑強,心服口不服,舌戰結果仍是憤憤然各執已見。總之我的體會是這門課使我認識到過去對計算機的理解太膚淺,太低級了,或者幹脆說原來根本不了解計算機。自以為懂兩門高級程序語言就說懂計算機了的幼稚想法現在看來是多麽的荒謬可笑,把計算機與算盤等同起來多麽淺薄無知。為什麽計算機導致信息時代的出現也
有了答案。“散”的確“散”,不過正是因為散才視野開闊,充實飽滿,哲學高度的概念定義,通俗易懂的生動實例,巧妙的類比為你繪出一幅幅高雅而又親切的圖畫,把計算機的發展過程,各過程的特點,目前的狀況,未來的展望等等有機地組織起來。其中穿插著哲學、道德、法律、經濟等社會問題,使你形成這樣一個概念:計算機果真引起了一場革命,它一經社會所發明創造社會就怎麽也擺脫不掉逃脫不了它,從而使你認識到中國發展計算機事業的迫切性。”
另外,051工程的實踐中,整個項目,大家處於邊學邊幹狀態。但在後期,許楓已經對這種人海戰術的搞法不滿意了,認為不科學。許楓感到這種實踐缺乏理論指導,效率太低。國外傳來軟件工程概念,正是針對這種情況。在軟件開發上,國外也走過彎路。許楓總結了051工程和以後自己軟件開發項目的經驗,總結了一整套軟件工程原理。
為了掌握軟件開發規律,他與中國旅遊局合作,開發旅遊管理軟件係統。通過兩年多的開發實踐,他總結了一整套經驗。當時,中央各部委還沒有開始信息係統的開發。他在一次有中央五十幾個部委計算機負責人參加的會議上,介紹了自己的經驗。
當時,國際上,由於計算機應用大發展,理論跟不上,軟件開發出現許多問題,如進度推遲,經費超支,產品錯誤很多,項目半途而廢。被稱為“軟件危機”。許楓根據自己的開發實踐,他認為,除了軟件開發技術不成熟以外,所謂軟件危機其實是管理問題。在他領導的開發項目中,始終有效控製著項目的進展。有困難,但沒有危機。困難主要不是來自技術,而是來自人。一是來自用戶,一是來自開發者。用戶普遍不理解軟件和軟件工程,不支持,不配合。針對這種情況,他在開發過程中,始終對用戶作宣傳工作,宣傳計算機的意義,宣傳軟件開發規律。當用戶因為不理解,不習慣,從而對使用計算機懷疑時,他對用戶說,計算機是好東西,但也要化代價。火車是好東西。但火車也會出軌。一旦出軌,人們想的是追查原因,改進管理,沒有人因此要取消火車。為什麽使用計算機有問題,要取消計算機呢?開發者當時主要是大學師生,普遍不懂軟件開發規律,不懂軟件工程。他們隻有過去在實驗室寫小程序經驗。針對這種情況,他積極向開發者宣傳軟件工程概念,說明軟件工程不等於程序設計。他指出軟件開發失敗在開發者方麵的原因。軟件已經是一種產品,他們還當在作實驗室做試驗;軟件已經是一種大規模的生產活動,需要一個團隊,相互配合,他們還停留在單幹時代;軟件已經是一種工程,要有一係列概念,方法,技術和工具,他們還隻有“寫程序”概念。他用傳統的建築工程作比喻。在農村蓋幾間土房,要有些經驗,但不需要多少理論。但蓋一棟大樓,就不同了,有一整套理論,方法,技術和工具。他到一個大學去講軟件工程。當時人們根本不知道什麽軟件工程。他對聽眾說,當一架飛機掉下來時,當一棟大樓倒塌時,人們驚呼,報紙上頭條新聞。但當一項軟件工程失敗時,沒有人震驚。其實 ,大型軟件工程項目的工作量涉及幾千人年,代價可能大於一架飛機,一棟大樓。隻是因為沒有直接死人,沒有轟然巨響,人們不以為然。那時,中國人工很便宜,對完全由腦力勞動構成的軟件的代價不體會。其實,時間就是生命。1000人年的工作量,相當於一個人工作1000年,或者,1000個人工作一年,或者,20個人工作50年,等於20人的生命。這樣的講演對聽眾是聞所未聞,大開眼界。他把軟件工程的特點總結為三多,即多學科,多目標,多階段。所謂多學科,指軟件開發不僅涉及與程序有關的論題,而且涉及管理科學、係統科學、人類工程學、經濟、法律等多種學科。所謂多目標,指軟件開發不僅關心項目或產品的功能,也必須注意成本、進度、可靠性,安全性,通用性,維護性、有效性,以及用戶界麵等。所謂多階段,指軟件開發不僅是編碼,而是由可行性研究,計劃和組織、要求定義、初步設計、詳細設計、編碼、調試、試運行、安裝、維護等階段構成的完整過程。這個提法,國外學者也沒有提出過。國外軟件工程的概念,主要是指多階段。許楓認為,這還不夠。許多軟件開發失敗,是因為失敗於某一個學科,或者失敗於某一個目標。
由於對計算機本質的深刻理解,許楓已經看到計算機廣泛應用的前景。但社會還普遍對此缺乏認識。就像當年美國加州發現了金礦,他是第一個到達的。他想,如果有30名助手,他可以把計算機主要研究和應用領域都占領。可惜一個也沒有。直到多年以後,他才有第一個研究生,可惜他不得不離開中國了。為什麽是30名,不是300名,3000名?是的,按理30000名也不夠,今天多少人搞電腦?他不可能同時帶領更多的人。不過,他向社會積極宣傳計算機應用的意義,並且親自實踐開辟計算機應用領域。當時開辟計算機應用困難很大,阻力重重。他告訴學生,你們要當信息革命的先鋒。你們要像當年西方傳教士那樣,堅定不移,不辭勞苦,窮鄉僻壤,傳播福音。不過,你們不必到窮鄉僻壤,就在城市,傳播計算機文明。雖然目前推廣計算機應用還有困難,但你們要相信,計算機必將象電力、交通等現代化工業技術一樣普及。一個計算機應用的高潮正在到來。計算機必將用於各行各業,計算機必將進入千家萬戶。這是曆史潮流,無論是部長,總理,總統,國王,都阻擋不住。隻要人們用上了,就再也離不開它。
他也動員許多人投入計算機領域。因為計算機會帶來社會革命,許多領域,許多行業,將會發生巨大改變,有些要淘汰,有些要全麵更新。
經過一段時間的努力,當然也是由於計算機發展的客觀必然性,首都大學準備建立計算機科學係。許楓是不喜歡出頭露麵的,對當官是沒有興趣的,對誰當係主任也不大在意,隻要發展計算機科學就行。柳倩對當官是非常感興趣的。不過,當時她的資望有限,那時的係主任也不像以後強調年輕化,都是老教授擔任。所以她還不敢指望直接當係主任。於是與許楓一起去數學係請陳德教授,希望他出麵主持計算機科學係。陳德教授德高望重。但柳倩知道,陳教授對計算機不熟悉,隻是要他掛名,實際自己可以作主,是事實上的主任。不過陳教授沒有允諾。學校考慮從中國科學院調宋清先生來當係主任,也征詢宋清先生本人意見。宋先生找首都大學的蘇貞教授商量。蘇先生無意中把這件事告訴了柳倩。柳倩明白,宋先生的資曆比自己高,學術造詣也高,如果他來,自己就不可能操控這個係了。於是她就到處宣傳,宋清到來會從中國科學院帶一批人,替換首都大學的人,搞得人心惶惶,學校隻好作罷。幾經周折,柳倩終於如願以償當上了計算機科學係主任。許楓是一個清高的人,對柳倩那種愛出風頭,一心想當官十分看不慣。尤其看到,當柳倩聽說學校要調宋清來當係主任時那種著急的樣子,醜態畢露,庸俗不堪。不過,他當時以為,也許她為了發展學科,或者她有領導和管理才能,希望能得到發揮。沒有意識到她當上係主任以後的後果。從柳倩當上係主任以後,許楓就與她保持距離。不想因為自己鼓吹成立計算機科學係的“功勞”要回報,也不想利用柳倩當係主任而沾權力之光。
柳倩的係主任是怎麽當的呢?她關心的不是學術,而是權力。為了鞏固權力,她拉幫結派,培植親信,欺上瞞下,排除異己。在用人上,誰緊跟她,吹捧她,她就重用。反之,則不用。在學術資源上,對親信,給予種種優惠,照顧。反之,則百般刁難。在學術成果,學術職稱評定上,對親信,低水平說成高水平。反之,高水平說成低水平。她的心思,她的才能,不是用在搞學術上,而是用在搞權術上。搞學術,她才能平庸,但搞權術,她很有一套。許楓曾經向柳倩提過意見,希望她能夠公正對待所有人,一視同仁,團結大家搞好這個係。柳倩根本不聽,他也就不提了。因為許楓原來是數學係的,又與她共同為建立計算機科學係而奮鬥過,被看作“自己人”,許楓也完全沒有爭權意願,對柳倩沒有威脅,所以開始柳倩對他還是尊重的,不來幹涉他的工作。他的處境還是不錯的。許楓沒有想到的是,柳倩的這一套越演越烈,終於搞到他頭上,以致被迫與她決裂,最後不得不離開中國。為什麽會走到這一步,不僅許楓本人沒有想到,周圍的人也沒有想到。他們分別走在兩條看來不相交的路上,怎麽會撞車的 ?