A GIF decoder: an exercise in Go interfaces
At the Google I/O conference in San Francisco on May 10, 2011, we announced that the Go language is now available on Google App Engine. Go is the first language to be made available on App Engine that...
View ArticleSpotlight on external Go libraries
While the Go authors have been working hard at improving Go's standard library, the greater community has created a growing ecosystem of external libraries. In this post we look at some popular Go...
View ArticleProfiling Go Programs
At Scala Days 2011 a few weeks ago, Robert Hundt presented a paper titled “Loop Recognition in C++/Java/Go/Scala.” The paper implemented a specific loop finding algorithm, such as you might use in a...
View Article"First Class Functions in Go" and new Go course notes
We would like to announce some new and revised Go learning materials.Programmers new to Go are often surprised by its support for function types, functions as values, and closures. The First Class...
View ArticleError handling and Go
If you have written any Go code you have probably encountered the built-in error type. Go code uses error values to indicate an abnormal state. For example, the os.Open function returns a non-nil error...
View ArticleGo for App Engine is now generally available
The Go and App Engine teams are excited to announce that the Go runtime for App Engine is now generally available. This means you can take that Go app you've been working on (or meaning to work on) and...
View ArticleTwo Go Talks: "Lexical Scanning in Go" and "Cuddle: an App Engine Demo"
On Tuesday night Rob Pike and Andrew Gerrand each presented at the Sydney Google Technology User Group.Rob's talk, "Lexical Scanning in Go", discusses the design of a particularly interesting and...
View ArticleThe Laws of Reflection
Reflection in computing is the ability of a program to examine its own structure, particularly through types; it's a form of metaprogramming. It's also a great source of confusion. In this article we...
View ArticleThe Go image package
The image and image/color packages define a number of types: color.Color and color.Model describe colors, image.Point and image.Rectangle describe basic 2-D geometry, and image.Image brings the two...
View ArticleThe Go image/draw package
Package image/draw defines only one operation: drawing a source image onto a destination image, through an optional mask image. This one operation is surprisingly versatile and can perform a number of...
View ArticleLearn Go from your browser
We are excited to announce A Tour of Go, a guided tour of the Go programming language you can run from your browser.The tour is hands-on, demonstrating the language through code samples that you can...
View ArticleA preview of Go version 1
We want to be able to provide a stable base for people using Go. People should be able to write Go programs and expect that they will continue to compile and run without change, on a timescale of...
View ArticleGo App Engine SDK 1.5.5 released
Today we released version 1.5.5 the Go App Engine SDK. You can download it from the App Engine downloads page.This release includes changes and improvements to the App Engine APIs and brings the...
View ArticleDebugging Go programs with the GNU Debugger
Last year we reported that Go's gc/ld toolchain produces DWARFv3 debugging information that can be read by the GNU Debugger (GDB). Since then, work has continued steadily on improving support for...
View ArticleWriting scalable App Engine applications
Back in May, we announced the Go runtime for App Engine. Since then, we've opened it up for everyone to use, added many new APIs, and improved performance. We have been thrilled by all the interesting...
View ArticleThe Go Programming Language turns two
Two years ago a small team at Google went public with their fledgling project - the Go Programming Language. They presented a language spec, two compilers, a modest standard library, some novel tools,...
View ArticleFrom zero to Go: launching on the Google homepage in 24 hours
This article was written by Reinaldo Aguiar, a software engineer from the Search team at Google. He shares his experience developing his first Go program and launching it to an audience of millions -...
View ArticleBuilding StatHat with Go
My name is Patrick Crosby and I'm the founder of a company called Numerotron. We recently released StatHat. This post is about why we chose to develop StatHat in Go, including details about how we are...
View ArticleGetting to know the Go community
Over the past couple of years Go has attracted a lot of users and contributors, and I've had a great time meeting and talking with many of you. However, for every Gopher I know there are dozens I know...
View ArticleGo version 1 is released
Today marks a major milestone in the development of the Go programming language. We're announcing Go version 1, or Go 1 for short, which defines a language and a set of core libraries to provide a...
View Article