被Linux之父力挺的軟件,開源后倒下了...
上世紀90年代,Sun公司是程序員最向往的公司之一。
圖片
它擁有同時代最好的CPU,最好的操作系統(tǒng),最好的編程語言,可謂如日中天。
但是有個年僅三十歲出頭的年輕人卻看到了其中的危機,他說:如果我們不開源操作系統(tǒng),將來市場將會被Linux所搶占。
事實證明他是對的,免費的Linux,搭配廉價的x86 CPU很快把Sun公司的高端服務器打得潰不成軍。
這個人就是Larry McVoy。
圖片
但是誰也沒有想到的是,僅僅五年以后,這個開源擁護者就走到了開源的對立面,更是在十年之后和世界上最大的開源社區(qū)決裂了。
1、開源先鋒
1994年,Larry離開Sun公司,轉(zhuǎn)身投入Linux的懷抱,他開發(fā)了著名的性能分析工具LMbench,這是 Linus 和其他一些內(nèi)核黑客喜歡的基準測試套件。
從此他成為Linus的親密盟友。
當時的Linus,還是依靠郵件列表和文件diff來維護Linux內(nèi)核,剛開始還好,到了1998年,繁重的工作讓他疲憊不堪。
市面上有CVS和Subvision這樣的SCM(Source Code Management ),但Linus不喜歡,認為是垃圾,因為它們無法匹配Linux那全球分布式的開發(fā)模式和流程。
正好,Larry在Sun公司開發(fā)過一個叫做Teamware的軟件,這是個分布式的源碼管理系統(tǒng),不但在Sun內(nèi)部存儲Solaris和Java的源代碼樹,在外部也有很多客戶在使用。
圖片
一天晚上,Larry邀請Linus、Dave Miller 等內(nèi)核大神到家里吃晚飯,一起討論新的SCM應該是什么樣子。
Larry在白板上畫了三四個小時,給他們講了自己對分布式SCM的想法。
Linus被打動了:“嗯,這很酷,如果你能把它搞出來,我肯定會用它?!?/p>
Larry說道:“沒問題啊,我以前做過,6個月估計就差不多了。”
Larry顯然過于樂觀了,新SCM兩年以后才開發(fā)出來,這就是鼎鼎大名的BitKeeper。
圖片
2、和開源決裂
軟件開發(fā)出來了,但是Larry的理念發(fā)生了重大的變化:“開源作為一種孤立的商業(yè)模式幾乎是不可持續(xù)的!”
Larry認為:對于開源項目來說,在開始的時候是有趣的,程序員愿意在上面花費時間。隨著時間推移,就不那么好玩了,苦力活越來越多,沒有收入作為動力,就沒人愿意維護了,這個項目就可能死掉。
如果收費的話,才有可能讓這個項目繼續(xù)下去,fix bug,開發(fā)新功能。
于是,Larry決定:BitKeeper不開放源碼,收費。
一個不開源的軟件,Linux社區(qū)會用嗎?
答案是:會的。
2002年,Linus做了一個讓人震驚的決定,選擇BitKeeper來進行內(nèi)核開發(fā)。
一個重要原因就是BitKeeper這個分布式的SCM可以輕松地支持分叉和合并,以前完全壓在 Linus 肩上的大部分工作就可以分配給他信任的副手。
圖片
BitKeeper搞了個社區(qū)版讓大家使用,附加兩個重大限制:
1.使用社區(qū)版的程序員不能參與其他競爭工具的開發(fā),不論競爭工具是開源的還是私有的。
2.BitKeeper公司 將控制與內(nèi)核項目相關(guān)的某些元數(shù)據(jù),以便發(fā)現(xiàn)任何濫用許可證的情況
這在Linux社區(qū)引發(fā)了軒然大波,讓Linus和其他開發(fā)人員的關(guān)系搞得非常緊張。
Linux社區(qū)的人也不服:我們不能開發(fā)一個開源的?直接把BitKeeper替換掉嗎!
對Linus來說,他并不為使用商業(yè)軟件而煩惱,所以替代方案一定得是對BitKeeper的重大改進。
三年過去了,那些開源大牛們折騰了無數(shù)的SCM,沒有一個能滿足Linus的要求。
到了2005年,Samba 的創(chuàng)建者Andrew Tridgell嘗試替代方案時,對BitKeeper 網(wǎng)絡協(xié)議進行了逆向工程。
這下子惹惱了Larry,他宣布將停止向社區(qū)免費提供 BitKeeper 版本。
這該怎么辦?難道Linus要回到郵件列表和文件diff的時代?
自1991年以來頭一遭,Linus暫停了Linux的開發(fā),卷起袖子準備自己開發(fā)一個SCM。
2005 年 6 月,開始該項目開工后的幾天內(nèi),Linus 的 Git已實現(xiàn)自托管。
幾周之內(nèi),它就準備好host Linux 的內(nèi)核。
幾個月之內(nèi),Git就達到了完整的功能。
Linus 將項目的維護工作交給了最熱情的貢獻者 Junio Hamano,并再次全職投入 Linux 開發(fā)。
大神就是大神。
3、走上“絕路”
失去了Linux這個最大的“活廣告”之后,BitKeeper走上了一條穩(wěn)定發(fā)展的“羊腸小道”。
BitKeeper公司有20來人,年收入幾百萬美元。
說實話,活得不錯。
但是人比人氣死人,BitKeeper最大競爭對手是Rational的ClearCase,每年營收高達3.5億美元。
時間來到2016年,Git已經(jīng)統(tǒng)治世界,BitKeeper終于宣布開源,但一切都晚了。
2020年,撐不下去的BitKeeper停止了開發(fā)。
圖片
2015年,Git誕生10周年之際,有人問Larry:“當年你沒有開源BitKeeper,是否后悔?”
Larry說:“后悔?當然了,如果我當時能搞清楚開源的作用,我毫不猶豫地就去做了......”
如今的Larry已經(jīng)退休,生活滋潤,他最喜歡的事情就是駕駛自己心愛的小船,出海釣魚。