軟件開源是一種很奇葩活動,從正常人眼里看,它相當于一幫瘋子認為這天下軟件應該是免費的,接下來他們就去做了,再接下來這事竟然就成了,并極大的影響了產業的格局。現在的結果是如果下一秒把開源軟件從現實中抹去,那互聯網立刻就不存在了,BAT,小米乃至你喜歡的微信、微博基本都玩完了。我始終認為開源對社會變革有非常強的啟示作用,這篇文章主要來探討下這個事情。
軟件開源的故事
開源運動起源于Richard Stallman的GNU(http://www.gnu.org/))。Richard Stallman堅持認為軟件應該是自由的而不應該是封閉的,也就是說他堅持認為軟件商業化是一條錯誤的路線,于是他在1983年成立了GNU,在1985年成立了自由軟件基金會,主要目標就是通過GNU打造完全自由的軟件生態系統,替代已有的商業軟件。在GNU開發出大部分軟件后,1991年Linus開發出了Linux 內核,最終使GNU成為一套完備的軟件生態系統,其中涵蓋了從操作系統、編譯工具、編輯工具等進行軟件再生產的必備工具。接下來則是其他開源組織的建立和發展。其中比較關鍵的三個是:
1)1998年開源軟件促進會OSI成立。
2)1999年Apache軟件基金會成立。
3)2004年Eclipse基金會成立。
接下來開源軟件就越來越成氣候了,總的來看越是在那種偏工具的地方開源的勢力就越鼎盛,所以一般用戶的對開源的感覺可能還不太強烈,但程序員對開源感覺十分強烈,強烈到你不懂開源技術就找不到工作的地步。大多一般用戶用的產品是經過商業公司打磨過的,而被打磨的“原料”乃至進行打磨的工具往往是開源產品。
比如大家很熟悉的iOS,也就是iPhone上大家每天戳來戳去的那個系統,其實它是基于開源系統再改造來的,其內核到現在也還是開源的。
再比如隨便干點啥都引來一堆吐槽的小米,其故事的核心MIUI是定制的Android,而Android則是個開源項目。
最后大家每天用的各種網站比如吐槽頻繁的微博,程序員們很勤奮的把它打造出來所用的工具也大部分是開源的。所謂的LAMP體系實際上包含了從操作系統到Web服務器再到數據庫和開發語言,最終結果就是用這個你想干啥產品都行了。微軟有自己的一套產品來與這套體系PK,但從結果來看可以講微軟是一敗涂地。
看完上面的這種說明,我想大部分人會覺得這是一個超級牛的東西,那接下來還有一件最讓人受不了的事情,那就是這些很牛的東西都是不要錢的。
準確來講,開源和不要錢其實沒啥關系,但這模式顯然不鼓勵賺錢。
抽象之后的開源運動
簡單來講我不認為一個與時代背道而馳的,不能讓大家有普遍收益的東西能夠大行其道。開源運動這東西,坑的是微軟等幾家有統治性市場地位的軟件巨頭,但其他人卻可以從中獲得普遍收益(鮑爾默曾經大罵開源是癌癥),所以才獲得各大公司的支持,最終才走向繁盛。在這一過程中理想主義是一個媒介,如果沒了現實里普遍收益的支持,那這很可能只是個小眾的東西,而不會是現在這種聲勢。支撐開源的第三維力量則是以互聯網為代表的技術進步以及社會的普遍富裕。
這就是我認為的促成開源的三股主要力量:公司上的普遍收益,理想主義以及開源的前置社會條件。
一、每個人都可以撿便宜導致公司的普遍有收益
開源軟件要想獲得廣泛應用,還必須為各種組織帶來具體的收益。從開源的根本特征我們知道,開源軟件在下述方面具有明顯的優勢:
1.無償使用
2.可定制化
3.公開透明
前兩個特征與開源軟件自身的質量相配合達到了這樣一個效果:當一個公司需要擁有某一軟件的主要權益(使用,修改,定制),卻又無法單獨為其完全支付開發成本時,開源就是一種唯一的選擇。這就和道路對于各種企業的意義一樣,任何一個企業都需要道路交通的支持,但很難讓某家企業單獨負擔道路的修建和維護成本。我們的國產OS,顯然深刻的意識到了這點,所以雖然名字是國產,但基本依托于現有的開源軟件。
二、理想主義情結
從開源發展歷史來看,有清晰的證據表明開源的產生是個人按照自身價值取向進行自由選擇的結果,極具理想主義色彩。“Richard Stallman的自由軟件,首先是反對軟件的封閉性,反對用專有軟件和商業條款束縛人類的智慧和創造性,反對從法律和著作權的角度來人為的阻礙軟件和技術的傳播、使用和學習。”正是基于這種信念Richard Stallman才創建了GNU,開源社區才得以起航。
后續的很多開源項目則基本遵循了類似的模式:一個人或者因為自娛自樂、或者因為方便自己的生活工作創建某一個項目,而后感興趣的人逐步加入,進而使開源項目逐漸成長壯大。Linux 內核,Python語言等都是這樣一種模式產出的產品。
這也就意味著為使開源發生,在價值取向上必須有人更愿意選擇創造與貢獻而不是無限占有。開源并非是最大化個人利益的有效手段,當一個人無限擴張自己的欲望,并總是希望占有更多時,并不適合參加這項工作。喜歡追求理想,喜歡學習創造新的東西,渴望改變和引導技術發展的進程等具有理想主義色彩的要素是開源的原動力,而無限制的追求財富則更容易讓技術人員把精力花在開發并銷售自己的軟件或者謀取更好的職位這類事情上。作為結論可以講,自由選擇的權利加上追求理想的力量(自由創造,自由分享等)是開源得以發生的第一條件。
三、社會條件
如果是原始社會,大家都還吃不飽飯,那估計沒人愿意做開源這種事情,雖然從中可以獲得更大的人生滿足,但活著顯然更重要。同時,沒互聯網的話,人們活動范圍被限制在現實空間里,開源這種事情你想干也干不了。當社會發展到今天,在局部地區這兩個困難就不存在了。參與開源的始終是歐洲人和美國人多些,這是因為這事也得占時間,社會越富裕才越有時間來干這事。其次是互聯網所制造的虛擬空間讓合作得以跨越現實空間的阻隔。只要建立基于互聯網的資料庫,并打造一種合作規約,那就不管你在地球那個角落,你都可以參加開源項目。這種協同只要開始就可以不斷改善,制造水平之上的產品。
上述三種驅動力共同的推進了開源的發生和發展。
開源與社會變革
在開源這種模式下無論是參與者和使用者顯然都是更幸福的。開源的參與者在做自己喜歡的事情,而使用者則可以讓自己的選擇權最大化。所以接下來讓人不得不思考的一個問題就是開源這種模式有可能擴展到其他商品的制造生產么?
這背后的問題其實和《零邊際成本社會》一書講的在范疇上是完全重疊的,但走的更遠一些。《零邊際成本社會》一書講的主要是產品共享,而講開源時也涵蓋了產品生產乃至組織形式。這問題非常宏大,如果一種自愿生產的模式可以比現在的生產模式有更高的生產率,如果產品的共享可以普遍取代專有,那這個社會一定是另外一種樣子。這看著很荒謬,但如果犧牲專有可以獲得更多,那這種新的社會模式就會獲得普遍的驅動力。
為了使上述生產方式普遍實現于其他行業,有待滿足的三大前提就可以重新表述為:
1)達到甚至超過現今開源從業者的物質生活水平,作為結果人們可以更多的去追求精神上的自由。
2)達到甚至超過現今開源從業者的精神文明狀態,作為結果人們傾向于按興趣工作而不是閑著。
3)使其他產品的生產方式與軟件的生產方式相同。具體來講,這需要達成如下三方面的目標:使所有物質生產方式、一切體力勞動為機器人所取代,即消滅體力勞動;使生產資料(如:能源等)徹底公有具備獨立進行生產的物質自由;使任何人徹底可得到所有的一切(按需分配)。這樣一來只要任何人完成產品的設計或獲得到產品的設計,他即可以得到產品本身,也就是說其他產品的生產將只剩下設計工作,而設計工作實際上無限等價于軟件的生產。
前兩點能否達成更多的依賴于人類的主觀選擇。第3點則提出了一個剛性的約束,即使科技可以消滅體力勞動,那關鍵限制仍然存在:當前始終無法預測,科技所促成的增長是否能夠滿足人口增長所帶來的壓力,如果答案是肯定的,生產力逐步得到釋放的同時,物質生活水平就會進一步提高,反過來逐步促進這種新的生產方式的實現。如果答案是否定的,那么資源短缺將抽去這一模式最重要的根基,使人類重陷紛爭。同時即使科技發展的速度可以超過人口增長的速度,那對于空間等剛性資源如何做到按需分配也仍然有比較難以解決的問題。在這點上軟件無疑具有先天優勢,它并不會因為使用的人數變多而減少,但空間、水、精美物品就不行。
假設說科技發展速度確實可以大于人口增長速度,問題就變的非常有趣。這種情形下開源式生產方式究竟是否可以在較大范圍內實現從長線來看并不主要受限于科技和物質,而是受限于人類自身的欲望是否有一個邊界,是否可以不進行無限制的索取。只要人類把自己生命中的力量主要投放在實現自身而進行創造上,并在相對富裕的基礎上控制物質索取的尺度,使其整體上還在特定生產力可以提供的范圍內,那開源式生產方式就是可以實現的,作為結果每個人可以得到更多,否則就會所有人都成為輸家。這顯然依賴于人類精神世界上的進化。
結束語
我之前寫過一篇叫《基于軟件開源實踐(FLOSS)論共產主義的可實現性》的文章,但那很長,很像一篇論文,誰看誰頭疼。本來那只是一種純理論性探討,我認為不過是遙遠未來存在的一種可能性,所以雖然自己也知道文章難看,但一直也沒有對文章本身做什么修正,可近來當我讀完杰里米 里夫金《零邊際成本社會》,我意識到雖然切入視角不一樣但他說的和我說的其實是一回事情,并且有可以互補的地方,所以我決定重寫下這篇像論文的文章,讓正常人也能看,于是你就看到了這篇軟件開源與社會變革,也許還有其他的補充。