少運崎嶇老景宜 - 我的電腦學習歷程
原載 1995-11 自動化科技 139 期 p.65-72
民國六十年,我還在台北工專就讀工業工程,學校購買一台五百萬的電腦,電算中心剛開張 不久,機器還在試機中,雖然選修電腦課,卻看不到電腦。課程名為「電腦應用」,學的卻 是 FORTRAN 程式語言,教科書就是那本剛出版的 FORTRAN IV PROGRAMMING Based on the IBM System 1130。這本書第一章有四張照片,分別是 IBM 1131 中央處理機,1442 讀 卡機,1132 印表機和 IBM 26 打孔機。每一台大約是辦公桌一般大小,總算讓我對電腦的 長相有個概念。
上課第一天,老師(助教代課)說他和我們一樣,也是第一次讀電腦,希望大家互相研究,多 多包涵。三學分課程,做兩道習題,課本紅線劃到224頁,Subprograms 還沒學完,學期就 結束了。初次和電腦交手,成績是82分。
考完預官,等待受訓的空檔,我到台大電機系讀「電子計算機程序計劃講習班」。六十年代, 想出國讀書的人會先到電機系拿這張結業證書。因為是研究所開的課,出國後可以抵免三個 學分的電腦課程。我雖然沒有學位,也花二千四百元報名(大約一學期註冊費)。一方面覺得 電腦這個行業將來大有可為,另一方面也想趁機體會在台大讀書的滋味。沒想到,二十年後 我的留學美夢成真,發黃的結業證書仍然有效,抵掉三個電腦學分,總算值回老本。
當時課表排了七門課;電算機概論,FORTRAN,數值分析,COBOL,作業管理,程式設計 技術和作業研究。其中數值分析和作業研究為二選一。課程紮實,師資又好,加上學費昂貴, 不得不全力以赴。一星期有五天,白天上機,寫報告,夜晚上課。後來連週末和假日也賠進 去,可說是到了廢寢忘食的地步。由於天天耗在實習教室,經常被學生當作助教,同學也紛 紛要求關照,窮於應付之餘,有位女同學還罵我「鹹菜脯」出氣。
在台大學電腦的兩個月,是我一生中少數幾個美好回憶之一。直到現在我仍然保有當年的筆 記,作業報告,整箱卡片以及一本 CDC3150 操作手冊。用慣高速硬碟的年輕朋友,恐怕很 難想像六十年代計算機的輸入方式。那時候,程式必須寫在 Coding Sheets,準備足夠的 IBM 80 行卡,從一個類似診所掛號的小洞遞給中心的打卡員,隔天再取回檢查有無打錯。驗證 無誤,排隊上機,再等一天才能拿到報表。運氣好的話,一次OK,便欣喜若狂。如果不幸 程式出了差錯,只好重來。一份作業到電算中心跑個五、六趟是常有的事。
期末考試,順利通過,取得結業證書。34期同學卻有一半遭到淘汰。兩個月的密集訓練, 讓我在電腦方面打下一點基礎,對後來長達二十年的學習生涯有莫大的幫助。當年教程式設 計的老師曾說:「有這張證書,表示你已具備基本的程式設計能力,但是別太高興,這條路 不太好走哦!」當時我才21歲,也沒想到將來會設計程式。倒是教作業研究的郭德盛老師(現 任台大教務長,當時剛從美國回來)特別強調,電腦是一個快速更新的領域,一旦投入,必 須隨時追求新知與技術,稍有懈怠,很容易被淘汰。這一席話,讓我印象深刻,至今不忘。
服完兵役,很快找到工作,雖然曾經想到電腦公司做事,卻無法如願。那時候,全台灣的電 腦不到二十部,工作機會幾乎沒有。同期同學周君,畢業於中原電子工程系,軟硬兼備,本 想在電腦界一展身手,後來卻到法國落戶,開起中國餐館。我告訴他,天生我才必有用,奈 何早生二十年。不過他現在日子過得很好,大概也沒有什麼遺憾。
我在退伍後十年內從事四個不同的工作;外商電子公司 Foreman,汽車零件製造廠品管和研 發主管,化纖廠品管工程師,核電廠主辦機械工程師,沒有一樣和電腦有直接關連。民國六 十五年,服務的化纖廠有一部相當先進的程序控制電腦,可惜只供聚合製程專用。品管課做 大量的統計分析和實驗設計,仍用人工計算,經常出錯。我那時想,只要有一台小電腦,至 少可把工作效率提高十倍,每天也不必在數據堆裡打滾,月底還要忙著製作圖表。無奈事與 願違,不過我還是經常把電腦教科書翻一翻,找機會和電腦操作人員聊聊,交換一些知識。
民國六十七年,我參與核三廠建廠工作。電廠由貝泰公司設計。有二年多時間,整日和工程 設計圖,技術規範書為伍。從每天接觸的文件、電報,知道美國在電廠的設計和工程管理大 量應用電腦,然而在台灣的我們,卻得用人腦來對抗電腦。這話怎麼說? 原來貝泰公司用 電腦作生產計劃和工程管理,零組件送到台灣以前,電腦清單先到。為了追蹤這些零組件和 材料,工程師經常得花幾天工夫核對,一旦資料更新,又得重作一次。工地的資訊無法和設 計公司連線同步輸入,資料的回饋和修正往往曠日費時。核電廠管制嚴密,結構複雜,工程 進度和物料管理的關係密不可分,土木機電環環相扣。這種分工精細,預算龐大的計劃非常 適合應用電腦輔助建廠作業,特別是上游已經有效電腦化,更可收事半功倍之效。可惜的是 核三廠一直到民國七十二年試運轉時,工程管理仍不能電腦化,一般主管和工程人員鮮有電 腦概念,以致錯失大好機會。事隔十年,台灣的電腦工業和教育環境今非昔比,台電工程和 管理人員的電腦素養想必大幅提升,核四廠若能順利開工,施工管理當能一新耳目。
民國七十二年初,ORANGE II (APPLE I I的相容機器) 在台灣大行其道,許多人買來打電動 玩具,我也買一台主機在宿舍和同事研究如何破解電玩保護程式。沒想到這一試卻上了癮, 而核三廠的工作經驗也讓我感覺到電腦的威力及其影響將無所不在。
APPLE II 在電腦史上已確有一席之地。這種早期流行的 PC 使用8 BITS 的6502 CPU,記 憶體只有64K。鍵盤和主機相連,磁碟機外掛,價格與主機差不多,大約各要壹萬元。當時 大學教授月薪也不過二萬多,這樣的設備並非人人買得起。打程式時一般都用錄音帶存放, Monitor 則透過訊號轉換器和電視共用。電玩程式也用錄音帶銷售,播放時會不時傳來陣陣 嘈雜的訊號聲。這樣簡陋的設備我用了一年半,大部份用來研究電腦的軟硬體架構,其間只 替朋友寫一個程式,計算衛星訊號接收機印刷電路的寬度。由於計算公式太複雜,小計算機 經常算錯,我用 BASIC 很快就把他的問題程式化,算是第一個自己開發的應用程式。
使用 APPLE 的經驗是我學習電腦的重要里程碑。由於有一台電腦擺在眼前,寫程式時心裡 很踏實,這種感覺和從前大不相同。我把荒廢十年的電腦知識,藉著研究 APPLE 附送的三 本手冊和 Lon Poole,Martin McNiff,Steven Cook 合著的 APPLE II User's Guide 加以沉澱, 過濾,再融合,同時利用成大圖書館內的相關電腦資訊,逐步把脫節的空隙填滿。程式語言 方面,BASIC 和 FORTRAN相近,很快就運用自如。對組合語言有起碼的了解後,我設定 好將來的工作目標,下決心把台電的工作辭掉,走上電腦這條不歸路。那時正好三十四歲。 站在人生的頂峰,電腦卻像一顆晶瑩耀眼的明珠。在初昇的旭光中閃爍著,向我招手。
在南台灣長大的我,英語能力一向不好。台北工專強迫學生閱讀原文書的教學方式,讓我吃 足苦頭。台電六年,和英文技術文件朝夕相伴,閱讀能力大有長進。回到台南,資訊環境比 恆春好很多,至少鄰近的成大圖書館就有不少中外文期刊可供瀏覽。一般電腦雜誌如 Dr. Dobb's Journal,PC Magazine,PC week,BYTE 和 IEEE 出版品都有我需要的資訊。自己 也訂了一份比較便宜的 Personal Computing。
中學時代,就曾幻想有一台可作翻譯的機器。這種粗糙的概念,促使我搜集數十篇相關論文, 也迷上人工智慧的領域。為了研究翻譯系統,還到成大外文系讀起語言學。民國七十四年, 把這些研究結果寫成「自然語言研究與自動翻譯系統」在自動化科技發表,意外地引起不少 讀者回響。有電腦公司來電相詢,也有建中的同學表示他想轉讀文組以便將來從事語言學研 究。這件事讓我重新評估自己的寫作態度,也開始思考作者對讀者應負的責任,從此下筆益 形謹慎。
寫完「智慧的面紗」(自動化科技,一九八七年七月) 我開始了解,發展一套實用的翻譯系 統並非一蹴可幾,特別是它所需要的人力物力,都不是個人所能負擔。因此我把研究目標轉 移到專家系統發展工具和比較實用的資料管理,希望能夠建立一個電腦輔助教學系統。民國 七十六年,AT 已經普及,BASIC 也從解譯器進展到可編譯的階段。我把文書處理和資料 庫的觀念結合,寫了一個文字資料編輯和管理工具,用來整理私人資料,後來繼續改良,成 為「TITES 多媒體教學系統」的一部份。
第一次看到專家系統這個名詞是在 IEEE Expert。比較有深入的了解則在參與國科會的研究 計劃,輾轉獲知德州儀器公司出版的 Personal Consultant Plus以後,經由評估這個軟體,建 立兩個先導系統,獲得滿意的結果再著手進行教學系統的設計和實驗,前後歷時三年。由於 專家系統需要大量的記憶體,硬體資源略嫌不足,到後來修改一個 Rule 竟費時二十多分鐘。 長久注視螢幕的結果,也導致左眼視力減退。我做完文字和影像部份並建好範例,決定把這 個系統告一段落,一圓留美進修的舊夢。
民國七十六到七十九年間,可說是我的創作高峰期。那時候的創意和構想,宛若泉湧。每日 工作十二小時,經常三餐就在電腦面前解決。有時三更半夜想到某個 Idea,馬上縱身下床, 上機試驗,直到曙色將至,白光漸現。我知道這樣的機緣,終生難再,因此格外珍惜,出國 的計劃也一再延展。I-20 收到,申請延後入學,無法成行,再去函道歉,然後又申請他校 入學許可。
把「多媒體專家教學系統」相關資料整理完畢,準備將來作為撰寫論文之用,最後摒擋一切, 申請簽證時竟然兩度遭到美國在台協會拒絕。他們認為我的資歷豐富,年紀又大,不可能自 費到美國讀書,一定是想移民。我費盡唇舌,一再解釋,仍然無法說服他們。想到多年心願, 功虧一簣,不覺頹喪至極,只好打道回府。在南下的火車裡越想越不甘心。回南部後索性將 歷年發表的論文,程式作品和操作手冊整理就緒,再附上一篇短文,詳述計劃留學的經過, 心想這兩吋厚的文件加上一大堆磁片,老美如果識貨,說不定還有一絲希望。
第三次申請,面談官瞄附件一眼,順手翻一下,慢條斯理地說:「我還是不相信你要去讀書」, 我聽了一急就說:「寫這些程式,費了我五載光陰,此外,我三十四歲再用四年讀完一個學 位,全班第五名畢業,你想一個人的青春能有幾個十年?我若想移民,不必如此大費周章。」 然後劈哩趴拉把論文計劃述說一遍,最後老美瞪著我,蓋了章。拿到簽證,距離學校報到的 日子只剩十天。
揮別牽手,把唯一的兒子抱起又放下,民國八十年一月一日我背著登山背包,兩手行李,搭 乘西北航空班機直飛底特律,再轉堪薩斯。抵達學校已是夜半三點。小睡片刻,睜開雙眼, 只見皚皚白雪對映藍天朝陽。順手拿起相機,走出室外。零下五度的空氣格外清新,幾隻松 鼠在雪地裡跳躍。我瞄準鄰近的教堂,按下快門。心想,年過四十,宿願得償,雖然還有一 場硬仗要打,卻對自己充滿信心。
學校裡使用的電腦是多樣化的,大中小都有。個人電腦除 PC 外還有許多麥金塔散佈在各 系所。雷射印表機也有一千多部,因此在圖書館地下室成立一個維修中心,負責全校電腦設 備的維護工作。麥金塔由於使用圖形操作介面,頗受學生歡迎。PC 則用於行政和圖書管理, 資訊檢索。網路使用相當普遍,BITNET 和INTERNET 都已連線。然而台灣來的留學生很 少使用這項珍貴方便的資源,可能是我們的區域網路系統起步較晚。民國七十六年,教育部 電算中心引進 BITNET時,校園網路尚未普及,一般學生無緣使用。當時成大只有三、四 台終端機連線,傳輸品質也不甚理想。我利用暑假探索 BITNET 網路,再將所得發表於自 動化科技四十七期,隨後台灣 IBM來電表示希望轉載,可見當時網路資訊的封閉與不足。 反觀今日 INTERNET 在台灣大行其道,使用者在家裡即可經由數據機上線,非常便捷,實 應大力推廣。
在圖書館流連一段時間以後,最讓我印象深刻的倒不是先進的電腦設備,而是圖書館從業人 員面對自動化潮流所作的自我調適和努力,以及呈現在外的敬業態度。學校的圖書及媒體檢 索系統相當完善。透過 OCLC (Ohio Computer Library Center) 將全美各大學和世界知名圖書 館資源即時連線,構成一個國際圖書資訊網路。經由館際合作,任何網點資源唾手可得。遺 憾的是當我試圖和台灣連線時,竟然找不到可以切入的網點,不免令人感嘆!
豐富的圖書館資源使我在撰寫論文時有恃無恐,更妙的是讓我買到一本珍貴的舊版書。有一 次,我在舊貨間裡看到 Washington Irving 寫的 The Alhambra。書本很舊,卻相當完整,只 是版權頁已經不見,查不到出版日期。根據外觀研判,此書可能是十九世紀的版本。回到學 校,馬上從 OCLC 叫出書名,一一核對電腦顯示的出版記錄,從外觀尺寸,頁數,裝訂方 式確定這是一本 1852 年出版的舊書。這件事著實讓我高興好幾天。
一般而言,我的留學過程還算順利,不過開學不久卻有一段戲劇性的轉折。有一門系主任開 的課,規定每位同學必須選擇一個主題,輪流主講,其他人可提出質疑或討論,每次上課還 要繳交一份和當次主題有關的讀書報告。班上的同學,有不少是教書多年的老師,我的英文 Writing 實在無法和他們相比,接連拿了兩個C,自尊心大受打擊。初抵異域,舉目無親, 系裡只我一個台灣學生,雖不至坐困愁城,一時也無善策。後來才知道學校有個 Writing Center 專門協助學生解決寫作問題,趕緊請他們幫我 Review 一下,總算漸有起色。輪到我主講「人 工智慧及其應用」,事先準備大綱和參考資料,影印給班上同學。兩個小時下來,贏得不少 掌聲和友誼。從此系主任對我刮目相看,還自願當我的論文指導教授。系裡有電腦方面的問 題,經常找我討論,在台灣磨練出來的本事,很快就派上用場。從逆境轉到順境,電腦功不 可沒。
除了本系開的課程,我還到英語系選修 CAI。「TITES 多媒体教學專家系統」也在英語系修 課時展示,和他們使用的軟体相比並不遜色。學校的軟体相當豐富,我總算有了砌磋的機會。 那時候光碟已經流行,多媒体方興未艾,我的足跡不出學校方圓百里,感覺自己就像一塊海 棉,拚命吸吮資訊世界的肥美汁液。暑修結束,寫了一篇「多媒体電腦系統」刊於自動化科技 91 期,除了記錄這段學習過程,也闡述自己對多媒体系統的憧憬與期待。然後靜下心來準備撰 寫論文和學位考試。
在台灣已將論文題目和程式準備妥當,相關論文也先後在自動化科技發表,並經國科會收錄 於中華民國科技期刊論文索引內。這些文章對我的學位取得大有助益。一般而言,美國的高 等學府對學生的研究自主權相當尊重。論文題目和寫作大綱經指導教授同意後,系主任好意 幫我申請助教獎學金,希望我在未來的一年完成論文寫作。我很坦誠地告訴她,自己準備多 年,何況青春不再,時間對我而言,已非金錢所能衡量,我決定在四個月內完成。
論文定名為「A Multimedia-based Bilingual Instructional System Using An Expert System Shell (以專家系統發展工具建構電腦多媒体雙語教學系統。)」我用麥金塔的 WORD 做文書處理,整 本論文包括圖表,照片只有一個檔案。指導教授認為必須修改或加強之處,隔天馬上改好, 一次列印三份,送請過目,前後總共修改七次。最後由三位指導教授合堂會審後定稿。非常 時期裡,每天只睡五個小時,有一陣子一天兩餐以速食麵裹腹。還好耶誕節過後,密蘇里氣 候反常,沒有下雪,久年胃病卻霍然而癒。論文送到 Graduate School 審查通過後,系主任 告訴我,這段時間她睡得不安穩,煙抽得很兇。我在心裡偷笑,卻由衷地感激他們對我的支 持與幫助。
學位拿到手,我把論文交給 University Microfilms International 出版並製作微縮膠片,也向 國會圖書館辦妥著作權登記,接著和 Texas Instruments 洽商 PC Plus Runtime 版本再授權 的可行性。誰知 TI 軟体部門告訴我,公司決定中止發行 (Discontinued) PC Plus。這個意外, 粉碎了我將 TITES 多媒体教學專家系統商品化的構想,也讓我深切地体認,程式設計師選 擇發展工具所冒的風險和面對不可預知的未來,必須突破困境的勇氣。
事已至此,我開始盤算如何改寫「TITES 多媒体教學專家系統。」這個念頭我在撰寫論文 以前就曾想過,只是考慮到各種因素,便擱了下來,如今沒有選擇餘地,只好另起爐灶,直 接用程式語言撰寫,以求一勞永逸。安慰自己幾天以後,我開始採買所需的工具軟体。在台 灣,除了倚天中文系統是自己買的以外,其餘設備都是向學校和教授商借使用,家裡只有一 台宏碁710XT,還是二手貨。美國的軟体便宜,學生又有優惠折扣,我陸續添了不少工具, 其中有些 Shareware,花筆小錢註冊,和作者有了交往,直到現在仍然保持連絡,經常交換 資訊,無形中也拓展了知識領域。
八十一年夏天,回到台灣,留美預算尚有節餘,一口氣買了三台486,又添加光碟機,音效 卡,圖形掃瞄器和雷射印表機,終於有自己的工作室。說來慚愧,離開台電以後收入並不豐 裕,勉強糊口而已,民國七十年已購小屋一幢,一家三口幸有棲身之地。妻子在家開班授課, 收入尚可,我除了兼幾堂電腦課,大部分時間得以進行程式改造計劃,免了後顧之憂。
由於軟硬体設備比較齊全,重寫系統的工作相當順利。主体架構在半年內完成。我用 QBASIC 4.5和 Microsoft BASIC PDS 7.1 充作系統外殼,再運用框架結構從 Module 呼叫組合語言 副程式,逐步建立「TITES 多媒体教學系統」和「TITES 多媒体管理系統」,不僅可以整合 文字,圖像,音效和動態影像,加上以滑鼠驅動的圖形選單介面,六種 24x24 中文字型, 1024x768x256色高解析畫面,看來比原有的系統更加生動,經過編譯,測試以後發現程式 比從前短小,執行速度加快,又不需要 Runtime 版本,完工以後,我再設計一個多媒体動 畫作為廣告,至此完全擺脫發展工具的限制,成了真正 Stand-alone 的軟体。回想這段心路 歷程,頗有「失之東隅,收之桑榆」的快感。
剛開始寫程式,很少考慮維修問題。有了構想,稍微思考一下結構,便開始動手。寫碼時猶 如天馬行空,一瀉千里,等到捉襟見肘時再回頭挖東牆補西壁。寫完後備份存檔,頂多注意 不讓磁片發霉便萬事OK。到後來,程式大而複雜,想要修改時連自己都要反覆看上幾遍才 能下手。經過數次教訓以後,終於了解事前規劃工作的重要性。後來又把核電廠記載施工日 誌那一套如法泡製;只要有進度,就寫施工日誌。詳細記錄工作內容,原始構想,寫碼時遭 遇的困難,變數如何定義?執行結果是否有錯誤,怎樣解決問題等。程式內容有重大變動, 就更新版次,將舊版存檔。每隔一段時候列印一次,局部更改則直接在程式加上說明及修改 日期,方便和工作日誌的記錄比對。如此一來雖然費時,卻使維護工作有條不紊,查考相當 容易,工作效率提高不少。
比較重要的參考資料,先用卷宗分類歸檔,滿載以後再用牛皮紙袋寫上編號,日期和目錄收 存,同時把目錄放進資料庫內存檔以便日後查考。閱讀雜誌和電腦資訊時,我一向有摘記重 點的習慣,內容包括瀏覽日期,期刊名稱,期別,頁次,標題和摘要,廣告上的資訊也不例 外,全用 A4 紙張加以記錄,依序歸檔。
軟体管理方面,從前把常用軟体做適當分類,再用筆記記錄諸如軟体功能,版權類別,操作 方法,應用範圍,功能限制及操作注意事項等。後來將這個構想設計成外部程式資料庫,放 在「TITES 多媒体管理系統」內,只要將每個軟体或程式,依照分類建立資料錄,需要執 行這些軟体時,便可很快瀏覽相關資料錄內容,按 ENTER 鍵執行。不論 DOS 或 WINDOWS 程式都可應用外部程式加以整合,不但擴充程式功能,也延伸應用領域,更是 管理軟体的好幫手。
某些工作如影像或音效處理,可能要用兩種以上工具才能完成,對於這些特殊的應用實例, 我也用筆記來記錄操作程序。例如「製作動畫的方法」,「製作立体聲 MIDI 音效」,「如何 調整 Monitor 掃瞄頻率與V8 攝影機同步」,「如何將256 色圖像設定特別的調色盤」等, 日子久了便累積成一本實用的電腦教材。
有幾個朋友問我,你程式寫這麼久,到底賣幾套,賺多少錢?我都說「賣一點點,賺一點點。」 發財是商人才有的本事。我想寫程式,只因有源源不絕的構想,又不自量力地想把它實現。 電腦世界,對我而言就像「雪夜林邊駐馬」裡的森林;幽暗、深邃,卻令人著迷。創意的實 現,所獲致的成就和滿足,絕非金錢能夠比擬。最近將一批年代久遠,略嫌殘破的寫真,利 用影像處理技術修復,再以 78 轉古董唱片配音,附上文字說明存入多媒体資料庫。六十多 歲的母親從電腦裡,看著自己年輕時代的倩影,熟悉的音樂從喇叭輕瀉而出,時光彷彿回到 從前。剎那間,我明白這幾年的努力並沒有白費。
有時候會問自己,下一步做什麼?移植到 WINDOWS 95?也許吧!從前選修莎士比亞,我 就知道「威尼斯商人」可以永垂不朽。米開蘭基羅的大衛雕像比他活得還要長久,然而程式 軟体日新月異,很難不被淘汰。只有把科技,文化和藝術相結合才能傳諸後世。我目前想做 的是利用「TITES 多媒体管理系統」,把 1895-1995 這一百年間,台灣的人事地物記錄下來, 為歷史做個見證。這個工程確實浩大,不過我和兒子都有愚公移山的精神。從資料蒐集,考 證,文字編輯,圖像輸入,音效製作和影音攝錄等工作,逐步進行。目前已建立一百三十個 資料錄。
走筆至此,當近尾聲。秋色宜人,突然想起年幼時祖父央人替我排的命書,上頭批有一首七 言:「元神乙木大雪期,幸喜頤氣來相依,傷官逢財衣祿富,少運崎嶇老景宜。」回想我的 電腦學習過程,還真是蜿蜒曲折,但願從此順風揚帆,漸入佳境。「少運崎嶇老景宜」,還不 錯,就以此為題。