close
出品 | OSC開源社區(ID:oschina2013)
上個世紀 90 年代,世界上的計算機要麼不聯網,要麼在企業內部聯網。但是,在互聯網的概念下,計算機之間共享信息和資源的需求成為了必要。
1995 年 5 月,Java 橫空出世。Java 的父親是當時憑藉 Solaris 操作系統風頭正盛的 SUN 公司。當時,大多數高級語言的程序在運行前需要根據不同的計算機進行編譯,然後才能運行。Java 這種高級程序語言不需要與硬件相關的編譯器,而是在運行時邊解釋邊運行。如此一來,Java 程序就不受計算平台限制,正好滿足了共享的需求。
可想而知,Java 的流行是個必然。但是,Eclipse 的大火卻是大家沒想到的。Java 好用,但相應的編譯器卻不好用。而且,當時的編譯器少得可憐,一款開源且好用的 Java IDE Eclipse 打遍天下無敵手。
那時候,開源基金會也少得可憐。2004 年,Eclipse 成立基金會,搖身一變成為全球知名的開源基金會。再然後,隨着 SUN 被 Oracle 收購,Oracle 又將 Java EE 捐贈給 Eclipse,它由此成為 Java 大本營的重要基石。
如今,Java 已被唱衰多年,多少新湧現的語言說要取代 Java。現在,開源基金會也像雨後春筍一般,Eclipse 基金會幾經重大變化。還會有人對他們的故事感興趣嗎?

一段三角關係

如果不去特意追溯,任誰也想不到 Eclipse 開源基金會背後站着的是藍色巨人 IBM。
IBM 一直是專利大戶,多年來都是擁有專利最多的公司,甚至沒有之一。他們養了一支龐大的知識產權律師團隊,對侵犯專利者重拳出擊。似乎,IBM 與開源天生絕緣。
但利益是永恆的。1996 年,IBM 收購了開發 Smalltalk 和 Java 集成開發環境 VisualAge 的 OIT(Object Technology International)。據說,當時 VisualAge 的代碼價值 4000 萬美元,IBM 眼都沒眨就說要消除不兼容的開發環境這個市場痛點,要增加這些環境中通用組件的重用性。2001 年,一個天生為開發環境集成平台而設計的產品誕生了,它日後成為了整個 IBM 工具策略的基礎。
IBM 給這個產品取名為 「Eclipse」,有 「日食」 的意思。很多人說這個是非常糟糕的名字,在此之前有 Eclipse 汽車,有 Eclipse 口香糖,還有 Eclipse 女子足球組。IBM 的律師也反對這個已經爛大街的名字。
但 IBM 一意孤行。2001 年 11 月,IBM 用一個讓人無法拒絕的價格從足球隊手裡購買了 eclipse.org 域名,非要用這個名字。更想不到的是,Eclipse 是開源的,IBM 為它建立了開放源代碼許可和運營模式,不僅貢獻大量源碼、開發者,還有關於開源協議的法律諮詢援助。

這是 IBM 最大膽的開源 「賭注」。

—— IT 諮詢公司 Illuminata 分析師 James Governor

IBM 的開源決定是一次革命性的舉措。那個時候,軟件開源協作開發還是十分新穎的想法,Eclipse 的成功展示了開源模式的優勢。

—— Eclipse 基金會執行董事 Mike Milinkovich


話說回來,這個名字多少帶點針對 SUN(太陽)公司的意思。SUN 對此一直耿耿於懷,與此同時,Eclipse 展現了強大的能力,讓 SUN 自帶的編譯器 NetBeans 黯然失色,逐漸成長為 Java IDE 的老大。
2004 年,Eclipse 正式宣告獨立出來,成立 Eclipse 開源基金會,而且總部設立是在加拿大渥太華,不再依賴於創始者 IBM,而是轉向行業,讓其它技術供貨商、甚至是 IBM 的對手加入 Eclipse 董事會,協助決定未來方向。
面對這一邀請,SUN 公司的第一反應是不。據知,在 Eclipse 基金會成立前夕,SUN 就在考量要不要加入,除了技術層面外,其中最主要的一個關注就是Eclipse這個名字。SUN 表示,如果基金會不同意改名字,他們就不準備加入。還有該公司高管也表示,不會加入一個名字中帶有要消亡 SUN 公司的組織。
當時,業界普遍認為 IBM 獨占 Eclipse 主導地位,想要推動自家的 Java 軟件,這讓 IBM 與 SUN 之間產生間隙。但那時,IBM 主管也曾駁斥傳言,說取名 Eclispe 不是克制 SUN 的意思,請不要自作多情。
第三者微軟,在 2005 年才浮出水面。2005 年 3 月 EclipseCon 大會的主題演講中,IBM Rational 軟件部門 CTO 兼設計、構建和測試工具副總裁的 Lee Nackman 表示,微軟公司才是 IBM 想要 「吞噬」 的公司。

我們的目標是微軟。微軟是市場的領導者,並且正在成為主導市場的工具平台。顯然,我們需要爭奪更多的開發者群體。所以,在 1998 年左右,我們覺得應用服務器和中間件的競爭是關鍵,我們需要把開發者帶回到基於 Java 的中間件上來。

2001 年初,IBM 看到 Visual Studio 和微軟生態不斷成長,非常困擾。我們決定與 Windows 和 Visual Studio 進行競爭。因此,Eclipse的目標過去是,現在也是微軟,而不是 SUN 公司。

好一出峰迴路轉的單箭頭大戲,任誰都會說一句 IBM 「不娶何撩」?但是,冷靜想想,一切又似乎都有跡可循。
不談 IBM 與微軟那筆 DOS 操作系統的 「舊債」。21 世紀初,互聯網爆發,依靠個人電腦崛起的微軟如日中天,Windows 在手之外,它還要開發C# 語言和 .Net 平台,要與 Java 一爭高低。這在重倉 Java 的 IBM 眼裡,可謂是 「舊債加新仇」。
2004 年 Eclipse 基金會成立,就有不少人猜測,這將有助於抵擋微軟工具與 Windows-based 軟件的競爭。要想增強競爭力,IBM 或者是 Eclipse 必須拿出更強勢的產品。
然而,IBM、SUN 和微軟之間的三角關係並沒想象中那麼簡單。因為微軟與 SUN 之間也曾有一段 「愛恨情仇」,這佐證了微軟就是在打壓 Java。
Java 一降生,SUN 就抱有通過 Java 實現跨操作系統平台的夢想,這讓微軟很是眼饞。1996 年,微軟向 SUN 公司購買了 Java 的授權。但是,微軟並沒有依合同向用戶提供用 Java 開發的產品,而是通過 SUN 的技術,搞自己的類似產品。
為此,SUN 把微軟告上法庭。這場官司直到 2001 年才以 SUN 獲得勝利告終,當時法院判定:微軟誤導 Java 開發者、阻礙他們開發兼容 Java 技術的產品,從而打壓 Java。然而,此時微軟的 ASP 已經獲得了更大的市場占有率。
一滴時代的眼淚
戰勝 Visual Studio 和微軟生態那個點,Eclipse 曾經一度非常接近過。可惜,卻無疾而終。在知乎相關問題中,排名第一的答案多少有點情懷向了。
的確,Eclipse IDE 是 Eclipse 基金會的第一個王牌項目。當年,Java 開發沒有統一天下的 IDE,稀少又昂貴,Eclipse IDE 以開源和免費的姿態出現在大家面前,而且速度相對更快,又有 Google 支持,還在各種教科書中備受推崇,讓不少人如獲至寶,口碑極盛。
下面這兩張圖, Eclipse 基金會執行董事 Mike Milinkovich 在多個演講中都拿出來過,以佐證 Eclipse IDE 曾經一騎絕塵:
轉折點出現在 2014 年 Eclipse 4.4 Luna 的發行。如果說之前的 Eclipse IDE 瑕不掩瑜,那麼後幾年中發展中,它的弊端就漸漸顯現出來了。曾有一篇唱衰 Eclipse 的文章直指這一版本:

如果說有一個時間點,標誌着 Eclipse 的死亡,那這個時間點一定是 Eclipse 4 的發布。在 Eclipse 3.x 時代,Eclipse 做的很不錯,統治着所有開發工具。但是突然間,好像他們決定要親手終結自己的生命,他們改寫了所有 UI 代碼。

在 3.x 時代,Eclipse 是一個速度非常快的 IDE,每一次 Release,它都添加了各種實用的功能。而 Eclipse 4,一切都變了,運行速度變慢,UI 錯誤不斷,而且還很醜陋。好像 Eclipse 一下退步了好幾年。


有些人將原因歸結於 Eclipse 不再看重 IDE 產品,而更樂忠於推廣 Eclipse 基金會;也有人認為 Intellij 才是 Eclipse 式微的真正元兇:「每一次在使用 Eclipse 的時候,你都會感到,你還在使用它的唯一原因,就是太窮,買不起 Intellij。」
此前,2013 年 6 月的 Google I/O 大會上,Google 推出新的 Android IDE 「Android Studio」。本來,是與 Eclipse 合作開發;隨後,谷歌 「反水」,投身 IntelliJ,打造出今天的 Android Studio。由此,這次大會上的 「Android Studio」,最大的轉變就是從 Eclipse 切換到了 IntelliJ IDEA。
2013 年~ 2014 年,似乎成為了 Eclipse 及其基金會的分水嶺。資料顯示,2012~2014 年 Eclipse 基金會出於財務虧損狀態。
旋即,2015 年 6 月,Google決定重點建設 Android Studio,並宣布在年底停止支持其他集成開發環境,比如 Eclipse。8 月,Eclipse 基金會開始向個人或組織尋求捐助來為它的開源項目提供資金。
與此同時,Eclipse 基金會也表示,初期他們的重點放在改進核心 Eclipse 平台、JDT 和 Web 工具,未來會擴展到更多項目。這是一個轉型的信號。
如今,據 2022 年 5 月份的數據來看,Eclipse IDE 依舊占據在榜單第二的位置,受到了 14.21% 份額的關注度,似乎並沒有像別人所鼓吹的那般滑落神壇。
https://pypl.github.io/IDE.html
但是,他們似乎已經放棄了追趕微軟的計劃。在 2021 年的年度報告中,他們的戰略目標包括:傳達 Eclipse 基金會的差異化價值主張、將 Eclipse 基金會建立為卓越的歐洲 OSS 組織、培育新興技術的項目和工作組等等。
要知道,曾經十餘年中,他們的年度報告戰略位置,排在第一的永遠都是 「成為首選開發者平台」 這樣類似的表述。
一場失敗的談判
2018 年是 Java 社區發生重大變化的一年,因為企業 Java 的管理權從 Oracle 和 Java Community Process (JCP) 手中被轉移到了 Eclipse 基金會。有必要提一嘴的是,之所以是 Oracle,是因為 SUN 在 2010 年被它收購了。
Mike Milinkovich 在一場採訪中如此表述這項轉移:

我們絕對歡迎 Java EE 加入 Eclipse 基金會。雖然這是一項繁重的工作,但 Eclipse 基金會在 Java 社區和企業中有着深厚的根基。

我們覺得這是天作之合,也是我們的絕佳機會。除此之外,我認為 Jakarta EE 會促使許多開發人員最終認識到 Eclipse 基金會還有我們的 Java IDE 以外的項目。


很明顯,在 Eclipse 基金會看來這是一件好事,這鞏固了 Eclipse 基金會在 Java 世界中的重要地位。但不知道大家發現一個 「華點」 沒有,轉移後的 Java EE 被改名為 Jakarta EE 了。這緣於一次失敗的談判。
簡單來說,Oracle 捐贈 Java EE 給 Eclipse 基金會有幾個條件:
1)Eclipse 基金會發行的產品(如 Eclipse IDE)必須只能捆綁由 Oracle 認證(而不是任何其他供應商認證)的 Java 運行。這一條會損壞了該基金會 「供應商中立」 的立場。
2)Oracle 要求 Eclipse 基金會不能修改舊的代碼,如需修改則要重命名,包括項目名稱和軟件包的名稱。這意味着現有的應用程序無法在沒有重構和重新編輯的情況下運行在更新後的平台上。
有點霸王條款的意思的了。不少人在當時勸 Oracle 允許 Eclipse 基金會繼續使用 Java 的名字,畢竟 Java EE 之前就是從 J2EE 改名過來的,頻繁地改名會造成使用者的困擾,導致市場混亂。
但 Oracle 沒有讓步。在長達數月的談判之後,兩者最後達成的共識是:Jakarta EE 不能發布針對基礎庫 javax 的修改包,Jakarta EE 規範也不能使用包括 Java 商標的現有規範名稱。
因此,有人擔憂 Oracle 會在一定程度上殺死 Java EE。但最重要的是,這凸顯了開源基金會在大企業面前的弱勢地位。
一次搬家的背後
2020 年 5 月,Eclipse 基金會宣布將總部搬往歐洲的比利時布魯塞爾。
在計劃中,2020 年 7 月這一搬遷就要完成。屆時,Eclipse 基金會將在比利時、加拿大和美國設立總部,但其官方總部將設在歐洲。而 Eclipse 和 Eclipse Foundation 的名稱、商標和品牌將由新的比利時實體控制。而且,未來 Eclipse 基金會的會費以歐元計價。
除此之外,Eclipse 基金會還正在建立一個基於 GitLab 的新平台,託管在歐洲的服務器上。
這讓人不得不聯想到 2019 年的微軟收購 GitHub 事件。當時,微軟 —— 這個 Eclipse 的宿敵正在史無前例地加大對開源的支持力度。這讓 Mike Milinkovich 感到擔憂:

微軟正在走向另一種形式上的完全壟斷,可能危及包括 Eclipse IDE 等在內的其它公司和項目。GitHub + VS Code 的組合已經非常流行,這種單一性文化會引發憂慮。

當然,我們也不能將 Eclipse 基金會的這次搬家歸結於微軟,這次行動的確有戰略上的必要性:
首先,Eclipse 基金會有三分之二的提交者位於歐洲國家。Mike Milinkovich 表示, Eclipse 基金會已經是歐洲最大的開源組織;
其次,Mike Milinkovich 認為歐洲越來越重視開源和開發的價值,而且儘管歐洲有一些開源組織,但它們主要堅持單一項目,並沒有託管數百個項目這樣體量的開源基金會。這對 Eclipse 基金會是個機會,讓它建立起一個真正的全球開源機構。

我們(Eclipse Foundation)在美國的工作多少有些局限了自己。在美國,我們的確和一定數量的研究實驗室和政府機構和合作,一些美國資助的研究機構也和我們有聯繫。

然而,在我看來,歐洲在政策層面上是要比美國先進的,歐洲的研究機構更加願意從外部去擁抱開源。近來,歐洲越來越傾向於使用開源的方法來達成研究成果的發表和傳播。多年來,他們一直鼓勵研究者或者開發者建立社區。

—— Mike Milinkovich

結語:物是人非,分久必合
日轉星移。IBM/Eclipse、SUN 和微軟之間的愛恨情仇,似乎已經隨風飄散了。
2010 年,SUN 公司被 Oracle 公司收購。2018 年那場與 Oracle 談判雖然失敗,但那早已與 SUN 無關了。Eclipse 拿到了 Java EE,進一步鞏固了自己在 Java 社區中的權威。
2021 年 8 月,微軟宣布將成為 Eclipse 基金會的戰略成員,並且加入其董事會。
其實,早在 2016 年,微軟就以解決方案成員的身份加入了 Eclipse 基金會,並在當時提供了一套開發工具和服務。現在,兩者之間的合作更加緊密了。微軟盛讚 Eclipse 基金會:
1)Eclipse 基金會在供應商中立治理、基礎設施、營銷、社區建設和開發人員倡導工作方面擁有深厚的專業知識。
2)Eclipse 基金會仍然是 Java 生態系統的重要基石,與 Java 社區的核心部分有着密切的聯繫。
3)Eclipse 基金會正在通過工作組擴大其作用,其中許多工作組對 Microsoft 及其合作夥伴很重要。
果然啊,三十年河東,三十年河西。

END


做本土開源操作系統
最大的挑戰是什麼?

覺得不錯,請點個在看呀

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 鑽石舞台 的頭像
    鑽石舞台

    鑽石舞台

    鑽石舞台 發表在 痞客邦 留言(0) 人氣()