I have been writing code professionally for 11 years — the past 4 years working on Over as a backend engineer. Last year we were acquired by GoDaddy and I have since been promoted to Principal Software Engineer. Previously, I co-founded Next and functioned as the Lead Developer & CTO for 6 years.
I gave a talk at the London Gophers meetup about building image filters like those found in Instagram. This talk covers what I learnt while building a reference implementation of a simple rendering engine using pure Go, with no dependencies. I cover various kinds of lookup tables, storage formats and although useful… why it’s probably a bad idea doing this in Go. There is source code available at github.Read more →
I gave a talk at the London Gophers meetup about introducing Go into an organisation that has existing systems written in different languages. This comes from years of experience working with teams that were comfortable with other languages like PHP, Ruby and Java.Read more →
If you’re writing Go then you’re probably aware that graceful shutdown was added to the http package in 1.8. The HTTP server also adds support for graceful shutdown, allowing servers to minimize downtime by shutting down only after serving all requests that are in flight. — Go 1.8 is released Similarly, If you’re using Kubernetes then I’m sure you’re aware of, and hopefully using rolling updates for your deployments.Read more →
Firebase is an incredible platform, some of their recent additions like Cloud Functions for static hosting are pretty amazing. However, I’d like to share a serious blindspot that I came across while preparing for a product launch. The intent of this post is in no way to discourage anyone from using Firebase. I love Firebase and I recommend you give it a go! This is just an important learning that I wanted to share — hopefully it can prevent you from getting stuck in the same position as me.Read more →
You might think that the built-in support for gracefully shutting down http servers is reason enough to be excited for the upcoming Go 1.8. It could also be the proposed sub-millisecond GC pauses. Heck, if you’re having refactoring issues on a Google scale then it could be the controversial addition of alias declarations. Based on my experience, working with small teams and people new to Go, Go 1.8 shipping with a default GOPATH is going to be the most groundbreaking of all new features.Read more →