Rediscovering Go

By Mark Bates

Elevator Pitch

In 2013 I started writing Go. In 2019 I threw out everything I knew about it and started from scratch. Join me on a developer’s journey to rediscover, reconnect with, and become a better a Go developer.

Description

I 2019 I was struggling with Go. My designs were still reminiscent of my near decade in Ruby and Ruby on Rails. I was hitting major road blocks in my original architectures for projects such as Buffalo, Packr, and more. At the same time Go Modules were causing disruptions in the Go eco-system that a dependent heavy project, such as Buffalo, were (and still are) struggling to keep up with.

In the Summer of 2019 I was traveling a lot for work and speaking, hosting, and running conferences. The time I had to sit and look at a large code base and try to introduce a new feature or change was to short for the necessary context switching I needed.

It was during this time I decided I needed to re-learn Go. I needed to fully embrace its paradigms, such as low dependency count, zero-value structs, and more. I stripped down the ideas I was working on to really small projects and approached them with a fresh eyes and a richer understanding of Go that I have developed over the years.

In this talk, I will discuss that journey. I’ll take about the challenges and struggles I was faced with, then we’ll look at a few of the tools, programs, and design patterns that emerged over the last year.

You’ll laugh, you’ll cry, you’ll cringe, and you’ll never write Go the same way again.