前言

一切都在变化,没有东西是亘古不变的。 —— 赫拉克利特

在 2005 年欧洲旅行期间,Nathan 听说了一些关于新框架 Ruby On Rails 的传闻。 于是他在赶回加拿大艾伯塔省庆祝圣诞节期间,在市中心的计算机书店购入了一本《Agile Web Development with Rails》(2005年,Pragmatic Bookshelf 出版社出版),并在接下来的两年里将自己的事业从 ColdFusion 转向至了 Ruby 。

在英国的约克大学,Roger 被引荐给了经过彻底精简之后的贝尔实验室,并在那里跟包括 Go 创造者 Rob Pike 、Ken Thompson 在内的成员一起研究 UNIX 以及由同一批人发明的 Plan 9 操作系统。 Roger 对此产生了极大的兴趣,并在之后开始进行 Inferno 系统的相关工作,该系统使用了独有的 Limbo 语言,它是 Go 的一个关系密切的原型。

当 Go 在 2009 年 11 月作为开源项目对外发布的时候,Roger 立即就发现了它的潜力,他开始使用 Go 并为 Go 的标准库和生态系统做贡献。 Roger 至今仍然对 Go 的成功感到高兴,除了全职使用 Go 进行编程之外,他还运营着一个本地的 Go 见面会。

另一边,Nathan 虽然观看了 Rob Pike 发布 Go 的技术演讲,但他在 2011 年之前都没有认真地审视过这种语言。 直到一位同事高度评价了 Go 之后,Nathan 才最终在圣诞节假期通读了《The Go Programming Language Phrasebook》(2012 年 ,Addison-Wesley Professional 出版社出版)的毛边本。 在之后的数年里,Nathan 从使用 Go 编写业余项目并撰写 Go 相关的博客(nathany.com)开始,逐渐转向至组织本地的 Go 见面会(edmontongo.org)并在工作中使用 Go 。

因为工具和技术都在持续地变化和改进,所以对计算机科学世界的学习总是永无止境的。 无论你已经拥有计算机科学学位还是刚开始接触这一行,自学新技能都是非常重要的。 我们衷心希望本书可以在你学习 Go 编程语言的过程中予以帮助。