Skip to content

GoSF Meetup - Building Web Services | Dependency Management | CoreOS (Jan 15th)

Photo of
Hosted By
Travis R.



7:00 Networking | Food | Drink
7:30 Tools, Tips, and Best practices
7:45 Speakers
• Talk 1: Building Web Services in Go (Richard Crowley)
• Talk 2: Dependency Management (Keith Rarick)
• Talk 3: etcd, a highly-available key/value store (Brandon Philips, CoreOS)
9:00 End

Talk 1: Building Web Services in Go (Richard Crowley)

Richard Crowley will discuss language features plus standard library and third-party packages that he uses at Betable ( to build scalable web services in Go.

He'll talk about the strengths and weaknesses of the standard net/http package along with how they added third-party packages to shore up these weaknesses. He’ll discuss JSON and its relationship with Go data structures, Go’s excellent support for reflection, and how to use it to create safe APIs.

He'll finish up by talking about logging and metric collection. (Much of what he'll cover is recently open-source as part of Tiger Tonic (

About the Speaker

Richard keeps the servers happy at Betable. He's something of a polyglot, working frequently in C, Go, Java, JavaScript, Puppet, Python, Ruby, and shell. He's the creator of the Blueprint configuration management tool, a contributor to Puppet, and previously worked at OpenDNS and Flickr. He's passionate about engineering tools and practice and thinks vi is a better religion than emacs. (@rcrowley (

Talk 2: Dependency Management (Keith Rarick)

Keith Rarick will give a brief overview of the state of dependency management tools for Go applications and then provide a detailed run-through of godep, including initial setup, collaboration, updating dependency packages, working with third party tools,and deploying to Heroku, as well as godep's general philosophy of operation – why it works the way it does.

About the Speaker

Keith Rarick works on systems, both distributed and non-.He was part of Heroku until very recently, and now enjoys a return to the crazy experimental life of an early-stage startup.

Talk 3: etcd, a highly-available key/value store (Brandon Philips, CoreOS)

Brandon Philips will talk about etcd, a highly-available key/value store, and how it was built with and can be used from Go. He'll cover the basics of running an etcd cluster and the underlying consensus algorithm called raft.

He'll also get into a practical use case for service discovery and shared configuration and wrap with how you can use etcd from your Go programs using go-etcd.

About the Speaker

Brandon Philips is helping to build modern Linux server infrastructure at CoreOS. Because of this, he was recently disowned by one of his Linux kernel friends for being "one of those weirdos on the other side of the sys calls".

About the Host/Sponsor

Pivotal Labs applies collaborative, disciplined development techniques to accelerate time to market, reduce execution risk, and increase quality for all types of businesses, from start-ups to global enterprise organizations. Pivotal’s proven practices, combined with deep technical expertise in web, mobile and Big Data application development, enable customers to achieve rapid, reliable business results. (@pivotallabs (

Other Sponsors is the maker of IronMQ, a scalable cloud-based message queue, and IronWorker, an elastic task queue/worker service and one of the first companies to use Go in production.'s services are designed for doing things asynchronously and operating at scale. (@getiron (

High Scalability is the best source for information on building bigger, faster, and more reliable websites. (@highscal (

Digital Video

Digital video of the event will be provided by Hakka Labs. (Links to the videos will be posted to the event page a few days after the event.)

875 Howard Street 5th Floor · San Francisco, CA
0 spots left