把電腦程式的源碼公開並非新事,電腦剛被發明時,公開源碼是普遍的做法。把源碼封閉是近廿多年來才出現的事情。在八十年代初因為電腦程式開始成為可獲利的生意,因而引發了一個由公開源碼轉為封閉源碼的風潮。一些本來由多人協同開發的程式例如 Unix(2) 和 Emacs(3),其中小數主要的開發者封閉了源碼,然後以整體程式版權持有人的身份來謀利,並威脅其他開發者不可再公開源碼,甚至要購買正版,才能使用本來是自己有份開發的程式。以這種方法處理協同開發程式中的版權問題引發了不滿,自由軟體運動 (Free Software Movement) 就在這個背景下開展。
自由軟體運動經過了十多年的推廣,也因為 Linux 的成功和 Eric Raymond 的經典文章「教堂與市集」中有力的論述 (4),就是連當時因開發網路瀏灠器 Navigator 的 Netscape 公司 1998 年也打算開放其瀏灠器的源碼。不過推銷這個計劃時,發現 "Free Software" 一詞在英文的含意中有點模糊,會令人有「免費軟體」的誤會。「免費」就會令人聯想是次等的貨色,因此不利宣傳,於是一個新的詞語 "Open Source" 就旦生了 (5)。
回到現在,"Free Software”和 "Open Source" 這兩個詞有不少人也會認為是差不多的,不過細心分析,就會發覺 "Free Software Movement" 認為封閉源碼是個倫理問題 (6)。另一方面,因為 "Open Source" 是源於商業考慮,跟著「教堂與市集」的進路認為開放源碼比封閉源碼在開發上是比較優勝,並不涉及倫理考慮,所以就算使用開放封閉源碼混合模式也並無不可 (7)。
經過以上的分析,如果一本書是以 "Open Source" 為書名,其取向應該是以商業為重,不會認為軟體自由是個倫理上的問題。我們可以這個為出發點去閱讀這本書。
書第一部分的文章是以開放源碼直接有關的範疇為題。頭幾篇文章討論開放源碼和封閉源碼在開發上的異同和安全性的比較等問題。跟著有數篇文篇討論軟體市場商品化因而帶來開放源碼的商機。最後就有四篇文章討論歐盟、印度、中國和巴西的開放源碼發展的情況。書的第二部分包括了好幾篇討論由開放源碼引申出來的網路協同作業理論的文章。而且也有幾個在網開放資訊的協同作業和社群的例子如 Groklaw、Wikipedia 和 Slashdot 等。我會在下期的電子報中為大家更詳細介紹每一部份的內容。
(1) https://www.oreilly.com/catalog/opensources/book/toc.html
(2) https://www.catb.org/~esr/writings/taoup/html/ch02s01.html
(3) https://www.free-soft.org/gpl_history/
(4) https://www.linux.org.tw/CLDP/OLD/doc/Cathedral-Bazaar.html
(5) https://www.oreilly.com/catalog/opensources/book/raymond2.html
(6) https://www.fsf.org/licensing/essays/free-software-for-freedom.html
(7) https://www.catb.org/~esr/writings/cathedral-bazaar/magic-cauldron/ar01s10.html