開源軟體的起源
科技產業資訊室 (iKnow) - 陳歆 發表於 2019年3月15日
圖、開源軟體的起源
陳歆
Robert H. Chen
[1]
開源軟體與半導體同樣的是在「美國電話電報公司」(AT&T)貝爾實驗室誕生,但不同於電晶體的發明,開源軟體是被美國司法部強行問世。即六十年代的美國電話系統是AT&T蓋世無雙的天下,而以防AT&T擴充其市場壟斷,司法部經過調查之後就下令禁止AT&T電話系統之外的商業活動,因而貝爾實驗室所研發成的名為「Unix」的大型電腦作業暨聯接系統被AT&T「開放」,即公佈了Unix的原始碼而允許其免費使用和散佈。Unix於七十年代起就被理工學術界和尤其新科的電腦科學學者依照契約法所稱之「廣義公共授權」(GPL)普遍使用。
適逢政府解散AT&T而開放電話通訊市場之八十年代初,AT&T日漸式微的壟斷就可讓美國司法部於1983年解除AT&T反托拉斯的同意令。回歸商業本性的AT&T立刻轉而將Unix看成可收費的專屬軟體商品,而開始僅以目的碼授權和散佈。
美國電話電報公司的Unix平台原先被司法強制執行的免費開放雖然是GPL的發源典範,接著的原始碼封閉專屬商品往後就成爲販售軟體的標準模式;二者也就是又一次法律在指導科技產業發展的範例。[2]
八十年代是個人電腦和應用軟體逐漸發起的時代,而因爲使用者無需修改,個人電腦的包裝軟體是以授權而安裝在電腦的唯讀記憶體或僅以目的碼嵌入軟碟而販售,即是不提供原始碼之不得重製的專屬商品。
然當時曾使用免費Unix的電腦科學學者可是已經食髓知味,而其中最具影響力是電腦科學神才理查史托曼。他以身作則就開發了全免費且提供原始碼的取名為「GNU」作業平台和開發新電腦軟體使用的「GNU發展工具箱」。[3]
史托曼曾直言不諱而譴責所有的專屬軟體廠商,「原始碼的封閉或者任何受限之授權無非是壓抑電腦技術發展的反社會行爲」。他於1985年所創立的「自由軟體基金會」(FSF)就開始推動所有電腦軟體統統免費而能任意散佈的運動。即將來在電腦科學界極爲活躍的FSF是堅決反對「數位權管理(DRM)、軟體專利、和任何專屬的軟體產品」。[4]
史托曼甚至曾說,「著作權侵害並非罪行,妨礙軟體的取得才是刑事罪」,且能彰顯他堅不可摧的意識是在全球電子業和喜愛蘋果產品的消費者都在哀悼於2011年去世的史提夫賈伯斯,史托曼被記者問起他對賈伯斯的追悼感言時,他居然說,「我並不因爲他死而快樂,但我很高興他走人了」。[5]
史特曼的自由軟體基金會是提倡所有電腦程式的完全開放,即原始碼要公佈、自由散佈,和免費使用,而可任意修改的唯一條件是要公佈修改的原始碼而讓他人免費使用、任意散佈和更加修改,即是與著作權「Copyright」的基本理念完全相左,所以史特曼自己將他的主張取名為「Copyleft」。
史托曼的「Free and Open Source Software」(FOSS),即「Free」的既「免費」又「自由」,和「Open」的既「開放」又「可散佈」的軟體則是免費且完全無散佈限制之「開源軟體」(Open Source Software)的前身。[6]
然而,微軟就是於九十年代開始強行其作業系統的市場壟斷,卻遠在芬蘭的李諾斯托瓦德斯,在科技大學聽完史特曼的演講之後,就利用了史托曼的「GNU發展工具箱」,而出於好玩的心情,就編寫了自己的名為「Linux」的完全符合著作權相左主義之個人電腦作業系統。而於1991年在網路公佈Linux的原始碼之後,數多位有志相同的編碼族就相應而參加了Linux的建檔作業。
托瓦德斯以如今稱之為「群衆供應」就此延攬到所有不滿微軟視窗的編碼群衆,而他和他們以編碼族的單獨運作特色,就各自卻共同啓發了一個與微軟視窗直接競爭之全免費且全開放的公用個人電腦作業系統。[7]
托瓦德斯初步的Linux是作業系統的「Beta」版,即是免費給網友作實地測試,而如此可查出其中的缺點,並取得評論和改良的建議。而因爲更爲完善的系統會吸引更多人之使用,此良性循環很快就不但是產生有過而無不及微軟視窗的新作業系統,Linux且可完全免費使用![8]
如此凝聚而發揮群衆供應力量,最顯著的證例是善用網友無窮的知識而提供社會大衆免費且極有價值的《維基百科》。即社會大衆的共同知識會遠超越即使頂尖學者所能提供,而多方不斷的參與會建造一個自動修正和一直更新且可隨時參考的線上百科書。
儘管稍顯過於理想化,史托曼和托瓦德斯的軟體全開放理念是有經濟學的根據,即依照法學教授兼任上訴法院法官理查波斯納的芝加哥大學自由市場經濟學論述,「法律不應該妨礙市場的自然供需運作」。即民間一直擴增的個人電腦使用自然會造成更有彈性且便宜的作業系統「虧空」(scarcity),而在微軟和蘋果並沒有滿足此需求之際,若有新的供應來源能彌補供應的虧空,法律不應該限制此及時而自然發起的供應。[9]
史托曼和托瓦德斯甚至是將FOSS的法律經濟學延伸到「任何防止資訊的自由流通者,是妨礙社會大衆取得知識的權利之極不道德行爲」。亦即,知識無論是由誰而發,是屬於社會大衆,而其自由流通是有利於社會的進展。
當然,此極偏左的信念被軟體商業批評為過於情緒化之帶有反商之意識,則是忽略軟體開發廠商曾對軟體技術發展的貢獻,即所投資的金錢、智力、和勞力應該有適當的報酬,才能鼓舞利於社會的新軟體開發和發展。[10]
即有價值的新軟體馬上就會被競爭者抄襲,而缺乏投資的報酬誘因會造成整個的軟體產業停滯不前,國家則會失去難以建造的領導地位。軟體大廠因而堅持其新開發軟體的原始碼務必能保密,而廠商能以專屬權控制其開發的軟體之下游交易。
看似公用及私有經營提倡者各有理的難解論爭,新軟體開發的商業規則顯然是亟待協調。第一個折衷提案則是軟體自由流通提倡者所推動的「開放源碼倡議」(OSI),即以鼓勵開源軟體使用,業者得以用來開發商業性的衍生軟體,但依照FOSS的基本精神,所開發的新軟體原始碼必須公佈且讓他人任意使用和散佈,即可獲利但「不得執行任何下游的專屬權」。[11]
開發新軟體的廠商雖然樂在使用數學和電腦算法以及發展平台和應用工具等免費的開源軟體,他們絕不願意將自己所開發的衍生軟體列爲OSI軟體,即原始碼的公佈和任意散佈會讓新創軟體的競爭力化爲泡影,則無專屬權而獲利是自相矛盾,他們則堅持要以智慧財產權控制下游的交易。[12]
第二個折衷提案則是所謂的「寬容型軟體授權」(PSL)。即授權條件只是要註明所使用之開源軟體的來源(以便推廣開源軟體的使用),而所研發的軟體不但得以販售而獲利,則毋須公佈原始碼,且可持有下游交易的專屬權。[13]
最早依照PSL而授權作業軟體是「柏克萊軟體散佈」(BSD)和「麻省理工學院授權」(MIT License)的公用作業平台和發展工具;接著是「摩玆拉」(Mozilla)的瀏覽器及電子郵件服務、GitHub的編碼作業平台和寄存及社群主機服務、和「阿帕奇」(Apache)的「電腦集群架構」大量資料及資源管理軟體授權。[14]
軟體開發業者另外可免費下載諸如C++、Java、Python之電腦程式語言,和諸如Matlab和Octave的免費線性代數和矩陣分析數學軟體,以及使用數多一直在更新的作業系統、開發平台、發展工具、和各種應用程式。[15]
諸如「紅帽」(Red Hat)和Github的「編碼主辦網站」是提供免費的Linux作業系統、寄存和管理服務,以及各種發展平台、應用程式、和技術支援。如此幾乎零成本的基礎性軟體服務就會鼓舞新軟體的開發。各編碼主辦網站的經營模式是預測編碼者在開發新軟體的過程中不免會踢到鐵板,而自然而發的「計劃慣性力」會迫使編碼者設法解決問題,則騎虎難下的編碼者不得不購買可解決問題的特殊軟體包裝品,以及更進步的應用程式、和訂閲技術支援服務。其計劃若要規模化,就有付費可取得的更大數據儲存和計算功能。[16]
使用編碼主辦網站的主要原因是基於一般軟體開發者四個基本的期望,即解決目前的編碼問題、增強個人的名譽(所謂的「公共履歷表」)、求得網路宇宙的歸屬感(包含寫出漂亮編碼的榮譽感)、及純愛好編寫程式。亦即,譬如Github的用戶一般是以使用者à貢獻者à維持者的過程先參與而後被鈎上。[17]
諸如Github和Red Hat網站的價值並不在於財務的狀況,譬如微軟於2018年願意以七十五億美元(年營業額之竟三十倍)購併Github是因爲其「策略性的價值」,即原為軟體全内部專屬開發的微軟購併Github是以取得其用戶和技術名望來建立微軟自己先忽略爾後耽誤的群衆編碼供應。連向來似乎無法趕上雲端時代的IBM擬於2019年以三百四十億美元購併Red Hat是以取得其「數據中心聯繫系統」(OpenShift)來強化IBM遲來的雲端計算而促進Watson AI的更進一步發展。谷歌早於2006年以十六億美元購買根本不賺錢且智權訴訟纏身的YouTube看似是策略性的吸收為己有(co-opt)網路搜尋作業的有力競爭對手。[18]
微軟和IBM如此積極的動作是否意味著開源軟體即將全被吸收而成爲大廠所控制的專屬封閉軟體,或者大廠反而會全力參與而藉由龐大的經濟勢力促進開源軟體的更進一步發展和更廣泛的使用?提倡資訊自由流通的編碼群衆都在拭目以待。
然而,依據美國大企業向來的作風,購併的主要目的一向是吸收具威脅性的競爭對手,可以從微軟、IBM、谷歌、臉書、和亞馬遜等網路技術大廠各自近幾年的壟斷動作來看,其實我們不應該期許美國大廠會改變而促進軟體自由開放更進一步的發展,反而會設法擋住其進展。但願開源軟體的廣泛使用已經是奠定了新軟體開發的經營典範,而能經得起大廠的攻擊,即寬容型的授權模式會勝出。
全球的編碼群衆所能運用的數學、統計學、矩陣分析、和應用程式,而可免費使用的作業和發展平台,尤其加上谷歌所研發的「張量串流」和「深度學習」的「適配人工神經網」等開源軟體,再加上阿里巴巴、百度、和騰訊的機器學習訓練集日益劇增的大數據,整體所促成的人工智慧快速發展,恐怕也很快就會逼迫人類面臨人工智慧的奇點,而更可怕的遠景是少數資訊大廠的機器人會掌握該奇點而控制全球的智慧。[19]
(4680字;圖1)
[1] 筆者(robgaoxiong@gmail.com)曾在美國矽谷做科學研究及任職舊金山律師事務所科技顧問,在台灣曾在宏碁電腦、國際通商法律事務所(Baker & McKenzie)、台積電、奇美電子、日月光,財團法人資策會和工業技術研究院的專案顧問、以及國立台灣、清華、和交通大學兼任教授。學歷是密歇根大學空間物理學博士、史丹佛大學電機系後博士、加州大學柏克萊法學院法學博士,美國加州執業律師、美國專利暨商標局註冊律師。著作包括Einstein’s Relativity, the Special and General Theories, McGraw-Hill (2016)、Liquid Crystal Displays, Fundamental Physics & Technology, Wiley (2011)、Made in Taiwan, the Story of Acer Computers, McGraw-Hill (1997)、《英美契約法》元照出版公司2015年、《美國專利訴訟關鍵案例解讀》元照出版公司2012年、《晶理法,液晶、理工、法律》元照出版公司2010年,以及數件相關物理的學術文獻和智慧財產權法的文獻。
[2]「廣義的公共授權」(General Public License)
[3] Unix是學術界和政府機關所用的大型電腦聯繫作業系統。「GNU」除「角馬」(gnu)之外的意思是一「遞迴縮寫」(recursive acronym),即「GNU’s Not Unix」。
[4] 理查史托曼(Richard Stallman)、「受限之授權」(restrictive licensing)「自由軟體基金會」(Free Software Foundation,簡稱FSF)、「數位權管理」(DRM)、「專屬的軟體」(proprietary software)。
[5]“I’m not happy that he died, but I am glad that he is gone.” 引述取材於維基百科。
[6]「免費且開源的軟體」(Free and Open Source Software,簡稱「FOSS」)、「開源軟體」(Open Source Software,簡稱「OSS」)。
[7]李諾斯托瓦德斯(Linus Torvalds)、「GNU發展工具箱」(GNU Development Kit)、「群衆供應」(crowd sourcing)。
[8]不同於視窗,Linux是毋須re-boot,而由於一直有編碼者(coders)在監督,電腦病毒比較難傳染,其「寄存藏」(Repository)也是方便衆多Linux相容的應用程式下載,而其應用彈性可讓更爲客製化的系統設計。Linux也不會像微軟而搜集使用者的資料。Linux的主要缺點是其與視窗之不相容以及其下載非Linux體系軟體的困難。Linux目前是霸佔近九成的伺服器、超級電腦,和手機作業系統,即不再僅是微軟的「小弟」。參考ThioJoe,“Is Linux better than Windows?”,March 21, 2018, YouTube.
[9]理查波斯納(Richard Posner),《法律之經濟學分析》,Posner, R., Economic Analysis of Law, Aspen (2007)。
[10]史托曼其實曾建議可由政府的某種稅收分配給軟體開發廠商和個人軟體工程師,即是仿效以前加在錄/播放機和錄音/錄影帶和光碟給唱片商和藝人的「消費稅」(excise tax)。然而現在從網路下載的軟體是沒有可加稅的傳媒裝置,則軟體開發與娛樂表演最大不同的是成本比較低,即沒有回收率的壓力。
[11]「開放源碼倡議」(Open Source Initiative),「開源軟體的使用者不得執行任何下游專屬權」(the OSS user cannot exercise downstream proprietary rights, but can use OSS software development for commercial use)。相應OSI的GPL有AGPL(AferoGPL)、LGPL(Lesser GPL)、EPL(Eclipse GPL)、CDDL(Common Development and Distribution License)、和「摩玆拉」(Mozilla)。
[12]依據維基百科,開放源碼有一千四百份不同的授權合約。
[13]「寬容型軟體授權」(Permissive Software License,簡稱「PSL」)。
[14]「柏克萊軟體散佈」(Berkeley Software Distribution,簡稱「BSD」)、「麻省理工學院授權」(MIT License)、「摩玆拉」(Mozilla)之Thunderbird電子郵件和Firefox瀏覽器、GitHub的「編碼作業平台」(coding platform)、「寄存」(repository)及「主機服務」(hosting service)和「阿帕奇」(Apache)的「電腦集群架構」(cluster computing framework)。
[15]目前徴才的科技廠商和律師事務所都在列舉熟悉OSS為主要錄取條件之一。
[16]「原始碼主辦網站」(source code host)、計劃慣性力」(project inertia)。
[17]參考Nadia Eghbal, Github, YouTube, August 30, 2017。
[18]「策略性價值」(strategic value),參考“Why Microsoft is Willing to Pay So Much for Github”,Weinstein, P., 《Harvard Business Review, June 6, 2018、《經濟學人》2018年十一月3日。
[19] 「張量串流」(TensorFlow)。人工智慧超越人類智慧就是AI的「奇點」。
--------------------------------------------------------------------------------------------------------------------------------------------
【聲明】
1.科技產業資訊室刊載此文不代表同意其說法或描述,僅為提供更多訊息,也不構成任何投資建議。
2.著作權所有,非經本網站書面授權同意不得將本文以任何形式修改、複製、儲存、傳播或轉載,本中心保留一切法律追訴權利。
|