知名科技博主:開源軟體面臨經濟困境,就像過去的音樂產業一樣
編者按:知名科技博主Ben Thompson以音樂產業發展史作為對比分析了當今 開源軟體的發展情況 。開源經濟面臨的一個問題是,隨著越來越多的企業出於效能、伸縮性、可用性的考慮入雲,開源軟體公司靠本地部署額外工具和服務賺錢的來源正在減少。也許軟體未來就像音樂一樣,因為其無限可複製性而變得不值錢。
1999年,美國的音樂產業收入達到了巔峰的146億美元。但是理清楚細節很重要,得看看賣出去的是什麼東西:
-
12億美元來自CD的銷售
-
1億美元來自卡帶銷售
-
3.78億美元來自實體媒體的音樂視訊銷售
-
2.224億美元來自CD單曲的銷售
簡而言之,音樂產業主要是靠賣盒裝塑料唱片賺錢;那些光盤裡面刻錄的音樂只是區分那些塑料片的手段,但音樂本身並沒有賣出去。
這種區別聽起來似乎很蠢,但這解釋了巔峰過後發生的事情:
儘管音樂的渠道和可得性一飛沖天,但音樂產業的收入卻驟然下降:問題在於大家不再買塑料唱片了,而這個正是音樂業賣的東西;大家開始直接下載音樂了。
銷售便利性
問題是唱片音樂一直都不值錢:一旦錄製了一份出來,就可以無限量地拷貝出去,這意味著供應其實是無限的;其結果就是從唱片獲取價值要取決於強加的稀缺性。塑料唱片就是這麼幹的:實體商品的有限供應,靠成為獲取音樂最便利的方式來差異化。但是從Napster或者後續網站下載盜版MP3比這還要便利——而且更加便宜。
正如從圖中可以看到一樣,2010年這個產業開始穩定下來,到2016年恢復增長;201年有望比2017年的86億美元收入增長約10%,而且似乎在不遠的未來這個產業會突破1999年的巔峰。
為什麼會這樣?這是因為音樂業找到了新的賣點,這主要是由Spotify然後是蘋果推動的。不過它們賣的都不是音樂;實際上,它們是在以彼之道打擊盜版:音樂業販賣的是便利性。每月不過10美元就能得到幾乎所有唱片業製作過的音樂。
DocumentDB(相容MongoDB)
上週來自AWS官方部落格:
今天我們推出了Amazon DocumentDB(相容MongoDB),這是一個快速、可伸縮、高可用的文件資料庫,是專門為相容現有MongoDB應用和工具而設計的。Amazon DocumentDB為此打造了一個基於SSD的儲存層,可跨3個獨立Availability Zones實現6倍的複製。該儲存層具備分散式、容錯、自愈性,可提供執行生產級MongoDB負載所需的效能、伸縮性以及可用性。
MongoDB以及現在的DocumentDB的細節對本文不是特別重要;基本上,MongoDB是建立了一種更靈活的資料庫並且更適合於大量結構與非結構化的資料,讓它對大規模應用很有用,而這個是傳統的關係式資料庫永遠無法做到的。
而現在你可以在AWS上跑這種資料庫了。算是吧。
開源許可
就像越來越多的此類專案一樣,MongoDB也是開源的……或者不管怎樣它就是。MongoDB Inc這家拿到風投的公司於2017年10月上市,並以GNU Affero通用公共許可證(AGPL)的授權形式提供其核心資料庫伺服器產品。
AGPL是GPL的近親,後者是Richard Stallman建立的公共版權(Copyleft)協議。“公共版權”意味著允許自由分發、使用和修改有版權的材料(本例下是軟體),但約定同樣權利亦延伸至所有的衍生作品;這意味著任何利用GPL程式碼開發的專案本身也必須是採用GPL許可。這是相對於“自由(permissive)”開源授權而言,後者允許別人隨意使用有版權的材料,並不規定衍生作品也得開源。AGPL延伸了GPL的做法,允許軟體通過網路訪問;由於軟體只是被使用而不是拷貝,所以GPL不會被觸發,但它的最終結果比GPL還要狠。
無論GPL還是AGPL對公司來說往往都很成問題,尤其是後者:比方說蘋果就不允許GPL授權的軟體出現在應用商店,因為應用商店要求app針對單使用者授權;用自由許可的app沒事,因為這種許可是可以被替代的——但GPL一旦授權就無法撤銷。AGPL更糟,使用者只是使用軟體就會觸發授權;所以Google內部是禁止使用的。該公司在其開源文件中指出:
對網路上使用的軟體實施限制的許可是Google極難遵守的。使用AGPL軟體要求其連結的一切也必須按照AGPL授權。哪怕你以為你沒有連結到任何重要的東西,由於我們的大多數程式碼的整合方式這也會給Google帶來巨大風險。這種風險遠大於它帶來的好處。
這是這項政策的一條附錄:
某些情況下,我們也許會有AGPL許可程式碼的替代許可。
這就是MongoDB的生意。
MongoDB的商業模式
MongoDB在招股說明書中寫道:
我們相信我們有著高度差異化的商業模式,這種模式結合了開源所帶來的開發者、注意力份額以及採用的好處,以及專有軟體訂閱商業模式所帶來的經濟利益。為了鼓勵開發者使用、熟悉和採用我們的平臺,我們以開源方式提供了Community Server,這類似於“免費增值”產品。Community Server是一款不包含商業版平臺所有功能的可以免費下載的資料庫版本。這使得開發者可以毫無障礙地評估我們的平臺,我們相信這可以促進平臺在開發者當中的流行度,從而推動企業採用我們的訂閱版……
跟基於第三方開源專案的軟體公司不一樣,我們擁有自己的產品的智慧財產權,因為我們是這款軟體的創造者,這使得我們可以推出專有軟體訂購商業模式……我們的主要訂購包是MongoDB Enterprise Advanced,這是為企業客戶提供的綜合產品,可運行於雲端、本地或者混合環境。MongoDB Enterprise Advanced包括了我們的專有資料庫伺服器、先進的安全特性、企業管理能力、我們的圖形使用者介面、分析整合、技術支援以及對平臺的商業許可。我們還提供MongoDB Atlas,我們的雲託管資料庫即服務(DBaaS),裡面包含了全面的基礎而設施與Community Server的管理。
基本上,MongoDB是在其開源資料庫伺服器基礎上賣三樣東西:
-
企業實現MongoDB的額外工具
-
小公司使用MongoDB的託管服務
-
法律確定性
最後一個的重要性不容忽視:MongoDB的企業版和託管服務不受AGPL或者自去年底起MongoDB新建立的伺服器端公共許可(Server Side Public License,SSPL)的約束。SSPL就像是加強版的AGPL:它要求賣MongoDB即服務的公司不僅要開源自己的修改版,而且還要開源整個技術棧。
AWS賣什麼
賣軟體即服務的最大公司當然是Amazon。不過這並不意味著Amazon賣的是“軟體”。現實是軟體跟音樂沒什麼不同:軟體也是無限可複製的,因此,孤立來看,不值一文。
相反,軟體的價值往往通過三種方式實現:
-
首先是硬體。最著名的例子是iPhone,這是獲得iOS的唯一方式,但是還有無數例子。
-
其次是許可。這是圍繞數十年來的核心業務:把許可賣給OEM(消費者市場)或者直接賣給公司(企業市場)。這的確有點諷刺,因為圍繞和開源儘管歷史上是冤家對頭,但這兩者都依賴於版權、強悍的法律制度,以及做合適事情的公司。
-
第三就是軟體即服務。這是微軟的新模式,也是Amazon的,也是幾乎所有新的企業軟體公司的。這裡賣出的不是軟體本身,而是軟體的效用:負責賣的公司做完其他的一切,包括可靠地提供該軟體。
考慮到這些之後,我們再看看上週AWS釋出的東西:
儲存層是分散式的、容錯的、自愈的,可賦予執行生產級MongoDB負載所需的效能、伸縮性及可用性。
AWS賣的不是MongoDB:他們賣的是“效能、伸縮性和可用性”。在AWS上體現出這些好處的有很多地方,DocumentDB只是其中之一罷了。
不要搞錯:這些好處當然是有價值的。企業計算入雲是一種長期性的轉變,不是因為必然會更便宜(儘管成本與使用情況會更趨於一致),而是因為效能、伸縮性和可用性是難題,跟大多數公司的核心競爭力與差異化點幾乎沒有關係。
但那些卻是AWS的核心競爭力,AWS可以為解決問題提供無與倫比的規模:通過有效地為數百萬客戶操作伺服器,Amazon可以給所有那些問題提供大量資源,這些資源比任何一家公司自己能提供的要多得多,同時它還開發了自己的客戶架構,上至資料中心軟體,下至定製化晶片(並且讓它可以狠狠地對英特爾這樣的供應商殺價)都有。
其結果是“效能、伸縮性與可用性”成為極其有吸引力的一門生意:AWS的客戶越多不僅推動了多得多的經常性收入,而且通過讓公司將眾多的新增資源施加到甚至更難理解的用例上,也鞏固了AWS的護城河,使得AWS對新客戶變得更有吸引力。微軟在跟AWS競爭,但是隻能望其項背;Google落後甚至更多。實際上,甚至MongoDB管理的服務業跑在這三家巨頭上:因為獨立跑毫無意義。
開源的難題
然後我們就有了開源公司的難題:
-
MongoDB利用開源來獲取注意力份額。
-
MongoDB Inc靠賣額外工具給企業跑MongoDB發展成為成功的企業。
-
越來越多的企業不想跑自己的軟體:他們想僱AWS(或者微軟、Google)替他們執行軟體,因為他們看重效能、伸縮性和可用性。
這使得MongoDB Inc不會像下載出現後的唱片公司:他們賣的不是軟體而是讓那種軟體變得有用的工具,但是那些工具隨著計算走向雲端會日益變得過時。現在AWS正在賣企業真正想要的東西。
更糟的是,因為AWS沒有使用MongoDB的權利(只是匹配API),所以只支援MongoDB 3.6;而MongoDB目前的版本是4.0.5。有可能一旦AWS的服務變得流行起來之後MongoDB就相當於一潭死水了:當然,你可以從MongoDB Inc那裡獲得更好的版本,但然後你得自己管理或者訴諸於將你所有的AWS服務與MongoDB的東西繫結(然後再次地,差異化的可能性也許會成為MongoDB的救贖,這也是其他公司的重要經驗)。
自由許可未必能起到幫助作用:Redis Labs為其Redis資料庫提供的就是自由許可,這意味著AWS的產品通常是最新的,這對Redis的發展是好事,但是對Redis Labs賺錢沒有任何幫助。這迫使Redis Labs對其附加模組改變了授權方式,增加了“公共條款”;這迫使服務提供商付費使用,實際上也就把這個資料庫變成了專有軟體。
你很難不對MongoDB Inc.和Redis Labs感到同情:他們都投入了很多錢和精力去開發產品,現在Amazon卻要從他們身上賺錢。但是問題是:Amazon不是靠賣軟體來賺錢,他們是靠提供企業所重視 的服務來賺錢,而且MongoDB和Redis之所以能火很大程度上是因為他們一開始就是開源的。
經濟現實與未來
我寫的東西對於開源社群的傢伙來說並沒有什麼新鮮:圍繞著雲服務對開源影響的尖銳爭論已有一段時間。不過我想這場爭論已經被轉移到有關“公平”的討論以及AWS對開源的虧欠上面。是的,像MongoDB Inc.和Redis Labs這樣的公司工作非常努力,是,AWS基本上是建立在開源基礎上的,但這個世界是受經濟現實而不是對公平的主觀判斷支配的。
這就是我從音樂開始的原因:音樂產業的銷售驟然下降未必“公平”,是,像蘋果這樣的公司靠iPod這類盜版生意賺了好幾十億美元。但唯一有關係的現實是音樂本身,由於其無限可複製性,只能屬於純粹的日用品。
軟體的情況也一樣:磁碟上的位元基本上是免費的——不妨問問Richard Stallman。在其具有重大影響的文章《為什麼軟體應該是自由的》中,Stallman寫道:
拷貝程式的成本近乎於零(而且你自己拷貝就可以),所以在自由市場,它的價格也應該近乎於零。而許可證費用明顯遏制了程式的使用。如果一個非常有用的程式是專屬的,那麼使用它的人會少得多。
很容易就能發現一個程式對社會的總貢獻會因為給它分配了所有者而被減少。程式的每一位潛在使用者都面臨著要付費使用的要求,他們也許會選擇付費,或者放棄使用該程式。當用戶選擇付費時,這是兩方之間財富的零和轉移。但每次某人選擇放棄使用該程式時,這就會傷害到那個人而且任何人都沒有受益。負數加零的結果一定是負的。
但是這個並沒有減少開發程式所需的工作量。因此,整個過程的效率,也就是帶來的使用者滿意度/工作小時被降低了。
這種取捨是不可避免的,VC資助開源公司的黃金時代將開始淡去是合理的猜測(儘管開源未必)。貨幣化模式要取決於本地軟體的阻力;一旦雲端計算佔據主導,經濟模式的挑戰性就要大得多。
不過這個應該會讓AWS、微軟和Google好好反省一番。很難想象他們會願意為開源軟體付費,但與此同時,寫(面向公眾的)軟體未必是他們雲服務的核心競爭力。他們也享受到了開源公司的好處:後者提供了其效能、伸縮性和可用性的實現手段。現在是一種人人獲利的局面:只是遵循經濟現實的話,從長期看會意味著每個人的情況都會惡化。
原文連結: https://stratechery.com/2019/aws-mongodb-and-the-economic-realities-of-open-source/
編譯組出品。編輯:郝鵬程。