比爾·蓋茨:一位改變開(kāi)源軟件的人
在比爾·蓋茨退休前的一周召開(kāi)了一場(chǎng)會(huì)議,會(huì)議的主題是關(guān)于開(kāi)源軟件。
那是2008年夏天,多年以來(lái)開(kāi)源社區(qū)將微軟公司視作頭號(hào)公敵。七年以前,微軟CEO史蒂夫·鮑爾默(Steve Ballmer)曾將Linux稱作“惡性腫瘤”。2007年夏天,微軟法律顧問(wèn)布拉德·史密斯(Brad Smith)和授權(quán)許可主管霍拉西奧·古鐵雷茲(Horacio Gutierrez)告訴《財(cái)富》雜志,Linux侵犯了微軟的235項(xiàng)專利,并暗示將對(duì)任何使用Linux的大型企業(yè)收取授權(quán)費(fèi)。
與此同時(shí),微軟也逐漸意識(shí)到自由軟件運(yùn)動(dòng)的力量,并開(kāi)始探索向開(kāi)發(fā)者數(shù)量日益增長(zhǎng)的開(kāi)源軟件社區(qū)示好的方式。在兩年的時(shí)間中,薩姆·拉姆齊(Sam Ramji)擔(dān)任了微軟開(kāi)源戰(zhàn)略主管。每隔三個(gè)月,他會(huì)與蓋茨以及微軟其他高管會(huì)面,展示由一組微軟小型工程師團(tuán)隊(duì)收集的不同開(kāi)源技術(shù)。
然而這天下午的會(huì)議與以往不同。在公司首席法律智囊史密斯和古鐵雷茲的邀請(qǐng)下,拉姆齊和蓋茨、微軟首席軟件架構(gòu)師雷伊·奧茲(Ray Ozzie),以及其他一些高管坐在一起,討論微軟是否真的可以開(kāi)始使用開(kāi)源軟件。拉姆齊和奧茲,站在他們支持微軟應(yīng)當(dāng)擁抱開(kāi)源技術(shù)的一邊,而古鐵雷茲也給出了能使這一提議成為現(xiàn)實(shí)的法律框架。不過(guò)微軟其他高管對(duì)此提出強(qiáng)烈質(zhì)疑。
這時(shí),比爾·蓋茨站了起來(lái)。
他走到白板前,畫下一張系統(tǒng)如何運(yùn)作的框架,其中包括版權(quán)、代碼貢獻(xiàn)和專利。蓋茨斬釘截鐵地表示,微軟必須做出改變。
拉姆齊此時(shí)已經(jīng)擔(dān)任微軟的首席開(kāi)源戰(zhàn)略師超過(guò)3年半時(shí)間。對(duì)他來(lái)說(shuō),蓋茨站起來(lái)的那一刻就是微軟改變對(duì)自由軟件的態(tài)度。拉姆齊表示:“開(kāi)源社區(qū),甚至整個(gè)科技行業(yè)都不相信蓋茨真正理解開(kāi)源,包括開(kāi)源為何變得非常重要,為何成為了競(jìng)爭(zhēng)優(yōu)勢(shì),以及為何當(dāng)競(jìng)爭(zhēng)對(duì)手開(kāi)始使用開(kāi)源技術(shù)的同時(shí)時(shí),微軟也必須這么做。蓋茨實(shí)際已經(jīng)領(lǐng)悟到,在那一刻,他教會(huì)我們所有人。”
從外界來(lái)看,似乎微軟已經(jīng)徹底改變了態(tài)度。微軟近期為Windows Azure中加入了兩項(xiàng)開(kāi)源技術(shù)平臺(tái),并和其他支持開(kāi)源企業(yè)一樣,向開(kāi)源項(xiàng)目貢獻(xiàn)代碼。這些都不是小型的開(kāi)源項(xiàng)目,而是知名的大型開(kāi)源項(xiàng)目,包括Node.js和Hadoop。這在以前是不可能的。
微軟的改變是由于這樣一群人,例如薩姆·拉姆齊,以及聘用他的比爾·希爾夫(Bill Hilf),當(dāng)然還有比爾·蓋茨。不過(guò)微軟這樣的轉(zhuǎn)變也反映了科技行業(yè)正在發(fā)生巨大的變化趨勢(shì)。隨著越來(lái)越多的應(yīng)用從本地?cái)?shù)據(jù)中心轉(zhuǎn)移至云計(jì)算系統(tǒng),例如亞馬遜Amazon Web服務(wù)和微軟Windows Azure中,軟件經(jīng)濟(jì)也在發(fā)生著變化。以往,企業(yè)付費(fèi)給微軟等公司的軟件,再將微軟的軟件安裝在自己的服務(wù)器上。現(xiàn)在,企業(yè)更多地愿意付費(fèi)使用在線服務(wù)。通過(guò)在Windows Azure之上提供開(kāi)源軟件,這是微軟一條的確可以賺錢的方法。
Windows Azure負(fù)責(zé)人希爾夫表示:“憑借Azure,我們通過(guò)提供計(jì)算能力、存儲(chǔ)空間和網(wǎng)絡(luò)帶寬賺錢。我們希望我們將能夠提供更多類型的應(yīng)用程序和系統(tǒng),所以開(kāi)源技術(shù)能夠幫助(業(yè)務(wù))迅速提升……我們?cè)贏zure上提供Node.js并非完全是利他的,這也是推動(dòng)微軟業(yè)務(wù)發(fā)展的一種方式。”
比爾·希爾夫(Bill Hilf),微軟開(kāi)源技術(shù)先驅(qū) (照片來(lái)自:Microsoft)
希爾夫曾是一名Linux開(kāi)發(fā)者。2000年代初,他曾是IBM的高級(jí)架構(gòu)師,利用Linux與其他開(kāi)源軟件搭建過(guò)大型商業(yè)業(yè)務(wù)。他還曾負(fù)責(zé)過(guò)IBM的開(kāi)源戰(zhàn)略。1990年代末,IBM曾經(jīng)在Linux業(yè)務(wù)領(lǐng)域投下重注,以對(duì)抗微軟。這時(shí),在2004年,希爾夫接到了一通來(lái)自微軟的電話。
希爾夫回憶道:“微軟給我打來(lái)電話,對(duì)我說(shuō):‘我們不太了解開(kāi)源軟件,我們需要了解的人。’我就像是成為微軟這顆星球上的第一名宇航員。”
希爾夫的主要任務(wù)(至少在最初階段)是教會(huì)微軟的人了解開(kāi)源。他表示:“我花費(fèi)了大量時(shí)間指導(dǎo)他人,例如開(kāi)源過(guò)程是怎樣的:開(kāi)源項(xiàng)目如何運(yùn)作,互聯(lián)網(wǎng)上的社區(qū)軟件如何工作,授權(quán)如何進(jìn)行,人們是否真的為此無(wú)償工作等。”他同時(shí)也幫助建立了微軟內(nèi)部的開(kāi)源實(shí)驗(yàn)室,并與同事一起在安裝Windows軟件PC平臺(tái)上搭建Linux系統(tǒng)進(jìn)行批量測(cè)試。對(duì)于一家長(zhǎng)期回避像Samba項(xiàng)目的公司,這是一個(gè)重要的許諾。Samba也是一個(gè)開(kāi)源項(xiàng)目,能幫助Windows計(jì)算機(jī)與Linux文件服務(wù)器通信。
與此同時(shí),希爾夫的實(shí)驗(yàn)室開(kāi)始探索新項(xiàng)目,推動(dòng)現(xiàn)有開(kāi)源工作的發(fā)展。在他微軟職業(yè)生涯結(jié)束前,希爾夫開(kāi)始接觸到開(kāi)源社區(qū)的一些成員。他表示:“我們希望了解微軟與開(kāi)源社區(qū)合作的方式,不僅是了解開(kāi)源社區(qū)如何運(yùn)作,以及我們是否能實(shí)現(xiàn)互動(dòng),更希望尋找我們可以相互推動(dòng)的領(lǐng)域。”
希爾夫表示,基于這樣的想法推動(dòng)微軟參與了Node.js和Hadoop。去年,微軟不僅宣布將把Node.js和Hadoop等Linux技術(shù)移植到Windows中,還表示將直接向開(kāi)源社區(qū)貢獻(xiàn)代碼。
希爾夫表示:“我們有一個(gè)專門的團(tuán)隊(duì)從事這一工作。我們已經(jīng)進(jìn)入實(shí)際工程開(kāi)發(fā)工作中。我們將取得的成果置于開(kāi)源協(xié)議下,并通過(guò)Github等組織發(fā)布這些成果。這在六年前是不可想象的。”
去年秋季,微軟甚至還為Samba貢獻(xiàn)了代碼。Samba的貢獻(xiàn)者之一克里斯托弗·赫特爾(Christopher Hertel)寫道:“時(shí)間退回到幾年前,微軟程序員提交代碼將會(huì)讓人感到不可思議。但爭(zhēng)端已基本結(jié)束,時(shí)代也發(fā)生了改變。”他指出:“大部分人并未注意到貢獻(xiàn)者的來(lái)源,若發(fā)生在四年前也是遙不可及的事情,但我們中的一些人將其視為里程碑,并希望表達(dá)我們對(duì)此的贊賞。”
微軟的最佳狀態(tài)是在它坐立不安的時(shí)候
微軟已經(jīng)走過(guò)了漫長(zhǎng)的道路。2006年,當(dāng)希爾夫聘請(qǐng)拉姆齊負(fù)責(zé)微軟的開(kāi)源項(xiàng)目時(shí),微軟與自由軟件行業(yè)的關(guān)系十分緊張。一年后,史密斯和古鐵雷茲在接受《財(cái)富》雜志采訪時(shí)公開(kāi)威脅Linux。當(dāng)拉姆齊接受微軟的聘請(qǐng)時(shí),事后他回憶說(shuō),他曾對(duì)自己將扮演的角色感到懷疑和擔(dān)憂。
事物的發(fā)展總是有起有落,不過(guò)他與蓋茨的會(huì)議意味著巨大的改變終將發(fā)生。在這次會(huì)議之后不久,微軟收購(gòu)了語(yǔ)義搜索創(chuàng)業(yè)企業(yè)Powerset,而該公司是最先基于Hadoop項(xiàng)目開(kāi)發(fā)網(wǎng)絡(luò)服務(wù)的公司之一。在整合期間后,微軟允許Powerset的工程師繼續(xù)向Hadoop貢獻(xiàn)代碼,而該服務(wù)也在一段時(shí)間內(nèi)繼續(xù)基于Hadoop。不過(guò)Powerset最終放棄了Hadoop,轉(zhuǎn)而采用微軟的自有技術(shù),至少一名主要的開(kāi)源代碼貢獻(xiàn)者離開(kāi)了微軟。不過(guò)Powerset至少設(shè)定了正確的方向。
在此后的一年中,拉姆齊和他的團(tuán)隊(duì)開(kāi)發(fā)了類似亞馬遜的云計(jì)算網(wǎng)絡(luò)服務(wù)原型產(chǎn)品,這完全基于開(kāi)源軟件,例如Zend、OpenNebula、Eucalyptus、OpenScale和Hadoop等。拉姆齊回憶稱:“我們就像測(cè)試小分隊(duì)。我們會(huì)說(shuō):‘你認(rèn)為你是領(lǐng)先的?讓你看看通過(guò)開(kāi)源兩周的時(shí)間,還有通過(guò)Linux天才能對(duì)你的項(xiàng)目做些什么。’”
拉姆齊表示,這一項(xiàng)目曾引起了微軟智囊團(tuán)的深深不安。微軟當(dāng)時(shí)已開(kāi)始利用自有技術(shù)開(kāi)發(fā)Windows Azure,代號(hào)Red Dog。對(duì)拉姆齊來(lái)說(shuō),這種“深深不安”是件好事。他認(rèn)為:“微軟的最佳狀態(tài)是在它坐立不安的時(shí)候。這正是微軟的精神,這是一家以危機(jī)為導(dǎo)向的公司。”
微軟正在變?yōu)楣雀?/p>
拉姆齊于2009年離開(kāi)微軟,加入一家名為Apigee的初創(chuàng)企業(yè),抓住這一領(lǐng)域的發(fā)展機(jī)遇與開(kāi)源運(yùn)動(dòng)早期類似:致力于將全球的網(wǎng)絡(luò)服務(wù)集成到應(yīng)用程序接口或說(shuō)API。不過(guò),他在雷德蒙德留下自己的烙印。
拉姆齊表示:“我認(rèn)為,我們建立的團(tuán)隊(duì)是我工作過(guò)的最優(yōu)秀團(tuán)隊(duì)。著實(shí)執(zhí)行一個(gè)信條是將外部的事物引入內(nèi)部。在這個(gè)世界中,我們無(wú)法繼續(xù)僅僅依靠自有技術(shù),那只能將我們變成沙文主義者——搖旗吶喊的狂熱微軟粉絲。”此后,該團(tuán)隊(duì)的成員隨后分散至微軟內(nèi)部的其他團(tuán)隊(duì),并傳播了這樣的思想。
Windows Azure仍基于微軟自有技術(shù)軟件。不過(guò)令許多人感到驚訝的是,該服務(wù)向開(kāi)發(fā)者提供了多種開(kāi)源工具,幫助他們開(kāi)發(fā)自己的應(yīng)用。這不僅包括Node.js和Hadoop,也包括Java和PHP等開(kāi)源語(yǔ)言。微軟甚至表示,將允許開(kāi)發(fā)者在Windows Azure之上運(yùn)行Linux。
拉姆齊承認(rèn),微軟在一定程度上也在發(fā)生了改變,因?yàn)槭澜缫呀?jīng)發(fā)生了變化。他援引維克多·雨果(Victor Hugo)的名言:“當(dāng)一種思想的時(shí)代來(lái)臨時(shí),世界上沒(méi)有比這更強(qiáng)大的力量。”他更通俗的語(yǔ)言形容到:“對(duì)于開(kāi)源這塊巧克力來(lái)說(shuō),云計(jì)算就是花生醬。”
不過(guò),作為長(zhǎng)期以來(lái)的開(kāi)源軟件的公敵,微軟仍然備受質(zhì)疑,即微軟是否真正改變了自己的做法。資深開(kāi)源用戶、2001年微軟反壟斷案后的監(jiān)督者羅恩·施奈爾(Ron Schnell)表示:“就我個(gè)人而言,我認(rèn)為微軟在開(kāi)源時(shí)代的篇章還未開(kāi)始書(shū)寫。微軟還需要向開(kāi)源運(yùn)動(dòng)做更多貢獻(xiàn),才能被視作開(kāi)源運(yùn)動(dòng)的朋友。”
在采訪尾聲時(shí),施奈爾表示,所有歸宗于金錢。他表示:“開(kāi)源解決方案對(duì)于財(cái)務(wù)報(bào)表沒(méi)有太大好處。問(wèn)題在于,在云計(jì)算獲得成功導(dǎo)致Windows等桌面操作系統(tǒng)必要性的降低情況下,微軟是否仍能獲得以往的高額利潤(rùn)?”這是問(wèn)題的一方面,但云計(jì)算的發(fā)展也使得企業(yè)通過(guò)開(kāi)源軟件盈利更容易,顯然,微軟認(rèn)識(shí)到了這點(diǎn)。
多年以來(lái),人們總是容易認(rèn)為谷歌是開(kāi)源運(yùn)動(dòng)的朋友,而微軟則對(duì)自由軟件保持著距離。不過(guò)作為互聯(lián)網(wǎng)服務(wù),谷歌與微軟所處的位置有很大不同,微軟主要通過(guò)銷售軟件授權(quán)碼才取得了今天的地位。如今,微軟也正變成為一家互聯(lián)網(wǎng)公司,變得更像谷歌——不單是通過(guò)一種方式。
是的!微軟正在多起案例中向Android手機(jī)廠商收取授權(quán)費(fèi),而Android系統(tǒng)正基于Linux。這表明,微軟在軟件行業(yè)中處境仍舊復(fù)雜。盡管微軟已經(jīng)向互聯(lián)網(wǎng)實(shí)現(xiàn)戰(zhàn)略轉(zhuǎn)移,但仍是一家依賴傳統(tǒng)軟件業(yè)務(wù)的公司,并依然有心想采取措施保護(hù)傳統(tǒng)業(yè)務(wù)。不過(guò),微軟與Android陣營(yíng)之間的斗爭(zhēng)與以往不同。作為谷歌的一個(gè)項(xiàng)目,Android作為谷歌項(xiàng)目并非那么開(kāi)源。
現(xiàn)實(shí)并不是一個(gè)非黑即白的二元世界,軟件世界同樣如此,并不是每個(gè)人都意識(shí)到這一點(diǎn)。但比爾蓋茨做到,而微軟更因此受益。