I am a passionate technology leader, engineer and drummer with 20+ years of working experience. Formerly, I lead the technology for Starwood Hotels' storied loyalty program, Starwood Preferred Guest (SPG) until the merger with Marriott hotels. More recently, I have been consulting for a variety of retail and small to medium businesses to further their cloud, CRM and Loyalty endeavors. My current technology focus is in Go, particularly backend APIs.
Thoughts on Logging I’ve gone through a few logging phases in my career. I logged everything. It was great, until the logs became meaningless because there were too many. I logged only errors, but in some cases that was not enough. Now I’m somewhere in the middle. I do believe in logging all errors and detailed how I do that in my last post. There are also times when it’s helpful to have some debugging logs in place.
Handling errors is really important in Go. Errors are first class citizens and there are many different approaches for handling them. Initially I started off basing my error handling almost entirely on a blog post from Rob Pike and created a carve-out from his code to meet my needs. It served me well for a long time, but found over time I wanted a way to easily get a stacktrace of the error, which led me to Dave Cheney’s https://github.
Inspiration I was inspired recently after listening to Go Time FM episode #167 and Johnny Boursiquot’s callout: “If you are out there, and I’m speaking to you listener, or watcher, if you are out there and thinking/meaning to muster up the energy or overcome the imposter syndrome to write a blog post that’s beginner, but you’re thinking “Oh man, everyone’s already written a beginner blog post on this thing, my voice doesn’t really matter I’m not going to really add anything to that” - you need to get over that.