2010年10月21日 星期四

自由軟體與圖書館管理-作業四

4. 自由軟體與開放源碼有何異同?
自由軟體指的是符合史托曼(Richard. M. Stallman)所訂四大自由的軟體,其主要的角度從使用者出發,探討自由軟體能賦予使用者哪些權力;而開放原始碼指的符合開放原始碼組織定義的開放原始碼定義的軟體,裴倫斯(Bruce Perens)所儗,從程式設計者的角度出發。目前開放原始碼最新版本為1.9版,以下將以此版本進行分析。

以自由軟體的定義為主,逐項對照開放原始碼的定義

自由軟體
‧不論目的為何,有使用該軟體的自由(自由之零)。
開放原始碼
‧不得對任何人或團體有差別待遇
‧對程式在任何領域內的利用不得有差別待遇

自由軟體
‧有研究該軟體如何運作的自由,並且得以改寫該軟體來符合使用者自身的需求(自由之一)。取得該軟體之源碼為達成此目的之前提。
開放原始碼
‧衍生著作

自由軟體
‧有重新散佈該軟體的自由,所以每個人都可以藉由散佈自由軟體來敦親睦鄰(自由之二)。
開放原始碼
‧自由再散布

自由軟體
‧有改善再利用該軟體的自由,並且可以發表改寫版供公眾使用,如此一來,整個社群都可以受惠。如前項,取得該軟體之源碼為達成此目的之前提(自由之三)。
開放原始碼
‧原始碼
‧衍生著作

相異
‧原創作者程式原始碼的完整性
‧散布授權條款
‧授權條款不得專屬於特定產品
‧授權條款不得限制其他軟體
‧授權條款必須技術中立

由以上可以推論,不管是自由軟體還是開放原始碼,對於使用者的使用、散布、改寫、再利用等權利,都有明文規定。然而,自由軟體卻沒有提到保持原作者原始碼、以及授權條款相關的定義。這也許和自由軟體是站在使用者立場來定義有關:

以使用者角度來看,使用者在乎的只有原始碼取得與否,保存原始碼的完整性並不是很重要,畢竟以上兩者的定義都同意衍生著作的散布,就算把原本的檔案改掉也無傷大雅。
以程式設計者角度來說,即使使用者所作得更改都是為了讓程式趨近於完整,還是會想把最原始得作品保存下來。

至於授權條款的部分,開放原始碼列了10條,其中有4條都在說明授權條款的部分,自由軟體的定義裡卻幾乎沒有提到這塊。這也許是和自由軟體的起草人理念有關。史托曼(Richard. M. Stallman)認為軟體的存在是為了幫助人,在這種近似於烏托邦理想的觀念中,產生的定義才忽略了條款這部分。

另外,兩者都沒有禁止軟體進行商業活動,在中文中的自由軟體,由於英文的free會讓人誤會所指的是免費,進而認為自由軟體不可以牽涉近商業活動,但實際上自由軟體的自由指的是沒有障礙,與商業活動無關。

但不管是哪一個,對使用者使用、散布、改寫、再利用等權利是很堅持的,所以如果要使用自由軟體,以上的事情做了是絕對不會有問題的。

沒有留言: