Jim在文章中表示,在他六年微軟職業(yè)生涯的起初,他花了8個(gè)月的時(shí)間,努力將微軟支持下的IronPython發(fā)布為一個(gè)開源項(xiàng)目。他寫到:
……最后通過的那個(gè)時(shí)候,正好是我在年度Python大會(huì)上發(fā)言的前一天晚上——一點(diǎn)準(zhǔn)備都沒有。我很高興地看到Python社區(qū)很樂意接受IronPython……
IronPython的第一個(gè)版本明顯有很多問題。它使用微軟單方面的“開源”協(xié)議(譯注:即MS-PL),但沒有得到社區(qū)的信任。在接下里的幾年里這個(gè)協(xié)議通過了OSI認(rèn)證,最后IronPython轉(zhuǎn)向了更著名的Apache開源協(xié)議。第一個(gè)版本同樣也有許多重大的技術(shù)漏洞,例如垃圾回收機(jī)制無法處理動(dòng)態(tài)生成的代碼,這會(huì)引起嚴(yán)重的內(nèi)存泄漏。這個(gè)問題通過.NET 2.0中強(qiáng)大的DynamicMethod得以解決。幾年來,我們一直在穩(wěn)步地解決技術(shù)及社區(qū)接受程度方面的問題。
同時(shí),Jim認(rèn)為他最為得意的作品是“動(dòng)態(tài)語言運(yùn)行時(shí)(Dynamic Language Runtime,DLR)”:
對(duì)我來說,工作的巔峰則是創(chuàng)建出了動(dòng)態(tài)語言運(yùn)行時(shí),它包含了大量我們?cè)?NET平臺(tái)上開發(fā)IronPython時(shí)所得到的深度思考。最酷的是,我們通過引入了一個(gè)兼容層,讓不同的語言能夠在.NET平臺(tái)上進(jìn)行互操作。我喜歡能夠在IronRuby里調(diào)用我鐘愛的Python類庫(kù)的感覺。而最令人高興的事情則是為C#語言添加了dynamic關(guān)鍵字。我對(duì)動(dòng)態(tài)和靜態(tài)類型長(zhǎng)期以來的爭(zhēng)論持中立態(tài)度,而在C#豐富的靜態(tài)系統(tǒng)中有機(jī)會(huì)使用動(dòng)態(tài)類型的功能實(shí)在是太棒了。至少,我想我永遠(yuǎn)不會(huì)忘記在討論叫做“動(dòng)態(tài)”的靜態(tài)類型時(shí)所獲得的震撼。
不過,微軟決定終止對(duì)IronPython的投資還是成為了Jim離開微軟的導(dǎo)火索:
……可能你們大都知道,我已經(jīng)有段時(shí)間沒有將主要精力放在IronPython上了,不過這一決定還是讓我對(duì)工作進(jìn)行了反思,我認(rèn)為是時(shí)候探索新的職業(yè)道路了……我對(duì)這里大量?jī)?yōu)秀的人員及產(chǎn)品表示尊敬。我已經(jīng)愛上C#語言的優(yōu)雅,可能需要承受一些編寫Java代碼時(shí)的痛苦,從微軟Office精心雕琢的UI切換到Google Docs時(shí)可能也會(huì)遭受些挫折。不管怎么說,我會(huì)珍惜從優(yōu)秀的人們那里所學(xué)到的東西。
Jim表示他即將加入谷歌,并談了一些未來的工作:
能夠加入谷歌我感到很興奮。我喜歡與一些天才的小團(tuán)隊(duì)一起工作,并不斷地受到用戶的反饋與驅(qū)動(dòng)。我喜歡和開源代碼及社區(qū)保持良好的關(guān)系,我也認(rèn)為未來是屬于云和Web的。雖然在微軟也能做到這些,IronPython便是個(gè)良好的證明,但對(duì)此我總是感覺格格不入,需要花費(fèi)更多代價(jià)。我很高興能夠加入一個(gè)與我的直覺合拍的地方,并展現(xiàn)出這些做法的力量。我相信在不斷地反饋與改進(jìn)之后Google Docs會(huì)有成長(zhǎng),我也會(huì)愛上它。
由于新雇主的關(guān)系,我會(huì)在Java方面的虛擬機(jī)世界里投入更多精力。我確信C#已經(jīng)成長(zhǎng)為一門比Java更好的語言,.NET也有一些很酷的特性是JVM所不存在的,但我也在Java世界里發(fā)現(xiàn)了一些偉大的事物,如HotSpot的適應(yīng)性編譯技術(shù),以及強(qiáng)大的社區(qū)給這一平臺(tái)帶來的良好價(jià)值。我認(rèn)為雙方都有和明顯的優(yōu)勢(shì)。同時(shí),我也喜歡Google設(shè)置的“主流語言”標(biāo)準(zhǔn):Python、JavaScript,Java和C++,我找不到反對(duì)它的理由——至少我可以考慮將Python當(dāng)作主要的語言!
最后,Jim表示他將退出IronPython項(xiàng)目。目前IronPython已經(jīng)有了新的組織者,他們是Miguel de Icaza、Michael Foord、Jeff Hardy與Jimmy Schementi,其中Miguel de Icaza和Jimmy Schement同時(shí)也會(huì)負(fù)責(zé)IronRuby項(xiàng)目的協(xié)調(diào)工作。