LAB: LEARN HOW TO BUILD A CHAT SERVER GO!

Welcome to our first hands-on lab!  Following up on our talk about concurrency, let's put our knowledge to use by learning how to build a chat server in Go.  We'll break up into teams of ~6 or so, with a teaching assistant available at each table to help guide you through the curriculum.   

You'll learn about how to create a TCP socket in Go, how to use channels to multiplex the chat connections, and finally:  chat away with your table mates 1990s Unix talk style!

Bring a laptop and a Go environment (We'll send out a link with instructions and a Vagrant setup). Arrive a little early, and we can help get you set up!

Level of Go experience required:  basic.  This requires some basic Go experience, but not too much.   You should know Go basics: e.g., the basic types, structs, and control flow structures.   Other programming language experience and concepts (such as networking, etc) will be helpful.    A good introduction to the basics of Go for people familiar with other programming language is available at: https://tour.golang.org.   If you can get through this tour, you will be well-prepared for this meetup!

Please make sure you attend our Apr 28th meetup "Concurrency In Go" for a good background on concurrency primitives in Go.  We'll also send out some materials beforehand. 

PLEASE HELP:  We need teaching assistants! If you have some Go experience and want to help out by acting as a Teaching Assistant for a table, please reach out to us [masked] or send a message here.