| # Go turns three |
| 10 Nov 2012 |
| Tags: community, birthday |
| Summary: Happy 3rd birthday, Go! |
| OldURL: /go-turns-three |
| |
| Russ Cox |
| |
| ## |
| |
| The Go open source project is |
| [three years old today](http://google-opensource.blogspot.com/2009/11/hey-ho-lets-go.html). |
| |
| 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 |
| [hundreds of external contributors](https://tip.golang.org/CONTRIBUTORS), |
| who have extended and improved Go in myriad ways, |
| including writing a Windows port from scratch. |
| We added a package management system |
| [goinstall](https://groups.google.com/d/msg/golang-nuts/8JFwR3ESjjI/cy7qZzN7Lw4J), |
| which eventually became the |
| [go command](https://golang.org/cmd/go/). |
| We also added |
| [support for Go on App Engine](https://blog.golang.org/2011/07/go-for-app-engine-is-now-generally.html). |
| Over the past year we've also given [many talks](https://golang.org/doc/#talks), created an [interactive introductory tour](http://tour.golang.org/) |
| and recently we added support for [executable examples in package documentation](https://golang.org/pkg/strings/#pkg-examples). |
| |
| Perhaps the most important development in the past year |
| was the launch of the first stable version, |
| [Go 1](https://blog.golang.org/2012/03/go-version-1-is-released.html). |
| 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 |
| [language and libraries](https://golang.org/doc/go1.html) |
| 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 |
| [serving Chrome and other downloads](https://groups.google.com/d/msg/golang-nuts/BNUNbKSypE0/E4qSfpx9qI8J), |
| [scaling MySQL database at YouTube](http://code.google.com/p/vitess/), |
| and of course running the |
| [Go home page](https://golang.org/) |
| on [App Engine](https://developers.google.com/appengine/docs/go/overview). |
| Last year's |
| [Thanksgiving Doodle](https://blog.golang.org/2011/12/from-zero-to-go-launching-on-google.html) |
| and the recent |
| [Jam with Chrome](http://www.jamwithchrome.com/technology) |
| site are also served by Go programs. |
| |
| Other companies and projects are using Go too, including |
| [BBC Worldwide](http://www.quora.com/Go-programming-language/Is-Google-Go-ready-for-production-use/answer/Kunal-Anand), |
| [Canonical](http://dave.cheney.net/wp-content/uploads/2012/08/august-go-meetup.pdf), |
| [CloudFlare](http://blog.cloudflare.com/go-at-cloudflare), |
| [Heroku](https://blog.golang.org/2011/04/go-at-heroku.html), |
| [Novartis](https://plus.google.com/114945221884326152379/posts/d1SVaqkRyTL), |
| [SoundCloud](http://backstage.soundcloud.com/2012/07/go-at-soundcloud/), |
| [SmugMug](http://sorcery.smugmug.com/2012/04/06/deriving-json-types-in-go/), |
| [StatHat](https://blog.golang.org/2011/12/building-stathat-with-go.html), |
| [Tinkercad](https://tinkercad.com/about/jobs), |
| and |
| [many others](https://golang.org/wiki/GoUsers). |
| |
| Here's to many more years of productive programming in Go. |