There seems to have been a lot of talk around me lately in relation to “dev boxes” and “testing on staging”. After unsuccessfully trying to convince folks of why I think this is a bad idea from both an engineering and business perspective I decided it was time to talk code. In this repository I[…]
Last week I was privileged to give a talk to the Singapore Gophers meet up held at the GrabTaxi Singapore Tech Office. The talk was titled “Dependency Injecting (and Testing)” and was inspired by this great article by Karl Seguin. In it I discuss how you can use DI to test and a simple trick to replace[…]
I found a lot of my code (particularly the tests) had code that looked like this: Then I was reading yet another great post from Karl Seguin and I noticed there was a much better (sexier) way. Thanks again Karl!
All Golang programmer’s are aware of how great “go get” is but until today I had not given much thought to how exactly it did or didn’t do. Some background; today one of my builds (in Travis CI) suddenly broke in a way that made no sense. After some quick debugging it became obvious that one of[…]
Recently, a friend joined me on one of my projects. As it was the first time we were actually coding on the same project I wanted to tell him my coding philosophy to make sure that he felt empowered, engaged and connected to the code. Then I realised that despite the fact that a lot[…]
For those of you like me who Go is not the first language you learned, you might be familiar with “Enums” or “Enumerated Types”. While Go does not have an enum per-say you can achieve the same effect with very little effort. The manual has a very good example if perhaps a little complicated, so[…]
After way too long, I finally had the itch to blog again. Firstly, sorry about the hiatus. As those of you that follow me on Linkedin know, in February I joined my very good friend Aaron at MyTeksi as a Platform Architect. From day one, it has been a wild ride. I am not sure how[…]