Go, Lint. Go! How to Build a Go Linting Rule

Several months ago, I started working on a Go linter (gomega-lint) for gomega. I’ve been using gomega at work for almost a year and love it now. I’ve formed some opinions on good practices for using gomega. But giving this kind of feedback during code reviews - it’s too late by that point.

Go 1.20: Combined Unit and Integration Code Coverage

You know that code that is tricky to unit test but easy to make an integration test for? And you track code coverage? Well, the upcoming Go 1.20 release adds support for collecting code coverage from integration tests. Go 1.20 has a new trick and can build binaries ready to collect coverage during integration tests.

Spin up a Ubuntu VM using Pulumi and libvirt

Pulumi is an Infrastructure as Code (IaC) tool that supports using Go, .Net, Python, and TypeScript/JavaScript. Libvirt is a tool for managing virtual machines (VM). Typically, teams use Pulumi with different cloud providers, but we can leverage libvirt to manage virtual machines on bare-metal servers, perfect for a homelab.