Blog
Thoughts on software engineering, developer tooling, and building for the web.
PINNED

Maybe Love Is the Now
I used to think love was the time you give someone. Then I started wondering whether time is even the thing we actually hand over.
The Outbox and Inbox Pattern in .NET 10 with EF Core and PostgreSQL
Saving data and publishing an event are two separate writes, and sooner or later one of them fails. Here is how the outbox and inbox patterns fix that with EF Core and PostgreSQL.
Attention Is All You Need
AI gives clear answers to clear prompts. Life works the same way, and Jesus talked about asking long before any computer did.
After Amen, Move
Prayer can give us courage, but the future we want still asks us to participate.
Observability 101: Stop Debugging in the Dark
What observability actually means, and how traces, metrics and logs fit together. Part one of two — the concepts before the instrumentation.
The Crucial Role of English Proficiency in Software Development
Explaining OOP to a colleague taught me that the hard part often is not the concept. It is the language you have to carry it in.
Code Smart, Not Fast: Avoiding Premature Optimization
The mistake that keeps derailing projects: optimising code before you know what is slow, and paying for it in clarity.
Adding Entity Framework Core and SQLite
Adding a real data source to a Minimal API — wiring up EF Core with SQLite, from DbContext through to dependency injection.
How to send an email with ASP.NET Core Minimal API and MailKit
Sending email from an ASP.NET Core Minimal API with MailKit, built from scratch rather than pasted from a snippet.
Getting started with ASP.NET Core 7 Minimal APIs
A beginner-friendly introduction to Minimal APIs in ASP.NET Core 7 — explained, for once, through cooking.