20年前程式員抵觸開源的心情,就如同今天大眾看待區塊鏈一樣

andylamgot
iHashing
Published in
7 min readApr 11, 2019

關於對開源改變了我們世界的爭論很少。作為一名軟件開發人員,我不記得在過去幾年中有哪一天我能不依賴開源軟件了。如今,大多數軟件工程師在其職業生涯中幾乎每天都依賴於開源軟件。

首先,開源軟件已經是開發人員的主要基礎設施。從操作系統(雲端的Linux)到數據庫(MySQL,MongoDB,Redis),再到編程語言本身(JavaScript,Python,Java,C,PHP)。不僅是開發者,消費者也是如此,從他們手機上運行的系統(機器人)到他們訪問網絡的方式(瀏覽器,Firefox)都是開源的。

動機很明確。開源對人類發展有利,它使技術更開放和易於訪問 — 任何人都可以在開源的基礎設施上構建任何應用。

開源並不總是主流

如果在20年前你隨機問一些開發人員,開源軟件是否會流行起來,他們會笑的。分享軟件知識產權,那你的競爭優勢呢?荒誕。它會影響實際業務?勉強,這只是一個利基市場。誰來引領它?

這跟如今人們看待區塊鏈的情況差不多。沒有中心機構來維持運行?荒謬。有什麼商業用例?這不是主流,這只不過是一小眾利基市場。

對區塊鏈來說,實際情況更糟。加密貨幣泡沫及其衰退,充滿了機會主義和過度投機,這些都加劇了普通人的種種懷疑。

開源vs營利性公司

起初,開源和營利性公司似乎是相互排斥的。像微軟這樣的公司會視開源為敵人。他們認為代碼是他們的秘密武器,分享會破壞他們的競爭優勢甚至帶來垮台。但如今,事實並非如此。

今天開源的最大貢獻者是微軟,谷歌,IBM和Facebook等這些營利性企業。這些公司正在領導許多最受歡迎的開源項目,如React和TensorFlow。就個人而言,我很幸運能夠成為Wix.com公司的一員,並幫助把它從一個「有圍牆的花園」帶到了2017年全球開源軟件貢獻者第11名。

為什麼這些公司選擇開放部分軟件知識產權IP呢?嗯,這並不是因為意識形態,而是因為開源使這些公司更具競爭力。

一個很好的例子是谷歌的Android。由於iPhone顛覆性的發布,早期移動領域由蘋果公司主導,谷歌來時已晚,微軟也遲到,他們想滲透進來並非易事。

谷歌的戰略方面很大程度依賴於開源操作系統Android。谷歌的這個策略得到了回報,Android生態系統的發展成為蘋果「封閉花園」的開放式答案,谷歌放棄了靠出售Android許可證掙錢的機會,但獲得了更有價值的東西:Android佔領了全球四分之一以上人的口袋。

20年前程式員抵觸開源的心情,就如同今天大眾看待區塊鏈一樣

今天關於區塊鏈的爭論也非常激烈。營利性公司,尤其是市場領導者,會選擇將其業務去中心化嗎?

我認為他們會像谷歌一樣出於同樣的原因這樣做。不是因為意識形態,而是因為它會使它們更具競爭力。為了保持其影響力,他們必須使生態系統更加開放,否則,他們的競爭對手將會贏得勝利。

分叉,控制和權力平衡

我們已經看到為什麼像Facebook這樣的公司會發布像React這樣的IP — 這個項目改變了Web前端的構建方式。不太清楚的是,為什麼其他公司會將Facebook的原始技術用於他們自己的關鍵業務上。

也許我能夠回答這個問題。當我在Wix.com時,有幸參與有關是否將Wix.com網站編輯器建立在React上的辯論。對於以創建網站為生的公司而言,關於編輯器的決策風險,就是冒整個公司生命的風險。

為什麼這麼說?想像一下,Facebook有一天決定與穀歌競爭網絡統治,並發布自己的網絡瀏覽器作為Chrome的替代品,網絡的重要部分是基於React的。在這個反烏托邦的未來,Facebook決定讓React與Chrome不兼容怎麼辦?這一決定可能危及Wix.com的整體業務。

開源治理是成功的,主要是由於分叉的概念。任何人都可以獲取任何開源項目的完整源代碼,並製作他們控制的副本。如果Facebook讓React與穀歌Chrome不兼容,Wix.com可以分叉React並創建一個兼容的版本。如果社區支持Facebook正在維護的這個分支,他們會採用它。在某些時候,更受歡迎的分叉實際上將成為公眾眼中正真的“React”。

這種微妙的平衡使Facebook更新的決策.Facebook可以保持其影響力,只要它不濫用。到哪裡算越線了?由共識說了算。

這聽起來非常接近區塊鏈治理的工作方式。保證分叉的能力是該技術為其用戶提供的核心保證之一。有一點需要注意的是,這種保證在區塊鏈下要強得多。除了系統的源代碼之外,你還可以分叉其所有數據。

開源運動的延續

我們在開源軟件和區塊鏈之間看到了幾個相似之處。無論是選擇開放的動機,營利性公司是否適合,還是權力平衡和治理方式都有相似的地方。

這不僅僅是巧合,區塊鏈就是開源軟件運動的延續。

開源軟件在共享內容方面有明顯限制。開源無法打開實時系統,無法開放數據。你可以共享服務器的源代碼,但不能共享此服務器的運行實例及數據。

區塊鏈使在開源上更進一步,使其成為可能。

一個具體的例子

我們回到Android吧。我們已經看到了生態系統的價值,它來源於控制操作系統源代碼 — 這一價值使得像三星這樣的公司加入並讓生態系統更具吸引力。

但Android不僅僅是源代碼。生態系統需要許多場景應用服務才能運作.Android依賴於推送通知,依賴於交易付款,依賴於從Google Play上下載的各種各樣應用。這些服務都是運行的應用實例,而不僅僅是代碼。數十億用戶每天使用它們,產生並擁有數據。

誰在運營這些服務?讓我們看看Google Play就知道了,答案不言而喻。谷歌在其私有的基礎設施上運行這些服務,而這並不與任何人共享。

讓谷歌獨自控制Google play的成本是多少?

大家都知道,每位開發者向Google支付30%的費用,以便於用數字方式分發他們的應用。但這只是錢的問題,每位移動開發人員都對應用審批流程感到不安。有人經歷了APP應用被拒絕上架以及3次下架。對分銷渠道的絕對控制,而且自身也有產品參與分發,這是不利於競爭的。看看AppStore中Spotify的命運就知道了。

在Android上進行應用商店的競爭怎麼樣?這是可能的,亞馬遜在構建替代方案方面做得很好。但不幸的是,它們與Google Play幾乎沒有區別,這些替代方案無法解決根本問題。

能夠像Google Play一樣運行這項服務將為Android生態系統帶來巨大價值。僅使用開源技術,這種想法在技術上是不可能的。

雖然技術上區塊鏈是可行的,但說實話,我們不會很快看到這種情況的發生。讓社區運營去中心化的Google Play不太實際,這主要是因為商業原因。

相反,我看到了一個不一樣的機會。像微軟這樣的營利性巨頭的機會,他們迫切希望在移動領域開闢一些細分市場,構建不完全中心化的應用程序分發渠道,為依賴它的開發人員提供更多保證。這不是因為意識形態,而是因為它會使其更具競爭力 — 至少比Google Play和Amazon Appstore更具競爭力。

區塊鏈將成為主流

歷史將證明,擁有多方的系統生態最終都必須為其用戶提供一些硬性保障,不是因為意識形態,而是為了保持競爭力。

這並不意味著每個系統都將在區塊鏈上運行,就像並不是每個軟件都一定是開源的那樣,但世界上有一些關鍵基礎部分必須是開放的。就像軟件的一些關鍵部分必須是開源的,大公司才能獲得成功。

原文标题:《开源运动的下一站:区块链》
作者:Tal Kol,公链 Orbs 联合创始人
https://medium.com/orbs-network/blockchain-as-the-next-evolutionary-step-of-the-open-source-movement-96158f46d0d7

--

--