Blog

Here is a collection of articles that I have written about software development, software testing, DevOps, and developer education.

When you’re writing Dockerfiles using build arguments (which you should) it’s important to keep their scope in mind. Otherwise, you’ll get very frustrated (more than likely).

Keeping images small is a key Docker best practices. But how do you do that when you need to install packages for your application to work? One way is to clean out package manager caches. In this short tutorial, I'm going to show you how to do that with Debian and Alpine Linux base images.

As software designers and developers, how often do we think about — or even put ourselves in the position of — the users whom we're creating software for? How often have we had to use a poorly designed software (regardless of whether it was a native or web-based app or API)?

Building web apps in Go is extremely rewarding. However, as Go’s a compiled language, to see changes, you need to restart the app. Needless to say that's quite tedious! With live reloading, it doesn't need to be.

Restricting HTTP request methods, when working with net/http prior to Go 1.22 was a little complicated. However, that’s all changed. Now, it’s pretty trivial. In this short tutorial, I’ll show you the new approach.

Restricting HTTP request methods, when working with net/http prior to Go 1.22 was a little complicated. However, that’s all changed. Now, it’s pretty trivial. In this short tutorial, I’ll show you the new approach.

What is go mod tidy and why you would use it? In this short tutorial you’ll get a brief introduction to what it is and see the essentials of how to use it.

Recently, I started debugging Go code using Visual Studio Code. Some minor hiccups aside, it was pretty trivial to get up and going. This is the short version of what you need to do to get started.

Recently, I deployed a Go-powered app backed by an SQLite database on Fly.io for the first time. Here's the process that I went through, along with some of the issues that I encountered along the way.

Want to know how to deploy a PHP app to production (or any other remote environment)? In this tutorial, I'll show you all the steps involved, and provide background information along the way, so you can build on what you’ll learn.