跳轉到

2.1 破壞實驗室印表機驅動程式引發的怒火:RMS 為什麼無法忍受不給原始碼的軟體?#

那台印表機:一次小小的背叛,一場大大的革命#

1970 年代末,MIT AI Lab 有一台 Xerox 9700 雷射印表機——當時最先進的設備之一。問題是它極不穩定,經常夾紙。Richard Stallman(RMS)的標準做法是:跟印表機廠商要原始碼,自己修。

他打電話給施樂(Xerox),得到的答覆讓他愣住:「我們與卡內基美隆大學簽了保密協議,原始碼不能給你。」

RMS 後來多次講述這個故事,並強調真正讓他憤怒的不是印表機夾紙,而是:

  1. 他想修好它,有能力修好它,卻被法律禁止修;
  2. 保密協議的簽約方(CMU 的人)也不能告訴他——技術知識被合約隔離;
  3. 這意味著一種新的社會關係:你與機器之間,隔著一個你不認識、也不能認識的開發者。

他日後總結這段經歷:「我發現這種行為在道德上令人作嘔。我無法以良心的名義參與其中。」

「不給源碼」如何傷害社群#

RMS 的憤怒有其社會學基礎。MIT AI Lab 此前的軟體文化是:

  • 互助:任何人遇到 bug,可以自己改或問同事;
  • 改進:好的修改會被共享,全實驗室受益;
  • 信任:源碼公開本身就是信任關係的體現。

閉源軟體把這種同儕互助(peer solidarity)摧毀了:源碼保密 → 使用者變成「消費者」而非「協作者」→ 遇到 bug 只能等廠商(可能永遠不會)修 → 技術共同體瓦解為市場關係。

壓垮駱駝的最後稻草:AI Lab 的解體#

1980 年代初,MIT AI Lab 的共享文化加速瓦解:

  • Symbolics vs LMI 爭戰(1981–82):兩家公司由 AI Lab 成員分頭創立(Symbolics 由 Russell Noftsker 等人、LMI 由 Richard Greenblatt 等人),競相僱用實驗室的 Lisp 機器工程師。Symbolics 走專有路線,並與 MIT 簽約取得 MIT Lisp 機器系統的獨家商用權。
  • Symbolics 修改共享系統後不把改進回饋 MIT;RMS 反擊,把 Symbolics 的改進重寫成自己的版本加回 MIT 系統——兩造的「升級戰」持續近兩年,RMS 以一己之力對抗整個 Symbolics 團隊。
  • 同事的離去、源碼的保密、文化的瓦解——RMS 決定:不能只修一個印表機,要重建整個系統,讓共享永不落空。

1983 年 9 月 27 日:GNU 的宣言#

1983 年 9 月,RMS 在 Usenet 的 net.unix-wizards 發出公告,宣告 GNU 計畫(recursive acronym:GNU's Not UNIX):

「我將寫一個完整自由的 UNIX 相容軟體系統,名為 GNU……自由是指:你能自由使用、研究、複製、修改、再散布。」

1985 年發表的《GNU 宣言》(The GNU Manifesto)則把動機明確道德化:

  • 「軟體應該是自由的,就像言論自由(free speech),而不是免費啤酒(free beer)」——這句名言精確切割了「自由」與「免費」;
  • 他的論證不只是效率(閉源傷害使用者),更是道德論證:限制複製與修改是「不義的權力」,使用者有道德權利掌控自己用的軟體。

小結#

印表機的故事看似小事,卻精準展示了閉源軟體的社會成本:當源碼保密,技術共同體就會退化為消費者市場。RMS 的反應不是接受現實,而是發起一場重建共同體的工程——GNU。下一節,我們看這場工程如何制度化為自由軟體基金會,以及它與商業世界的長期張力。