Spring創始人Rod大叔:軟件交付的未來是編碼

18-08-28 banq
              

Spring創始人Rod大叔一直在和廠商派扳手腕,廠商派認為開發人員應該更關注業務,其他事情交給他們,這從Istio推出可以看出來,Istio認為Spring cloud里面那些服務發現、負載平衡等應該由第三方組件如Istio實現,但是Rod大叔代表的Spring派顯然不是這種觀點,所以推出Spring cloud,由開發人員通過yaml配置服務發現、配置服務器和負載平衡等,這是Rod他們理解的Devops意思,是開發人員干運維人員的事情,這次Rod大叔又發布文章,他的新產品Atomist可以把軟件交付的配置變成編碼,他認為YAML和Bash已經沒有存在意義了,應該用更強大的代碼替代。

我們為什么需要軟件API?

由于Spring,Rails,Node和Spring Boot等框架不斷發展的成就,在過去10到15年間我們編寫的應用程序代碼得到了極大的改進,我們在Kubernetes和Cloud Foundry時代的部署經驗遠離了WebSphere的恐怖世界,然而,兩者之間最重要的差距 - 我們的軟件如何交付到生產 - 并沒有跟上步伐,我們也沒有足夠的日常自動化活動。

云原生部署的興起以及傳統單體的解體,使得現在問題日益明顯,更多項目意味著更多的交付管道,帶來大量重復和難以確定的交付策略,項目擴散暴露了缺乏自動化:例如,如何以一致的方式創建項目,使項目保持最新,并隨時了解其中發生的事情。

是時候重新思考:對于軟件交付和自動化應該實行戰略調整而非只是戰術方法微調。我們相信下面三大創意可??以改善我們的交付和自動化體驗:

1. 重新思考每個代碼倉儲的每個交付管道模型,將其替換為事件中心。當我們擁有少量大型應用程序時,每個倉儲repo有一個管道是有意義的,每個應用程序都可以有一個復雜的特殊構建,但是在今天,數百甚至數千個應用程序是很常見的,這些應用程序的交付流程有很多共同之處,每個倉儲一個管道已經變成錯誤的模型,事件中心能讓團隊在一個地方表達和演進,代碼存儲庫上的活動會產生我們可以集中處理的事件。

2. 為我們的項目及其活動提供豐富的相關模型....

3. 擁抱現代編程語言的強大功能,在代碼中定義傳遞和自動化。

真正的代碼不是不自然的混合,自linux上編譯方式make文件出現以來,我們傾向于在代碼之外表達構建和交付步驟,作為程序員,就好像交付已經不是我們的工作,其實它是我們的工作,我們應該運用我們的核心技能。

每家公司都在從事軟件交付業務,對于C這樣低級語言使用簡單的構建是可以的,這時使用非代碼也就是配置是有意義的; 當表達復雜的交付流程時,YAML和Bash沒有多大意義。

由于過去沒有質疑這種方法,我們已經陷入了奇怪的狀況,在YAML中定義變量,我們有OOP和FP,也有很好的命令式編程語言,但是YAML卻不屬于這些,在我們大多數人出生之前,Bash是當時接近最前沿的技術。

我們相信這些想法對于軟件交付來說是一個非常優越的前進方式。我們希望Atomist服務能夠提供最好的體現,但這些想法比任何一項服務或產品都要大。幸運的是,有一種方法可以表達比任何一家公司或產品更大的想法:開源。

在WebSphere糟糕的舊時代,高爾夫球場開始發生重大變化,今天,開發人員經常使用筆記本電腦作為開發的開始,也可以用這種新方式開展交付工作,在筆記本電腦上,使用開源的本地軟件交付機。

今天我們宣布Atomist的下一代軟件交付方法是免費和開源的。

....

The Future of Software Delivery is Code. And It’s

[該貼被banq于2018-08-28 22:44修改過]

              

3
美女漫画大全