Filling a Geofence with Geohashes

The nature of my works means that I spend a decent amount of time dealing with geospatial data. Whilst there are many different ways to represent areas on the globe, geohashes are particularly fascinating. A Quick Primer on Geohashes If you're already familiar with geohashes, go ahead and skip this…

The Empathetic Engineer: Developing for Humans

Read The Empathetic Engineer: Part 1 here. TLDR; empathy is an extremely important skill for engineers of all levels. You'll write better code for yourself and others if you keep the people reading your code in mind. To stay empathetic when I write code, I have developed a set of…

Where golang got packages wrong

Preface I recently watched a fantastic talk by Rich Hickley. On the face of it, it's about Clojure's spec package, but the underlying principles immediately hit me as applicable to both language ecosystems that I've been working with in the last few years (mainly JavaScript, and now Go). Working with…