做開源的朋友
有人對我說,你是加入了阿里雲,才會說公共雲廠商會成為開源的引領者。
我想說,是我堅信公共雲廠商會成為開源的引領者,所以我加入了阿里雲。
自1998年Chris Peterson提出開源軟體(Open Source Software)的概念以來,全球開源社群迅猛發展。直至今日,在“軟體定義一切”的現實世界裡,開源和閉源長期共存,構成主流業態。
說起當初寫開原始碼的初衷,開發者大多是想多提供一種選擇,作為閉原始碼的替代品;同一型別的專案往往會經過社群的淘汰和進化,存活下來1到2個明星專案,成為大家共同參與的社群;商業公司基於開源構建商業模式,並通過開源社群推廣技術和產品;不受商業束縛,個人開發者開始針對新的需求,創造世界上沒有過的專案;開源軟體的價值在公共雲平臺上被放大…
開源的終極真諦:所有人都從中受益
開源的價值,對世界而言,是大家受益於人類智慧結晶的分享;對國家而言,是培養人才梯隊和產業技術實力的良好手段;對公司而言,是商業受益於開源實踐帶來的標準化,建立生態的優選途徑;對個人而言,是開發者體現自我價值、獲取更多職業機會和僱主認可的進階之道。這一切,都基於開源實踐所帶來的軟體標準化,這是社群中自然博弈後產出的最佳路線圖。
開源本身並不是一種商業模式。“因為開源,所以掙錢”的邏輯並不存在;但基於開源,可以構建各種商業模式,比如在公共雲上的開源就是非常有前景的一種。
勿為開源而開源
沒有持續發展動力的開源是沒有意義的。
從Linux核心等專案的貢獻列表中可以看出,商業公司是開源貢獻的主力軍。但商業公司的開源動力絕不僅僅是學雷鋒做好事,更不是為獲取名聲而開源,而是希望看到專案能持續發展,成為開源生態的重要組成部分。
不少公共雲廠商開源了很多專案,也有了豐富的經驗和教訓。以阿里為例,我們在評估內部專案是否開源的標準之一就是“後續有沒有持續的資源投入,包括社群運營等”。
判斷開源專案成功的標準,除了星星,更重要的是開發者的認可
Github上會為開源專案提供各種維度的統計引數,比如星星、fork的數量等。和使用者數量同樣重要的是,是否有其他公司的開發者參與,是否願意接受來自其他團體開發者的貢獻。
如果來自不同公司的開發者都認可其價值,該開源專案就具備了成為業界標準的基礎。與以往標準部門埋頭制定標準、業界再跟隨不同,現在往往是在業界公認的開源專案基礎上,再抽象成標準,針對性更強。
判斷開源專案是否成功的根本指標,是能否在多方參與的前提下,成為業界的標準。
開源公司的困境:不賺錢,被兼併
目前業界最大的開源公司是紅帽,其2018財年營收29億美金。2018年10月28日,IBM宣佈以340億美金收購紅帽,溢價63%。考慮到IBM的市值是1100億美金左右,不得不說這是一次大手筆。
2019年1月11日,大資料領域Hadoop巨頭Cloudera與Hortonworks宣佈合併完成,創造出一個年收入達到7.2億美元的新實體,成為全球第二大開源軟體公司。
世界上營收最高的開源公司都陷入被收購和合並的困境,其他的公司就更加困難重重。所以大家紛紛想辦法創收,並劍指公共雲廠商。
2018年5月,Neo4j圖資料庫在其AGPL許可證中添加了Commons Clause,並於12月宣佈企業版閉源。
2018年8月,資料庫製造商Redis Labs宣佈保持Redis Core(BSD協議)的許可協議不變,將公司開發的Redis Modules(包括RediSearch,Redis Graph,ReJSON,ReBloom,Redis-ML)的協議從AGPL遷移到將Apache v2.0與Commons Clause相結合的許可證,這意味著其自研Redis Modules將不再是開源軟體,而是原始碼可用(source available)。
2018年10月,MongoDB公司宣佈將其開源許可證從GNU AGPL v3切換到Server Side Public License (SSPL),即伺服器端公共許可證,“新許可證將適用於新版本的MongoDB Community Server以及打過補丁的舊版本。”SSPL明確要求託管MongoDB例項的雲廠商要麼付費從 MongoDB公司獲取商業許可證,要麼開源其服務程式碼。
開源專案組織(OSI)的總裁 Simon Phipps和副總裁VM Brasseur認為“Commons Clause廢除了軟體自由”。
Google軟體工程總監Daniel Berlin認為:“這種協議誤解了開源經濟模式,它只是想從中為己牟利。”
最近的訊息表明,最新的紅帽企業版中不再帶有MongoDB。所以對這種修改開源協議的行為,是否能立竿見影收到錢,還有待觀察。
開源軟體改變傳統軟體格局,公共雲廠商將引領開源
目前,世界上的主要公共雲廠商,包括AWS、微軟、阿里雲、谷歌等,都是開源的積極參與者和實踐者。AWS在2018年re:Invent大會上開源了基於KVM的新型虛擬化技術Firecracker。微軟在2016年成為Linux基金會的白金會員並於2018年收購了Github。而到目前為止,阿里已經在Github上開源了400多個專案,很多成為業界的主流,如Dubbo、RocketMQ、Pouch等都已經成為明星專案。在GitHub貢獻排行榜上,阿里也是唯一入圍頂尖貢獻名單的中國公司。
公共雲廠商要售賣的是算力,將自己建立為更大的計算平臺,所以吸引開發者是重中之重。阿里雲主要提供的是IaaS層的能力,也要提供小部分的PaaS能力。比如資料庫,對於SaaS,是要靠生態來完成的。這些工作,阿里雲不會做,也做不來。依託開源專案和開源社群,開發者可以更快地對技術進行產品化和商業化,並通過阿里雲平臺進行售賣。正如天貓在打造爆款產品和商鋪,阿里雲更要扶持一批基於開源軟體、提供獨特價值的合作伙伴。
擁抱開源、貢獻開源、提升開源
目前國際開源社群的運作是靠主流開源軟體基金會來完成。阿里巴巴參與了11所全球開源基金及組織,包括Linux、Xen、CNCF、Apahce等開源基金會,是Linux基金會的金牌會員、CNCF的白金會員、Xen的顧問委員會成員。3600多位阿里工程師是開源專案的貢獻者,在開源社群裡共獲得30多萬個星星。因為阿里工程師的貢獻,阿里巴巴在2018年獲邀加入Java全球管理組織Java Community Process (JCP)的最高執行委員會,這也是中國企業首次加入到Java全球標準的制定中,推動更多“中國標準”成為全球規範。
構建開發者生態,讓開源開發者先富起來
真正地對開源開發者好,就要真誠地成就開源開發者。公共雲廠商不僅要教開發者技術要點和程式設計技能,而且要幫助開發者參與開源社群的開發,並基於此建立技術產品和解決方案,進而獲得利益和價值。
軟體的開發過程很困難,但商業化過程中最困難的是觸達客戶,公共雲上數百萬的客戶就是最佳的受眾。
傳統的軟體開發模式和商業模式都面臨時代的挑戰。在開源軟體改變傳統軟體市場格局的同時,公共雲的浪潮也在改變開源軟體的發展格局。
火箭式發展的公共雲不是開源軟體的攔路虎,事實上,它為開源軟體公司搭建了一個快速成長的舞臺。擁抱時代的變化,跟上新經濟數字化轉型的大潮,全面雲化,是公共雲廠商對開源的最高致敬!
【作者介紹】陳緒(還劍),阿里雲智慧基礎產品事業部技術戰略架構師,中國開源軟體推進聯盟常務副祕書長。從事開源軟體工作超20年,對雲端計算產業有較深刻理解。過往經歷主要涵蓋開源社群,市場合作,戰略規劃,投資分析等。曾任Sun中國工程院工程師,北京泰宇科技技術總監,英特爾雲端計算戰略總監等職。師從中國科學院高慶獅院士,2012年畢業於北京科技大學資訊工程學院,獲工科博士學位。2012-2014在清華經管學院學習,獲EMBA學位。