大多數公司對開源社區不得要領,正確的打開方式是什麼?
開源中最強大但最困難的事情之一就是社區。紅帽首席執行官 Jim Whitehurst 在與 Slashdot 的最近一次採訪中宣稱:「有強大社區的存在,開源總是贏得勝利」。但是建設這個社區很難。真的,真的很難。儘管預測開源社區蓬勃發展的必要組成部分很簡單,但是預測這些部分在何時何地將會組成像 Linux 或 Kubernetes 這樣的社區則極其困難。
這就是為什麼聰明的資金似乎在隨社區而動,而不是試圖創建它們。
可愛的開源寄生蟲
在閱讀 Whitehurst 的 Slashdot 採訪時,這個想法讓我感到震驚。雖然他談及了從 Linux 桌面到 systemd 的很多內容,但 Whitehurst 關於社區的評論對我來說是最有說服力的:
建立一個新社區是困難的。我們在紅帽開始做一點,但大部分時間我們都在尋找已經擁有強大社區的現有項目。在強大的社區存在的情況下,開源始終是勝利的。
雖然這種方法 —— 加強現有的、不斷發展的社區,似乎是一種逃避,它實際上是最明智的做法。早期,開源幾乎總是支離破碎的,因為每個項目都試圖獲得足夠的成員。在某些時候,人們開始聚集兩到三名獲勝者身邊(例如 KDE vs. Gnome,或者 Kubernetes vs. Docker Swarm 與 Apache Mesos)。但最終,很難維持不同的社區「標準」,每個人都最終圍攏到一個贏家身邊(例如 Kubernetes)。
參見:混合雲和開源:紅帽數字化轉型的秘訣(Tech Pro Research)
這不是投降 —— 這是培養資源和推動標準化的更好方式。例如,Linux 已經成為如此強大的力量的一個原因是,它鼓勵在一個地方進行操作系統創新,即使存在不同的分支社區(以及貢獻代碼的大量的各個公司和個人)不斷為它做貢獻。紅帽的發展很快,部分原因是它在早期就做出了聰明的社區選擇,選擇了一個贏家(比如 Kubernetes),並幫助它取得更大的成功。
而這反過來又為其商業模式提供動力。
從社區混亂中賺錢
對紅帽而言一件很好的事是社區越多,項目就越成功。但是,開源的「成功」並不一定意味著企業會接受該項目,這僅僅意味著他們願意這樣做。紅帽公司早期的直覺和不斷地支付分紅,就是理解那些枯燥、平庸的企業想要開源的活力,而不要,好吧,還是活力。他們需要把它馴服,變得枯燥而又平庸。Whitehurst 在採訪中完美地表達了這一點:
紅帽是成功的,因為我們沉迷於尋找方法來增加我們每個產品的代碼價值。我們認為自己是幫助企業客戶輕鬆消費開源創新的。
僅舉一例:對於我們所有的產品,我們關注生命周期。開源是一個偉大的開發模式,但其「儘早發布、頻繁發布」的風格使其在生產中難以實施。我們在 Linux 中發揮的一個重要價值是,我們在受支持的內核中支持 bug 修復和安全更新十多年,同時從不破壞 API 兼容性。這對於運行長期應用程序的企業具有巨大的價值。我們通過這種類型的流程來應對我們選擇進行產品化的所有項目,以確定我們如何增加源代碼之外的價值。
對於大多數想要開源的公司來說,挑戰在於他們可能認識到社區的價值,但是不知道怎麼不去銷售代碼。畢竟,銷售軟體幾十年來一直是一個非常有利可圖的商業模式,併產生了一些地球上最有價值的公司。
然而, 正如 Whitehurst 指出的那樣,開源需要一種不同的方法。他在採訪中斷言:「你不能出售功能, 因為它是免費的」。相反, 你必須找到其他的價值,比如在很長一段周期內讓開源得到支持。這是枯燥的工作,但對紅帽而言每年值數十億美元。
所有這一切都從社區開始。社區更有活力,更好的是它能使開源產品市場化,並能賺錢。為什麼?嗯,因為更多的發展的部分等價於更大的價值,隨之讓自由發展的項目對企業消費而言更加穩定。這是一個成功的公式,並可以發揮所有開源的好處,而不會將它受制於二十世紀的商業模式。
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive