雲端計算會殺死開源嗎?
導讀:雖然開源不會消失,但商業開源廠商前途未卜。隨著全面託管服務的興起,生產支援、工具和諮詢機會已經在減少。雲服務提供商正在採用開源軟體,並使其商業化,但卻沒有為開源軟體提供價值或為開源軟體的未來發展提供支援。關於如何為開源提供資金支援,並未達成行業共識。很多人仍然認為開源軟體應該是免費的。
關鍵要點
雖然開源不會消失,但商業開源廠商前途未卜。隨著全面託管服務的興起,生產支援、工具和諮詢機會已經在減少。
雲服務提供商正在採用開源軟體,並使其商業化,但卻沒有為開源軟體提供價值或為開源軟體的未來發展提供支援。
關於如何為開源提供資金支援,並未達成行業共識。很多人仍然認為開源軟體應該是免費的。
“開放核心”或“雙重許可”等模式似乎是支援未來商業開源的最有前景的方法。
開源許可可能會對商業化用途強加更多的限制。
過去的商業開源成功案例在未來並不一定也能成功。
Redis將其部分企業模組的許可改為Apache 2.0+ Common Clause。這些模組不能被單獨用在商業版SAAS中。這項舉措專門針對雲提供商。
Redis的這一舉動引發了在開源社群潛伏已久的一個問題。開源的最佳案例是軟體基礎設施,而不是軟體應用程式專案。如果雲端計算公司成為軟體基礎設施提供商,他們在市場方面的控制力有可能會讓他們直接基於開源專案提供軟體服務,而價格卻低於提供同樣服務的開源公司。
如果出現這種局面,開源公司還有未來嗎?
討論小組成員
Paul Dix——InfluxData創始人兼技術長;
Matt Klein——Lyft軟體工程師及Envoy的建立者;
Heather J. Meeker——O’Melveny \u0026amp; Myers矽谷辦事處合夥人兼OSS Capital投資合夥人。
InfoQ:開源軟體背後的商業模式是什麼?換句話說,為開源提供資金的最佳方式是什麼?什麼樣的軟體不適合開源?
Paul Dix:我認為有很多模型都可以取得成功。第一種我將其稱為“開源排洩”。例如,當谷歌、微軟或Facebook這樣的大公司認為他們開發的某些軟體不能成為他們的關鍵智慧財產權,他們就會將其開源。這種軟體可以被認為是資產負債表上的一種負債。大規模執行業務邏輯所需的基礎設施軟體就是一個很好的例子。它沒有為你的業務帶來多大價值,但沒有它卻又無法運營下去。因此,大型公司就將其開源,試圖讓其他大公司和開發人員參與其中,以此來降低在持續改進和錯誤修復方面所要花費的成本。參與開源開發的公司也可以通過讓組織外部的開發人員獲得這些技能而受益。對於招聘渠道來說,參與開源貢獻的開發者可以成為很好的人才來源。當然,對於試圖基於開源基礎設施軟體建立業務的公司來說,這種方法並不會帶來什麼好兆頭。
對於希望將主要收入與某些開源軟體專案開發相關聯的企業來說,他們的選擇非常有限。我認為他們唯一可以考慮的模型是開放核心:公司開發閉源軟體,給開源軟體新增新的功能,然後將其作為託管SaaS產品或作為在企業內部部署的軟體。一些開源軟體佈道者認為,採用這種模式的公司實際上並不是開源公司。然而,我所知道的每一個開放核心的公司,他們在研發方面的預算比例都高於任何大型企業。Elastic、Cloudera、RedisLabs、InfluxData等公司都是開放核心,他們的開發人員所建立的開源軟體的比例要高於谷歌、微軟、Facebook、Netflix等採用開源排洩模型的大公司。
基礎設施開源公司曾經認為他們可以通過生產支援和工具進行獲利。然而,雲供應商和全託管服務的崛起對這種模式造成了負面影響,以至於我認為這種模式不可行。有關雲端計算對開源基礎設施產生持續影響的證據,請參閱MongoDB最近釋出的許可變更宣告。
業務需要服務和支援,這是為開源軟體開發提供資金的最底線的方法。這種經濟體看起來像是一種諮詢機構,但如果你真的去建立一個諮詢團隊,你會希望他們有很高的可計費小時數。這與你的團隊開發開源軟體直接相關。如果他們把精力用在開發開源軟體上,就不會帶來業務收入。諮詢機構最好選擇一個已經很流行的開源軟體專案,並基於它提供諮詢服務。
最後一種方法是藉助志願者社群的努力,他們是免費的,但這對大型基礎設施專案不起作用。隨著專案越來越受歡迎和複雜化,管理和推動志願者團隊在夜晚和週末工作就變得非常困難。這種模型只適用於小型庫專案。較大的專案需要某種資助才能生存,並向前發展。
Matt Klein:人們已經嘗試過各種商業模式。它們都可以歸結如下以下是簡單描述:
開放核心:軟體的一部分是開源的,還有一部分需要付費使用。
SaaS:將開源軟體作為服務執行。
服務/諮詢/支援:客戶在使用開源軟體時可能需要各種輔助支援和開發,以此來收取費用。
一些商業模式是上述方法的組合,並且所有上述模型都有大量的成功案例。
實際上,並不存在所謂的“最佳方式”來資助開源軟體開發,因為有效性通常取決於專案本身。可惜的是,無論採用哪種方法,通過開源軟體創造收入並非易事,因為很多使用者從根本上認為開源軟體應該是免費的。什麼型別的軟體開發與開源軟體完全不匹配?我最先想到的是軟體庫。有些庫對現代系統來說至關重要,但從開源軟體庫的使用中獲取收益卻極其困難。這個事實產生了嚴重的現實世界效應。例如,OpenSSL多年來因為缺乏開發和資源投入,導致關鍵的網際網路基礎設施直接建立在維護不完善的基本軟體之上。
Heather J. Meeker: 你唯一不能利用開源軟體來做的事情就是通過銷售許可來獲利。但是,在開發開源軟體的私營企業中,仍然有足夠的手段來賺錢。你只需要知道你要賣什麼,以及要免費提供什麼。純粹的開源業務非常罕見——紅帽是一個非常成功的例外。純粹的開源業務主要銷售服務——通常是指維護和支援,但它也銷售質量控制。客戶購買的是產品,而不是許可。如果你在質量控制和包裝方面投入大量精力,你就可以開展銷售開源軟體包的業務。但是,實際上,你是在依賴自己的聲譽。大多數開源企業通過“剃刀刀片”模式的一些變體來賺錢——送他們剃刀並賣掉刀片,其中剃刀是開源軟體,刀片可以有多種形式。有些是追加銷售模組(通常稱為開放核心),有些是額外授權(相同軟體的雙重許可,如MySQL),有些是“小部件結霜”(銷售執行開源軟體的硬體,可能是iOT產品)。在其中一些模型中,你需要使用其他型別的許可,這就是Commons Clause等變體的用武之地。
InfoQ:開源軟體是否只對企業開發人員有意義,雲供應商和開源供應商是否有辦法在一起合作?
Dix: 可能有,但取決於雲供應商。雲供應商並不是一定要參與開源專案。實際上,亞馬遜似乎更喜歡收集開源專案,並將其作為託管服務,但卻沒有付出開發努力來推動開源軟體專案向前發展。谷歌和微軟有一些合作關係,但我不確定它們是什麼樣的。此外,當他們認為沒有必要繼續支援其他公司開發開源軟體時會怎樣?他們可以僱傭必要的開發人員來推動這些專案。他們這樣做的動機是讓開發者為他們的託管付費。使用開源只是一種確保其他雲供應商不會圍繞專有的封閉API構建大型開發社群的方法。這三大雲供應商正在互相爭鬥,而開源軟體基礎設施公司可能會遭遇附帶損害。例如,微軟和谷歌將繼續推動Kubernetes作為標準化的雲API,因為這樣可以幫助他們壓制AWS(市場領導者)並將雲API商品化。那些試圖將Kubernetes變成企業的創業公司會怎樣?如果它像Open Stack生態系統一樣,那些初創公司將在未來三年內全部關門大吉(儘管對Kubernetes的諮詢仍然會充滿活力)。
Klein: 我不確定我是否真已經理解了這個問題。流行的開源軟體將不可避免地被企業和雲供應商使用。此外,雲供應商可能會提供基於流行的開源軟體而構建的託管產品,而不必為開源專案提供實質性的回饋。在我看來,更大的問題是如何為開源軟體開發提供適當的資金,可以讓社群先開發開源專案,後續還能從中獲取價值(通過開放核心、SaaS、服務/支援或某種組合)。可惜的是,人們並沒有就如何做到這一點達成共識。就個人而言,我相信在未來,軟體基金會必須在為關鍵開源軟體提供中立的家園方面發揮更大的作用。基金會的額外責任是籌集資金來資助可以保持中立的開發和維護資源,同時仍然支援企業基於它們獲取利益(無論是企業、雲供應商等)。
Meeker: 我們正處於這樣的一個分水嶺,此時產生了Commons Clause和其他替代許可模式,是因為雲供應商採用小公司的軟體,並在沒有增加投入的情況下讓軟體商業化,但沒有與提供軟體的公司制定任何協議來支援軟體的開發。至少,這是大多數開發人員在對開源模型感到沮喪時表達的痛點。一方面他們需要保持開放,一方面要付錢給他們的開發人員,其中一些正在流失資源。我認為,在可預見的未來,可直接用於雲部署的企業軟體供應商會對在開源許可下發布程式碼持謹慎態度。我希望我們會在雲供應商和企業開發人員之間看到更多商業交易,因此可以分攤開發成本。至少,這將是最合理的一種結果。
InfoQ:谷歌、Netflix或其他公司釋出的開源專案是否會增強開源投入,還是他們有混合動機?
Dix:我認為這兩者都有。讓大型組織在自由許可下公開程式碼對所有人來說都有好處。但是,可以肯定地說,除了改善自由軟體的狀態之外,他們可能還有其他動機。這意味著你必須心裡有數,即他們的專案目標可能並不總是與你的目標一致,無論開源專案如何管理,這一點都不會變。只要軟體處於開放狀態,如果企業贊助商的想法與你認為專案應該去的地方不同,你就有選擇權。
Klein:沒有哪個公司會僅僅出於善意而做任何事情。一般大型公司會出於多種原因釋出開源軟體。最重要的可能是為了招聘和可見性以及構建最終與雲業務相關聯的平臺。這並不是說谷歌、Netflix等公司釋出的軟體對行業沒有產生深遠的影響。它們當然有,但關鍵是要注意這些公司直接資助開源軟體開發的不可告人的動機。
Meeker:我認為結果比動機更重要。我認為大多數開發人員會說這些公司和其他公司釋出的開原始碼非常有用。私營公司有法律義務通過做出適合其業務的決策來管理其股東的資本。但這並不意味著幫助社群的行動會不利於企業自身。如今很多大公司都發現,參與開源社群對他們的業務來說非常有幫助。企業可以戰略性地對能夠為他們提供市場優勢的開發技術加以保密,對於其他的可以放開訪問。從經濟意義上講,有些軟體最適合作為公共產品使用,有些軟體在保密時最有效。道路可以共享,但可以出售在其上跑動的汽車。否則的話,就會出現不連通的道路和糟糕的汽車。
InfoQ:在未來,對於開源公司來說,有哪些可行的許可模式?
Dix:對於那些主要在他們擁有的開源專案上開展業務的公司來說,他們要麼使用像AGPL這樣的限制性許可,要麼保持一部分閉源軟體,作為基於自由許可的開源核心的補充。我更喜歡後一種模式,因為對於開源的程式碼,任何人都可以用它做任何他們想做的事情。他們可以使用它建立業務,將其作為產品的一部分發布。我更喜歡像MIT和Apache 2這樣的自由許可協議。然後,公司還有閉源軟體,以補充或增強開源專案的功能,這也這是他們的商業產品。事實上,沒有什麼能阻止其他公司圍繞同一個開源專案建立閉源產品。
Klein:我認為,我們將繼續看到公司試圖以各種不同的方式從開源軟體中榨取價值。我認為最成功的模式將是我稱之為“鬆散開放核心”的模式。我們的想法是建立一個開放的核心生態系統,其中主要的軟體可以通過社群來驅動,而不必通過拒絕採用可與付費產品相競爭的補丁來疏遠潛在的貢獻者。這個模型中的企業附加元件可能包括UI、審計、安全工具等,基本上就是任何可以使用開放API在核心開源軟體之上構建的東西。
Meeker:我想我們會看到很多變體。我認為,差異在於非開源許可將變得更加標準化。現在,它們幾乎完全是臨時性的,這對每個人來說都是淨成本。
InfoQ:從現在起的十到二十年之內,你認為軟體的開發方式會變成什麼樣?
Dix:它將繼續是閉源和開源的混合體。我認為它不會像現在這樣來回擺動。它不會完全公開,因為公司仍然需要客戶有令人信服的購買理由,支援和諮詢的經濟效益不會發生改變。因此,公司將繼續擁有閉源軟體來獲取價值。運營自有資料中心的公司的比例將顯著降低,但由於規模經濟的存在,仍然會有公司自有資料中心。
Klein:可能與今天的情況不會有太大不同。大多數基礎設施軟體將是開源軟體,而大多數消費者系統將是專有的。基礎設施方面的一個重要問題是,主要雲供應商是否會“吃掉世界”,或者獨立公司是否可以圍繞開源軟體開闢出可行的收入模式。在我看來,那些專注於“鬆散開放核心”模式的公司將在雲競爭中做得最好。這是因為很多增值服務仍然可以在基本雲SaaS產品之上執行。
Meeker:20多年前我開始程式設計,當時和今天之間的區別有幾個方面。首先,我們有更好的開發工具,因此人們在開發應用程式時可以避免一些低階任務的單調乏味。其次,編碼模組化程度更高,因此不需要重新發明輪子。第三,軟體是協同開發的,這是因為我們現在有了很好的協作工具。我預計接下來的20年將會遵循相同的軌跡,更多程式碼將自動化或標準化,甚至由計算機編寫,允許人類程式設計師專注於更高階別的使用者功能。此外,我希望能夠更加強呼叫戶互動的質量。我想現在我們的UI專家太少了。軟體應該是可用的,但不僅僅是功能性的。
結論
開源不會消失,問題是,基於開源開發的公司能否繼續蓬勃發展?
如果要繼續進行重要的開源開發,就需要建立新的許可和融資模式。
關於討論小組成員
Matt Klein是Lyft的軟體工程師,也是Envoy的創始人。他一直致力於作業系統、虛擬化、分散式系統、網路以及使系統在各種公司中易於操作。他領導了Twitter的L7邊緣代理的開發,並基於亞馬遜EC2開發高效能運算和網路。
Paul Dix是InfluxDB的建立者。他為初創公司、大型公司以及微軟、谷歌、邁克菲、湯森路透和空軍太空司令部等組織開發軟體。他是Addison Wesley資料和分析系列書籍和視訊的編輯。2010年,Dix為Addison Wesley撰寫了”Service Oriented Design with Ruby and Rails”一書。2009年,他開辦了NYC機器學習工作坊,現在有超過12,000名會員。Dix擁有哥倫比亞大學電腦科學學位。
Heather J. Meeker是O’Melveny \u0026amp; Myers矽谷辦事處合夥人和OSS Capital投資組合合夥人。她就技術交易和智慧財產權事宜為客戶提供諮詢。她是開源軟體許可方面的國際知名專家。她於2016年獲得加利福尼亞州酒吧智慧財產權部門的私人業務智慧財產權先鋒獎。她的最新著作“Open Source for Business”是一本面向律師、工程師和商業人士的有關開源許可協議的權威手冊。Meeker還是美國人法律學會正在進行的一項關於重述版權法的專案的顧問。
英文原文:https://www.infoq.com/articles/will-cloud-computing-kill-open-source
活動推薦
12 月 7 日北京 ArchSummit 全球架構師峰會上,來自 Google、Netflix、BAT、滴滴、美團 等公司技術講師齊聚一堂,共同分享“微服務、金融技術、前端黑科技、智慧運維等相關經驗與實踐。詳情點選 https://bj2018.archsummit.com/schedule
相關文章
- 雲端計算正在“抹殺”開源?
- 深圳雲端計算培訓學習:雲端計算正在殺死運維嗎?–【千鋒】運維
- 最新的AI會“殺死”程式設計嗎?AI程式設計
- 摩杜雲:“國資雲”殺入雲端計算行業,雲端計算行業的冬天要來了嗎?行業
- 是否會掀起雲端計算自主可控VS開源之爭
- 雲端計算崛起,大型機已死?
- [譯] google會背叛並殺死Android嗎?GoAndroid
- 雲端計算規模大嗎?可靠嗎?
- 雲端計算學習路線圖素材課件:雲端計算常用的開源工具開源工具
- 雲端計算是否會扼殺了Hadoop?Hadoop
- 【linux運維】linux運維會被淘汰嗎?會消失在雲端計算中嗎?Linux運維
- 雲端計算教程學習入門影片課件:雲端計算開源軟體有哪些?
- 開源雲端計算廠商,你有渠道麼?
- 雲端計算和開源時代的鎖定
- 重磅|2017全球雲端計算開源峰會將首發國內私有云、開源雲、金融雲三大報告
- 雲端計算開發教程,雲端計算能幹什麼?
- 雲端計算和運維工程師衝突嗎?運維崗需要雲端計算知識嗎?運維工程師
- 學習雲端計算怎麼樣?大資料比雲端計算更好嗎?大資料
- 新基建火了,開源雲端計算渠道能做什麼?
- 雲端計算和雲服務是一樣的嗎?計算機linux運維開發計算機Linux運維
- Linux運維對雲端計算有影響嗎?雲端計算需求怎麼樣?Linux運維
- 短期怎麼學會雲端計算?新手學習雲端計算的規劃
- 雲端計算開發學習教程,簡單介紹雲端計算
- 深圳雲端計算培訓學習:女生做雲端計算運維容易嗎?–【千鋒】運維
- 學習雲端計算需要培訓嗎?雲端計算需要學習什麼內容?
- 哪些開源雲端計算環境管理工具好用?
- 雲端計算中混合雲和多雲有區別嗎?
- 好程式設計師雲端計算培訓分享雲端計算必會的Docker容器命令程式設計師Docker
- 雲端計算教程開發知識,學雲端計算有什麼用?
- 雲端計算與大資料要學啥?零基礎能學雲端計算嗎?大資料
- 學習雲端計算簡單嗎?專科生學習雲端計算就業前景如何?就業
- 大學生適合學雲端計算嗎?
- 雲端計算為什麼會不被信任
- 雲端計算開源產業聯盟:2019年雲端計算與邊緣計算協同九大應用場景(附下載)產業
- 開源模式下的雲端計算和大資料現狀模式大資料
- 開源資料庫商業化加速,雲端計算助推開源軟體發展資料庫
- 學習雲端計算好嗎?未來10年雲端計算發展前景如何?
- 現在學雲端計算還有前途嗎?屬於小白的雲端計算學習路線