Go turns three
10 Nov 2012
Tags: community, birthday

Russ Cox

* Introduction

The Go open source project is
[[http://google-opensource.blogspot.com/2009/11/hey-ho-lets-go.html][three years old today]].

It's great to look at how far Go has come in those three years.
When we launched, Go was an idea backed by two implementations that worked on Linux and OS X.
The syntax, semantics, and libraries changed regularly as we reacted to feedback from users
and experience with the language.

Since the open source launch,
we've been joined by
[[https://tip.golang.org/CONTRIBUTORS][hundreds of external contributors]],
who have extended and improved Go in myriad ways,
including writing a Windows port from scratch.
We added a package management system
[[https://groups.google.com/d/msg/golang-nuts/8JFwR3ESjjI/cy7qZzN7Lw4J][goinstall]],
which eventually became the
[[https://golang.org/cmd/go/][go command]].
We also added
[[https://blog.golang.org/2011/07/go-for-app-engine-is-now-generally.html][support for Go on App Engine]].
Over the past year we've also given [[https://golang.org/doc/#talks][many talks]], created an [[http://tour.golang.org/][interactive introductory tour]]
and recently we added support for [[https://golang.org/pkg/strings/#pkg-examples][executable examples in package documentation]].

Perhaps the most important development in the past year
was the launch of the first stable version,
[[https://blog.golang.org/2012/03/go-version-1-is-released.html][Go 1]].
People who write Go 1 programs can now be confident that their programs will
continue to compile and run without change, in many environments,
on a time scale of years.
As part of the Go 1 launch we spent months cleaning up the
[[https://golang.org/doc/go1.html][language and libraries]]
to make it something that will age well.

We're working now toward the release of Go 1.1 in 2013. There will be some
new functionality, but that release will focus primarily on making Go perform
even better than it does today.

We're especially happy about the community that has grown around Go:
the mailing list and IRC channels seem like they are overflowing with discussion,
and a handful of Go books were published this year. The community is thriving.
Use of Go in production environments has also taken off, especially since Go 1.

We use Go at Google in a variety of ways, many of them invisible to the outside world.
A few visible ones include
[[https://groups.google.com/d/msg/golang-nuts/BNUNbKSypE0/E4qSfpx9qI8J][serving Chrome and other downloads]],
[[http://code.google.com/p/vitess/][scaling MySQL database at YouTube]],
and of course running the
[[https://golang.org/][Go home page]]
on [[https://developers.google.com/appengine/docs/go/overview][App Engine]].
Last year's
[[https://blog.golang.org/2011/12/from-zero-to-go-launching-on-google.html][Thanksgiving Doodle]]
and the recent
[[http://www.jamwithchrome.com/technology][Jam with Chrome]]
site are also served by Go programs.

Other companies and projects are using Go too, including
[[http://www.quora.com/Go-programming-language/Is-Google-Go-ready-for-production-use/answer/Kunal-Anand][BBC Worldwide]],
[[http://dave.cheney.net/wp-content/uploads/2012/08/august-go-meetup.pdf][Canonical]],
[[http://blog.cloudflare.com/go-at-cloudflare][CloudFlare]],
[[https://blog.golang.org/2011/04/go-at-heroku.html][Heroku]],
[[https://plus.google.com/114945221884326152379/posts/d1SVaqkRyTL][Novartis]],
[[http://backstage.soundcloud.com/2012/07/go-at-soundcloud/][SoundCloud]],
[[http://sorcery.smugmug.com/2012/04/06/deriving-json-types-in-go/][SmugMug]],
[[https://blog.golang.org/2011/12/building-stathat-with-go.html][StatHat]],
[[https://tinkercad.com/about/jobs][Tinkercad]],
and
[[https://golang.org/wiki/GoUsers][many others]].

Here's to many more years of productive programming in Go.
