Go 將統治下一個十年
標題相當夸張是不是?
我本來打算用“規則”這個詞的,但真的認為“統治”的描述更加準確。
只有一點就是,如題的觀點是事實。
每 一天我都跟許多人談論到 Go。除了像 Google 或者 Github 這樣的地方之外,在 Go 用戶上我們可能已經有了世界上最大的數據集。我們也從各種渠道收集到很多有趣的生產環境運行時數據。外部數據中的一些主動策劃從公共資源處獲取到的,而其 他部分則是自動從招聘網站、github 資源庫、公司博客、linkedin 還有其它資源那里收集到的。這將我們引向一個有趣的問題:
這些 go 老鼠(諧音)們到底是從哪個洞里面鉆出來的?
Devops
幾乎所有這幾年出現的 devops 工具都已經被用 Go 語言改寫了。我覺得這恐怕預示著什么。通常,相對于一般的開發團隊,小公司的運維團隊收到的監管很少。只要是能工作的工具,他們一般就會去用,而不需要獲 得誰的批準。對他們來說 Go 語言工作的非常棒,這是一門靜態類型和編譯型的語言(無需安裝需要上千個依賴的運行庫),而且 Go 的運行庫也不大,也不用動不動就需要 100-300M的磁盤空間(看看 ruby、jvm 吧)。
比特幣
許多 DeferPanic 上的我們的客戶都與比特幣/虛擬貨幣有關。這并非巧合,整個生態系統的共同點是使用Go語言。最有意思的是,我們所服務的那些公司,并不像你們以為的那樣 會運行某些應用。基本上就是基于文件系統的,或者是校驗由2008年建立的一堆雜亂的服務生成的交易。例如:極少數嘗試把套利交易變成兌換。
不管你聽到過什么,比特幣都還沒有死掉。很多用例傳統上沒想到過的,但是實際上已經有了很大的成功。我們的這些客戶需要有高性能和更好的數據安全性的保證,Go 語言在這方面顯然是很好的選擇。
容器
有趣的是和那些科技人士交談后發現他們居然不知道今天所有容器技術都是 Go 寫的,不是 99%,也不是 95%-100%。
所有今天在使用的容器軟件都是 GO 寫的。
市場營銷人員應該開始用 Go 原生來替換云原生。
我 們可以強調這是有多大(的市場)?即使你不相信容器的炒作,認為這是一個龐式騙局。當你考慮到所有公司使用 Go 的人數,并且未來幾年大公司使用 Go 人數巨大。問你從世界財富五百強的首席信息官那聽說他們將要檢修他們系統,你不得不意識到這訂單很大。這不是他們看輕這件事,相反,他們也不會輕易的從中 走開,因為這是一個巨大的對時間,金錢以及過程的投資。
微服務
微服務在過去的幾年風靡一時,不少分析師忽略了它們的價值,因為他們并不是搞技術的。當你 用maven下載了半個互聯網,同時啟動要占用 800M 虛擬內存,或者當你運行一個 RoR 的應用的時候占用了 200M,這和 Go 平均 5-20M 的運行時想比真是相差巨大。這種差距可以立刻轉換到賬單上,當你公司每個月少給 25-30 美金在 AWS 上就顯而易見了。隨著這種激烈的趨勢下去,我們會看到越來越多的公司因為上述理由采用這種模式,并且你可以打賭即將迎來 Go 的時代。
投資
當談及到一些知道 Docker 的人很有趣,他們甚至會去投資它在他們并不知道這個是由一個他們從未聽過的 Go 編寫而成的之前。在某種情況下,我想大概可以認作為“細節摘要”,當你把所有內容都說出來是很瘋狂的。當然,事情也并非總是如此。
從來自 Battery 的 Adrian (也是來自 Netflix)今年在他與公司的交流中曾經數次說到 Go:
“大概四分之三的新東西是用 Go 寫的 @golang” - 十二月十四號
L 接著他又提到 “幾乎所有新的、有趣的東西都是用 Go 寫的”.
在他的行業里面他可能有更好的眼光,因為他參加過很多會議,并如此的接地氣。
來自 Mayfield 的 Robin Vasan 甚至在今年的 goper 大會上進行了一次演講
在 VC 工作,并且精通 Go 的 Jerry Chen 曾經出席大會并有良好表現。
采用
早年,C++ 曾一度被嘲諷為是無能的 C 程序員才使用的語言。后來,Java 出現了,但也沒有多大的改善。Joel早就對此很失望。究其原因是,在上世紀 90 年代后期所推行的一堆面向對象的概念,完全是在胡說八道,并且對未來有害無益(雖然當時難以預見)。摩爾定律失效了。現在,大家都用虛擬計算機做軟件開發和交付,這是一種完全不同于上世紀 90 年代的做法。不過,誰會想得到呢。事后諸葛亮還是好當的。
舊金山的工程師們對此或許會感到有些驚訝。在舊金山,有一大群的開發人員每天想著朝九晚五的上下班,回到家后就不再碰觸電腦。他們可能是形形色色的,但我想他們都有一個共同的特點,那就是他們“編碼只是為了完成任務”。他們絲毫不關心熱門的新框架,也不在乎是否使用最新的“最佳實踐”。他們唯一的心愿就是“完成任務”。
Go 在這方面很出色(去掌握這門技術吧)。它真真正正的讓開發人員做到了恰好搞定工作。
眾觀世上所有程序設計語言,沒有其它任何一門語言能夠在“完成任務”模式上有優勢。然而,對于軟件的未來,這一點卻非常重要。因為,每一家公司都不得不招收越來越多的開發人員,開發越來越復雜的系統。
Go是新的JVM
Go替代JVM和.NET成為企業級編程語言是很顯而易見的。
例如,我在舊金山演講的時候幾乎所有的Scale企業都在一點一點的遷移到Go,許多歐洲的企業也在做著同樣的事情。
另 一個我聽到比較多的比較和是Node。我發現人們嘗試用Node去比較Go的時候都有點奇怪。首先你是比較語言的框架,其次你用Javascript(差 不多和Java的發布時間一樣)和Go進行比較。在人類的歲月里,Java和Javascipt都喝醉在酒吧的某個角落,Go當時甚至還沒有從幼兒園里學 會第一個字母,但現在Go依舊能得到這混亂市場的份額。
然而,真正愚蠢的人總是提及現在使用Go的人數-這基本上是偽科學的定義。我不認為談論1900年路上車的數量是有意義的。
更精確且相關的應該是討論Go在生態系統的方面(加密貨幣,容器)和增長速率,而不是原始的下載數。
因此,讓我們來看一些謊言。
讓我們來看一些該死的謊言。
讓我們來看一些統計數據。
人們只需要看看 Node 和 Go 聚會的出席率來做出自己的判斷,從字面上看是兩倍,完全沒有競爭能力。
似乎每個人都很享受推特風暴,那么這條怎么樣?我不知道應該把 DropBox 歸屬在什么類別(除了大),但是我覺得這會給你一個得體的想法去支持 Go 在接下來的幾年里:
另外,你還認為只是谷歌和一些舊金山消息靈通的人在使用Go嘛?又是猜的。Go在中國很多人用,而且本地的百度也有一個大的用戶,他們正在開始使用Go。
顯然Go是一個有美好未來的新語言,Go無用武之地?
然而現實是這樣的:“在美國市值前20的企業有超過一半正在使用Go”
最后
如果你還沒有開始使用 Go 就說明你的組織已經落后了。在 90 年代、00 年代落后可能并不是大不了的事情,我們仍然有當時的 "IT" 概念,但是現在可是快接近 2016 了。
你不能被拋在后面,不然你的業務就會死。
這不是一個原始的資源游戲,在成本的十分之一提交軟件。我們幾次都注意到這很高的影響工作效率。不管你信不信這會相當你有十倍的程序員,Go 會讓你們團隊的效率提升十倍以上。
所有招聘來工作于基礎系統的,如果你不使用 Go,將使你組織的技術冒上風險。
Ruby 顯然已經完了。Javascript 是誤導的、python 踩上了數據科學家的高蹺。JVM 西斯君主握住你的脖子,.NET最近開源企圖想留在開源相關面。
Go 在未來,Go 是你的未來,你還有得選擇。
Go 會統治接下來的十年!
本文地址:http://www.oschina.net/translate/go-dominate-next-decade-ian-eyberg
原文地址:https://www.linkedin.com/pulse/go-dominate-next-decade-ian-eyberg