2024
Jul 9, 2024
Why Write System Design DocsSystem design documents are a critical and often overlooked part of the engineering process, helping to identify and resolve issues before they become expensive to fix. 2022
Feb 16, 2022
ULIDs and Primary KeysNot all non-sequential primary keys are created equal, the ULID format is a fantastic substitute for the typical UUIDv4 choice. 2021
Jul 30, 2021
So long, AmazonThis month was my last at Amazon. I’m sad to be leaving, but thankful for everything I’ve learnt along the way. May 19, 2021
Multi-Domain Gatsby SitesSupporting multiple sites across sub-domains with Gatsby from a single repo isn’t straight-forward. Here’s how I solved the problem for my websites. 2019
Apr 19, 2019
Stealing Fuel DataA little over a year ago, I discovered that the ACCC reports on fuel costs by publishing images. I built a pipeline to extract the data from those images. 2018
Jul 2, 2018
Rustyboy - Part 1: Welcome to Emulation StationI’ve seen a fair spread of emulators and played around with a fair few of them as well, but it wasn’t until I stumbled across an old reddit post that I seriously considered building an emulator myself. 2017
Jun 12, 2017
How we sped up our asset precompile by removing itIt seems like every time I look at our pipeline our builds are taking longer. There’s still a very large portion of time that is spent getting our code ready and onto all the production boxes. Let’s remove that. Mar 7, 2017
Clean Monkey PatchingMonkey patching in Ruby isn’t always what it seems. Sometimes you’re doing it the right way for the wrong reasons, other times you are doing it just flat out wrong. Mar 6, 2017
Include vs PrependInclude and prepend are extremely useful tools for adding and modifying logic in multiple places at once, or even just splitting a file into components.