搜尋

關 於 本 書

‧內容簡介
‧得獎記錄

線 上 試 閱

前言
書摘 1
書摘 2
書摘 3
書摘 4
書摘 5
書摘 6

譯 者 作 品

戰之華:美國帝國主義大戰略
基因騙術
後人類未來:基因工程的人性浩劫
基因、女孩、華生:雙螺旋二部曲
死亡原因:法醫之神奇案祕錄
天使墜落的城市
正宗CIA詐騙術

企業成功案例

【類別最新出版】
服務革命:美國運通的百年從心哲學,打造高價值團隊的39堂課
ChatGPT:AI革命
台積電為什麼神?:揭露台灣護國神山與晶圓科技產業崛起的祕密
家的夢想,無限大:大家房屋的經營哲學
熱賣行銷學:促銷實戰SOP一次上手(熱賣新裝版)


Linux 傳奇(DH0102)──讓比爾‧蓋茲坐立難安的天才
Rebel Code: Linux and the Open Source Revolution

類別: 行銷‧趨勢‧理財>企業成功案例
叢書系列:BIG系列
作者:葛林‧穆迪
       Glyn Moody
譯者:杜默
出版社:時報文化
出版日期:2001年05月08日
定價:330 元
售價:261 元(約79折)
開本:25開/平裝/360頁
ISBN:9571333638

已絕版

 轉 寄 給 朋 友

 發 表 書 評 

 我 要 評 等 

Share/Bookmark

線 上 試 閱

 

前言書摘 1書摘 2書摘 3書摘 4書摘 5書摘 6



  書摘 5

1984 年一月,GNU 計畫正式展開時,史托曼從替換一位默默無聞的設計者的 Yacc 工具著手。他做這個選擇的理由是,「有個現成的類似程式叫Bison」──又一個典型的駭客雙關語──「但它跟 Yacc 不相容,又少了些功能」。史托曼取得作者同意,把 Bison 改成與 Yacc 相容,由此也奠定了 GNU 殿堂第一塊小基石。

史托曼用這相當小的程式暖身,再邁向最重要的部分。 Unix 主要元件之一是 C 語言編譯器(C compiler)。以 C 語言所寫的程式都是文件檔案,包含依照這個語言規則的指令列。電腦聽從原始碼內的指令之前,須先將指令轉換成處理器晶片所能理解的二進位制代碼0和1。

C 語言編譯器的工作就像是原始碼與二進位制之間的仲介者一般,因此,它也是每個 C 語言程式設計者不可或缺的工具,在史托曼創作自由取得的新版 Unix 上尤其重要。 C 語言編譯器不良可能嚴重影響人們鄭重看待 GNU 的機率,同樣的, C 語言編譯器很出色,且可自由取得,則馬上會讓人注意到 GNU 計畫。

史托曼再次嘗試在既有的程式上建構,以便將所需的工作量減至最少程度,這時他聽說有個東西似乎可以派上用場──可以跑 Unix 「阿姆斯特丹編譯器工具集」(ACK:Amsterdam Compiler Kit)。這是個功能甚強的編譯器,不但可以編譯 C 語言,還可以用在當時所使用的大部分語言上。這個軟體是由美國學者譚寧邦(Andrew Tanenbaum)在阿姆斯特丹自由大學所寫的,又稱為「自由大學編譯程式組」。史托曼大概就是因此受到些誤導,去信請問譚寧邦是否可以把它用在 GNU 計畫上。

史托曼回憶說,「(譚寧邦回函說)『大學名為自由,編譯程式可不然,閣下何不放棄自由系統的傻念頭?我打算加幾個應用程式跟編譯程式配套促銷,你貢獻幾個,我可以把利潤分你一份。』這話在譚寧邦說來是合情合理得近乎大方,對史托曼而言卻是一大侮辱。ACK 這類專利軟體,正是他寄望以 GNU 計畫一搏的對象。

譚寧邦不太記得自己說了什麼,但他解釋沒能答應史托曼把 ACK 用在 GNU 的理由是:「我們好像已經簽了約,要透過一家美國公司和一家歐洲公司,將 ACK 做商業販售,」他說。「此外,我們的研究小組需要這筆錢獎助研究生,而且據我記憶所及,他來的時候我們已經被人簽走了。」

這些理由雖然聽來冠冕堂皇,但史托曼所見到的只是譚寧邦不願在自由軟體運動上助一臂之力。他的反應跟幾年前對付「符號」公司相同,決定自己寫對等軟體,與這令人懊惱的程式碼較勁,或甚至擊敗它。

1984 年九月,史托曼嘗試調整另一個編譯程式無功後,回到他至今用得最為成功的 Emacs。新版 Emacs即是習稱的 GNU/Emacs,程式碼「跟用 TECO 語言所寫的原版 Emacs 全然不同,」史托曼說。還有一個舉動充分象徵他重返人工智慧實驗室尋根,就是以他極為自豪的「強大優雅的語言」Lisp,改寫 GNU/Emacs 大部分程式。

早在 1985 年之前,GNU/Emacs可以編輯檔案,史托曼便把它公諸大眾。這是重要的一步,象徵人們第一次可以自由使用和評鑑 GNU 軟體。儘管這時 GNU 作業系統幾乎不存在,人們還是可以使用Emacs:史托曼時時以 Unix 相容性為指導原則,意味可以在所有的 Unix 上執行的GNU/Emacs、可提供他龐大的潛在使用者群。

首先,「人們開始要求並寫作改良程式,結果是讓我繼續在Emacs上精益求精,所花的時間比預期長了許多,成果也比原先預計的好上許多,」史托曼回憶道。釋出程式碼和鼓勵使用者反饋與修正的做法,多年來一直是 Unix 文化中心照不宣的一部分,是往後十五年間自由軟體迅速改善的主因。Linux「核心程式」開發把這個方法發揮到極致,更是它迅速成長茁壯的關鍵因素之一。

公開Emacs的第二個影響是,史托曼可以錄在磁帶(tape)(這是軟碟(floppy)普及前的制式流通工具)上販售,再搭配新興的網際網路媒體做自由流通,但當時只有極少數人使用。由於使用者很難以其他方式取得副本,販售磁帶的服務方式因而有一個更大的利益效應,就是讓史托曼有一筆收入。「我之所以辭掉麻省理工學院的工作,推展 GNU 計畫,就是要讓麻省理工學院沒有立場干涉我依自己的方式自由流通 GNU 軟體,我不想央求麻省理工學院行政單位批准我的行動,否則他們可能會固執己見,使得計畫功虧一簣。」

值得稱許的是,人工智慧實驗室不但准許史托曼繼續使用實驗室的電腦,還讓他繼續住在他之前的「科技廣場 545 號」辦公室達 12 年之久。史托曼甚至拿這個地址去做選民登記。他至今仍保留這段快樂時光的紀念:他的登入身分(log-in ID),簽名時用的是當年在 ITS 上的「使用者」名字 rms,全世界的駭客一見這姓名縮寫就知道是他。

儘管史托曼說他自己「清貧度日。為了這個計畫,我心甘情願,但我一直過得很清貧」,開發 GNU 初期最擔心的就是經費,這是可想而知的事。「剛開始時我並不知道自己是否有收入來源,」他回憶道,只不過「第一年好像是 LMI 付我薪水為麻省理工學院做點更新使用手冊的工作。」總之,「重點是,」他說。「當時我已毅然決定,什麼也嚇不了我。」

所幸,GNU/Emacs磁帶每份售價 150 美元──「我只是覺得價錢不錯而已,」他解釋說──很快就可以提供穩定收入。「到了那年年中,每個月有 8 到 10 張訂單,雖然還存不了錢,但已夠我生活了。」

史托曼受到 GNU/Emacs 上路後獲認同,及逐漸有錢進來的鼓勵,開始把心思轉到問題重重的 C 語言編譯器等計畫上。這次他決定完全由自己寫,不用既有的程式。結果發現這是一椿極其複雜的工程。「這是我所寫過最具挑戰性的程式,」他輕描淡寫說。「不只是寫程式碼,還得列出計畫。」

史托曼寫碼的方式獨樹一格。「我從腦海中模糊的概念著手,」他說。「找出自己可以寫的部分,寫出一部分就能觸類旁通,寫出周邊的部分,接著融會貫通,結果就全都寫出來了。」這或許可以說明 GNU 計畫以 Unix 為模式的過人之處。

史托曼稱這編譯程式為 GCC ,也就是 GNU 的 C 語言編譯器的意思。結果證明 GNU 是頂級軟體,對傳播 GNU 計畫的助益甚至比 GNU/Emacs 還大。「有一、兩年的時間,GCC 堪稱是大部分支援系統的最佳編譯程式,」他說。「但這並不是一蹴可幾,而是花了一段時間做最佳化研究的成果。」跟最佳化 Emacs 時一樣,這次史托曼也是得力於程式問世後使用者的批評指教。

此外,新 GCC 也使他的收入大增。「它開啟委售佣金的可能性,人們對 GCC 委售的佣金變更和佣金等級感興趣的程度,比對 Emacs 高多了,」史托曼說道。「在自由軟體基金會(FSF:Free Software Foundation)成立之後,有了這個收入來源,使我感到特別高興。大概是在1985 年 7 月吧,基金會接手販售Emacs磁帶的生意,因此斷了我的收入。」

「自由軟體基金會」的成立代表 GNU 又邁出一大步。「剛成立的時候,基金會沒錢請人,後來是夠請一個人就請一個人,」他解釋道。「重要的是,基金會讓我們可以同時做更多的事,因為,當時還少了許許多多的程式。」漸漸的,由史托曼本人、人數漸增的自由軟體基金會工作人員和志工所寫的程式越來越多。「最早(只)有兩、三個人(幫忙),」他回憶道。「到了 80 年代後半期,我預期可以達到 30 至 50 人。」