充滿烏托邦理想的四大自由
建立日期 2005-06-23 08:00 最近更新在 2012-05-14 10:26
作者是 葛冬梅
許多人都知道 GNU General Public License(簡稱GNU/GPL),不過可能大部分的人並不清楚這份授權條款背後的理念基礎。GNU/GPL 主要起草人 Richard M. Stallman(簡稱 Stallman)早年在麻省理工學院的人工智慧實驗室從事研究時,接觸了社群開發與軟體共享文化,並深受這種開放、互助文化的影響。直到實驗室研究人員出走商業軟體公司、開發社群逐漸瓦解,軟體漸漸轉變為一種封閉、不容易取得的商品,促使 Stallman 思考軟體存在的意義以及軟體與使用者的關係。
在道德良知的驅使下,Stallman 認為軟體存在的目的是為了幫助人:幫助自己、幫助鄰居以及幫助社群,而維護軟體使用者的自由可以達到這個目的,所以 Stallman 訂出了軟體使用者的四大自由 (four kinds of freedom):
- 自由之零:為了任何目的執行程式的自由。
- 自由之一:研究程式如何運作的自由,並且將程式修改符合本身需求(程式碼的近用是實現這個自由的先決條件)。
- 自由之二:再次散布程式的自由以幫助你的鄰居。
- 自由之三:改進程式的自由,並將這些改進回饋給社群,讓整個社群均可以因此而受益(程式碼的近用是實現這個自由的先決條件)。
首先最基本的是執行程式的自由,這也是一個程式存在的根本目的。其次,一個程式並非一定可以適合所有使用者的個別需求,為了讓使用者可以依照自己的需求來使用程式,所以使用者必須要擁有為了符合自身目的來修改程式的自由,因此使用者有研究與修改程式的自由,這是一個讓使用者可以自己幫助自己的自由。在滿足了自身的使用需求後,為了使其他人也可以分享到這一個程式,所以使用者有再次散布程式的自由,這是一個讓使用者可以幫助他人的自由。而再進一步地,為了使整個社群皆可以受益,使用者應該有改進程式的自由,並且將這些改進回饋給社群,最後這個自由則讓使用者可以幫助社群。而無論是哪一個自由,都不可以因為特定使用者、使用目的、使用硬體或應用領域等等因素而受到限制。
任何一個符合四大自由的軟體,就是「自由軟體 (free software)」。需要注意的是,四大自由並不妨礙軟體的商業化,因為自由軟體的中心理念是「自由 (freedom)」,而不是「價格」。許多人以為自由軟體不收取授權金代表著與商業化背道而馳,其實不然,之所以不收取授權金是因為授權金的收取會妨礙軟體的自由散布。此外,不收取授權金,並不代表著不可以收取任何費用,以 GNU/GPL 為例,這份自由軟體授權條款就允許使用者在散布程式的時候,可以在一定程度內收取散布所需要的費用。所以判斷一個軟體是否為自由軟體,必須以軟體所呈現的自由程度來判斷,而不是以是否收取費用為判斷標準,這可以從 Stallman 早期散布 GNU Emacs 的方法就看得出來。在 80 年代中期 Stallman 開發 GNU Emacs 的時候,因為網路尚未普及,所以每當有人向他索取 GNU Emacs 原始碼的時候,Stallman 會郵寄一盤磁帶給任何想要的人,不過卻會向對方索取 150 美元,這對於當時沒有工作的 Stallman 來說,是一項的重要經濟來源,而 GNU Emacs 當然是自由軟體。
以這四大自由為基礎,Stallman 開創了不同於現行軟體授權的 Copyleft 授權機制,並進而草擬出了 GNU/GPL。
四大自由背後所代表的是一種自助助人、利己利人的烏托邦精神,這種充滿浪漫情懷的四大自由不但造就了 GNU/GPL,成為自由軟體運動的源頭,更進一步地引起了開放共享精神在其他領域的發展,例如由美國史丹福大學法學教授 Lawrence Lessig 所發展的創用CC (Creative Commons) 授權模式(註二),以及目前在生物領域的開放基因碼運動(open source genomics,註三),皆是受到自由精神的啟發。四大自由背後所代表的精神正在以一種創造時代潮流的姿態,在不同的領域發芽,它未來的繼續茁壯指日可待。
註一:延伸閱讀:自由軟體的定義:
https://www.gnu.org/philosophy/free-sw.zh.html。
註二:有關創用CC 授權請參閱此:
https://www.creativecommons.org.tw/。
註三:開放基因碼運動 (open source genomics) 的目的在於促進基因碼資訊的開放運用,因為基因碼是進一步研究的基礎資訊,對於它的近用將有助於相關研究的發展。