Session: Go: code that grows with grace

Friday 11.10 - 12.00
Room: Nyan Cat

One of Go's key design goals is code adaptability; that it should be easy to take a simple design and build upon it in a clean and natural way. In this talk I describe a simple "chat roulette" server that matches pairs of incoming TCP connections, and then use Go's concurrency mechanisms, interfaces, and standard library to extend it with a web interface and other features. While the function of the program changes dramatically, Go's flexibility preserves the original design as it grows.

Tags: Back end Emerging languages Hands on Web


Attendees should have a programming background. Some knowledge of Go is preferred, but not required.

Andrew GerrandAndrew Gerrand

Andrew Gerrand works on the Go Programming Language at Google Sydney. He has written dozens of articles about Go, and given many talks and workshops at conferences around the world. He is the co-author of A Tour of Go (, and is the fourth most prolific contributor to the Go project. He is passionate about software quality, and believes Go is a unique tool for building reliable software at scale. Before Google, Andrew wrote software for startups and Internet providers.