Go 部落格
半個十年配備 Go
五年前我們發起 Go 計畫。感覺昨天才準備好最初公開版本:我們的 網站 採用令人賞心悅目的淡黃色,我們稱呼 Go 為「系統語言」,而且你必須以分號終止陳述句並撰寫 Makefile 才能建構自己的程式碼。我們完全不知道 Go 會獲得怎樣的回應。大家是否會同意我們的願景和目標?Go 是否對大家有所助益?
發布時引起了一陣轟動。Google 製作出一門新程式語言,而且每個人都急於試用。有些程式設計師不喜歡 Go 保守的功能設定,他們乍看之下會認為「沒什麼看頭」,但一小部分人看到了符合其需求的生態系統逐漸成形,同時滿足其作為軟體工程師的需要。這群人會成為 Go 社群的核心。

草地土撥鼠 插圖由 Renee French繪製
在首次推出後,我們花了一段時間才適當傳達 Go 背後的目標和設計精神。Rob Pike 在他 2012 年的論述中雄辯滔滔地闡述此事,論述標題為 Google 的 Go:軟體工程服務中的語言設計,並且在個人網誌貼文中 少即是多,成倍增加 中也用更主觀的方式論述。Andrew Gerrand 的 優雅擴展的程式碼 (投影片) 和 土撥鼠的 Go (投影片) 則提供了更深入、更技術層面的觀點說明 Go 的設計哲學。
隨著時間推移,少變多。此專案的轉捩點是 2012 年 3 月發布 Go 1,這提供了開發人員可信賴的穩定語言和標準函式庫。到了 2014 年,此專案已累積數百位核心貢獻者,環境系統有為數眾多的 函式庫和工具,而由數千位開發人員维护,更大的社群也聚集許多熱情成員(或如我們所稱的「土撥鼠」)。就我們當前度量而言,Go 社群現今的成長速度超乎我們預期。
那些土撥鼠在哪裡可以找到?他們參與世界各地不斷出現的各式 Go 活動。今年,我們已見識到好幾場專門舉辦的 Go 會議:首場 GopherCon 和 dotGo 會議分別在丹佛和巴黎舉行,此外還有 FOSDEM 的 Go DevRoom 以及在東京舉行的兩場雙年舉辦一次的 GoCon 會議。在每場活動中,來自全球各地的土撥鼠都熱切地發表他們的 Go 專案。對 Go 團隊而言,見到這麼多程式設計師分享我們的願景和熱情,讓我們感到非常滿足。

超過 1,200 位土撥鼠出席了在丹佛舉辦的 GopherCon 以及在巴黎舉辦的 dotGo。
此外,也有數十個由社群經營的 Go 使用者群組 分布在世界各地的城市。如果您尚未拜訪您當地的群組,不妨考慮一下。而且,如果您的地區沒有群組,或許您應該 建立一個?
如今,Go 已經在雲端找到自己的歸屬。Go 的出現,適逢業界正朝向雲端運算面臨劇烈變革之際,我們很興奮看到它迅速成為該項運動的重要一環。Go 的簡潔性、效率、內建並行處理原語和現代標準函式庫,使它非常適合雲端軟體開發(畢竟,這是它原本設計的目的)。重要的開源雲端專案,例如 Docker 和 Kubernetes 就是用 Go 編寫的,而 Google、CloudFlare、Canonical、Digital Ocean、GitHub、Heroku 和 Microsoft 等基礎架構公司現在也都使用 Go 來執行一些負重工作。
那麼,未來會怎麼樣?我們認為 2015 年將會是 Go 迄今為止最輝煌的一年。
除了 它的新功能和修正程式 之外,Go 1.4 也為低延遲垃圾回收機制和支援 Go 在行動裝置上執行的基礎工作。它預計於 2014 年 12 月 1 日發布。我們預期新的 GC 將在 2015 年 6 月 1 日的 Go 1.5 中提供,這會使 Go 適用於更廣泛的應用程式。我們迫不及待地想看看大家會把 Go 帶到哪裡。
另外還有更多盛會,包括 紐約的 GothamGo(11 月 15 日)、在布魯塞爾 FOSDEM 的另一個 Go DevRoom(1 月 31 日和 2 月 1 日;一起參與吧!)、班加羅爾的 GopherCon India (2 月 19 日至 21 日)、在 7 月返回丹佛舉辦的原版 GopherCon ,以及 11 月於巴黎再度舉辦的 dotGo 。
Go 團隊想要向在外的 gopher 致上感謝。讓我們共同慶祝 Go 的五週年。
為慶祝 Go 五週年, Gopher Academy 在接下來的一個月中,將會刊登一系列由傑出的 Go 使用者撰寫的文章。務必前往 其部落格 了解更多 Go 行動。