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