April 21, 2026

Learn How to Learn

Everyone wants to get better at stuff. But, from my experience, not many people actually have a concrete way of doing it.

This is a simple framework for learning in a structured way, especially in a world where it's easy to let AI do the thinking for you.

February 18th, 2026

Keeping Your Software Project Maintainable

Writing great software is hard. Building systems that solve real problems is hard. So, when you're embarking on any software journey, there is a concept called conceptual complexity. Put simply, it's the idea that the more "concepts" you introduce into a system, the more complex it gets.

When you're building great software, there are a few principles that you can abide by that will make your, and your colleagues', lives easier.

February 17th, 2026

OAuth Sucks

OAuth is the biggest pile of crap and any security benefits that there might be are vastly out-matched by the constant annoyance that is using it.

What I love in my life is whenever I try and log into a website, I have to play this game where I have to figure out, "which OAuth provider did I create an account with?"

Febuary 5th, 2026

Responsibility and Agency - How to build great internal processes

At any company, you'll end up having to have jobs that "keep the lights on". This is common and to be expected. Much the same as when you own a home, someone's gotta do the dishes.

There is a common dysfunction that occurs in companies though, which doesn't usually happen at home. People end up getting an ever-growing set of responsibilities, without an equivalently growing agency to do them.

2025

December 23, 2025

Importing a database via a .bacpac file on MacOS

As a .NET developer working on MacOS, you'll likely run into a situation where you're trying to use a backed up version of your SQLServer database and do some testing. But, you'll find that the current release of VSCode's MSSQL package doesn't support .bacpac imports right now.

2024

December 29, 2024

Advanced Deck-building Guide: Fast Brewing

Have you ever had a moment where you find a commander and you think it's cool but you're not sure if there will be enough cards available to make the deck run smoothly, or you weren't sure if it will feel good to play so you've not wanted to waste time brewing up a 100-card deck?

In this guide, I'm going to show you how you can dramatically reduce the time it takes to test out a deck idea or even just a commander.

September 29, 2024

Build your first Magic: The Gathering - Commander deck

Building your first Commander deck can be both exciting and overwhelming. With thousands of cards to choose from and countless strategies to explore, it's easy to feel lost.

This guide is designed to help new players step into the world of Commander with a simple framework they can refine over time.

2023

December 10, 2023

Learning Rust

Starting out in the industry there's been one thing I've heard continually: Rust is cool, and you should learn it. So, after endless nagging by a few colleagues and the swathes of social media that pushes it, I've made the plunge.