前幾天聽了一期捕蛇者說的節(jié)目,邀請的嘉賓是Python core developer答恶,聊的主題是開源规阀。
節(jié)目講了目前的Python開源社區(qū)是怎么貢獻(xiàn)代碼,出乎意料,其實Python沒有嚴(yán)格意義上的全職開發(fā)者鸽扁,嘉賓也是華為公司的員工蒜绽,利用的是業(yè)余時間貢獻(xiàn)代碼,歐美的開發(fā)者稍微好點(diǎn)桶现,公司會劃出一些工作時間用于Python開發(fā)躲雅,但是也沒有全職開發(fā),總結(jié)下來就是靠愛發(fā)電骡和。
因為是一個比較松散的組織相赁,好處是沒有組織或者公司會強(qiáng)力控制或者影響Python的發(fā)展, 但是缺點(diǎn)是全靠開發(fā)者的興趣來貢獻(xiàn)代碼慰于,一些重要問題可能長時間沒有人解決钮科。
節(jié)目中舉了個例子,就是Python的內(nèi)存分析婆赠,目前的問題是沒有好的分析工具绵脯,包括開源和商業(yè)的,然后Python本身也沒有提供良好的接口讓外部對其做分析页藻。長期下來桨嫁,因為沒有好的內(nèi)存分析工具,限制了生產(chǎn)的使用份帐,反過來由于沒有大量使用案例璃吧,無法提供足夠的問題讓開發(fā)者來學(xué)習(xí)和解決問題,也無法提供足夠的市場需求來催生商業(yè)化的解決方案废境。
接下來畜挨,主持人和嘉賓提到了另一種開源形式,就是商業(yè)化的開源噩凹,比如Gradle/Java巴元。Java在早期剛推出時性能方面也是個渣渣,但是得益Sun(后來是Oracle)的支持驮宴,現(xiàn)在已經(jīng)非常好了逮刨。Gradle本身也是開源的,Gradle公司提供了一個Gradle Enterprise的產(chǎn)品賺錢堵泽,使用后修己,Gradle編譯的內(nèi)容會生成一個web頁面,可以很方便看到build哪里出了問題迎罗,比看命令行輸出方便多了睬愤。
在聽節(jié)目之前,我一直以為開源只有一種模式纹安,商業(yè)化的開源我認(rèn)為不純粹尤辱,是假開源砂豌。
聽了節(jié)目后,我去查了一下Spring的相關(guān)資料光督。其實Spring也是走的商業(yè)化開源路線阳距,Spring的背后是Pivotal公司支持的,最早期的開發(fā)者是Rod Johnson结借,是澳大利亞的計算機(jī)專家娄涩,大概的時間線如下:
- 2002,Rod Johnson寫了Spring的第一個版本映跟,然后創(chuàng)辦了Spring公司,這時候Spring的員工就是Spring的開發(fā)者扬虚,全部是全職努隙,商業(yè)模式是提供咨詢,和出售Java服務(wù)開發(fā)的商業(yè)軟件
- 2009辜昵,VMWare花了4.2億收購Spring
- 2013荸镊,VMWare的母公司EMC/通用/VMWare本身,一起創(chuàng)立了Pivotal公司堪置,把Spring轉(zhuǎn)到Pivotal躬存,一起轉(zhuǎn)過去的還有RabbitMQ,Redis等其他開源軟件
- 2018舀锨,Pivotal上市岭洲,IPO融資5.55億
- 2019,VMWare跟Pivotal合并
現(xiàn)在去Spring的官網(wǎng)坎匿,https://spring.io盾剩,到頁面底部,也可以看到VMWare商標(biāo)替蔬。
從開發(fā)角度看告私,Spring一開始的時候只是一個依賴注入框架,經(jīng)過了18年的演進(jìn)承桥,后面又加入了Spring MVC驻粟,并且進(jìn)一步推出免xml配置的Spring Boot,這幾年又推出了Spring Cloud凶异,其中Spring MVC/Spring Boot基本上已經(jīng)成為了Java生態(tài)中Web/服務(wù)開發(fā)的標(biāo)準(zhǔn)蜀撑,Spring Cloud也是使用最廣泛的微服務(wù)框架,從技術(shù)角度看唠帝,Spring是非常成功的屯掖。從商業(yè)角度看,Rod Johnson和其他創(chuàng)始人通過上市也獲得了巨大的財務(wù)回報襟衰,Spring的雇員贴铜,也是Spring的貢獻(xiàn)者,也能領(lǐng)到工資,或許也能通過期權(quán)小發(fā)一筆绍坝,避免了用愛發(fā)電餓肚子的窘境徘意。
參考: