| Two recent Go talks |
| 2 Jan 2013 |
| Tags: talk, video, ethos |
| |
| Andrew Gerrand |
| |
| * Introduction |
| |
| Late last year I wrote a couple of Go talks and presented them at [[http://thestrangeloop.com/][Strange Loop]], [[http://oredev.com][Øredev]], and various other venues. The talks are designed to give insight into the practice of Go programming, each describing the construction of a real program and demonstrating the power and depth of the Go language and its libraries and tools. |
| |
| The following videos are, in my opinion, the best recordings of these talks. |
| |
| * Go: a simple programming environment |
| |
| Go is a general-purpose language that bridges the gap between efficient statically typed languages and productive dynamic language. But it’s not just the language that makes Go special – Go has broad and consistent standard libraries and powerful but simple tools. |
| |
| This talk gives an introduction to Go, followed by a tour of some real programs that demonstrate the power, scope, and simplicity of the Go programming environment. |
| |
| .iframe //player.vimeo.com/video/53221558?badge=0 281 500 |
| |
| See the [[http://talks.golang.org/2012/simple.slide][slide deck]] (use the left and right arrows to navigate). |
| |
| * Go: code that grows with grace |
| |
| 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. |
| |
| .iframe //player.vimeo.com/video/53221560?badge=0 281 500 |
| |
| See the [[http://talks.golang.org/2012/chat.slide][slide deck]] (use the left and right arrows to navigate). |