Go has a very powerful approach to concurrency. Not unlike other concurrency models, it can be challenging to handle errors. With Go, we utilize goroutines to handle our concurrent workloads. Take,...
Optimizing End-to-end (e2e) Test Performance
I’m a huge fan of end-to-end (e2e) tests. They give me the most confidence that my software is doing what I think it should be doing in production, but they aren’t without their faults. Let’s take ...
2023 Blogging in Review
I’m sitting here on December 31st as the final hours of 2023 come to a close, and I reflect on the past twelve months of blogging. So here we are! I had 283k visits with 330k total pageviews! T...
Adding Tests to Go Project Templates
I recently blogged about Go project templates and how you can use some boilerplate to quickly get up and running with your new Go program. It’s also a pretty common thing to write CLIs in Go, and I...
The Lack of Compensation in Open Source Software is Unsustainable
It’s 11:43pm on a Monday night. My 6-week-old son is asleep in my office so my wife can get some uninterrupted rest for the first half of the night. He’s finally asleep now, and I probably should b...
Helm Hooks Are An Anti-Pattern and Should Be Avoided
Helm has been at the heart of Kubernetes deployments for years. If you are managing any amount of Kubernetes clusters, then you have likely already installed a Helm chart in your environment. And f...
Tools and Processes I Used For Writing My Book
This past year I published my first book. While it was a rewarding experience, there were many challenges and obstacles along the way. But one thing I did in the beginning was figure out tooling so...
Creating and Using Go Project Templates
I love writing software in Go. It is by far what I’ve been using for the better part of many years now. Most of us developers (Go or otherwise) fall under one of two categories, or somewhere in bet...
How I Host, Run, and Publish Articles to My Blog
I get this question a lot, so I figured it is best to just publish this information for reference. And really for anybody that is interested in the technical details! It is a lot to dive into the w...
Using Vim as my PostgreSQL Client
One of the common tools that PostgreSQL users end up having to work with is psql. It’s a core client product that ships with postgres and for the most part it gets the job done and done well. In th...