Blog
I write about the tech I'm building, the coffee I'm drinking, and the photos I take along the way. Sometimes it's code, sometimes it's travel, and sometimes it's just whatever's been on my mind.
Nicaragua from Minimum Wage Tim
Solid, consistent South American beans—sometimes the best compliment is reliability without surprises.
October 01, 2025Infusu from Crema
A Southern Italy dark roast that was too dark for pour over but made excellent lattes and cortados with full rich chocolatey notes.
September 30, 2025The Principles of Being a Software Architect
A direct, professional breakdown of what it takes to be a trusted software architect in high-stakes environments.
September 29, 2025Code Review Your Own Code
LLMs speed us up, but they don’t replace the basics. Always open a PR and review your own code, even if the bulk of it came from an agent.
September 25, 2025Five Watt Coffee Cortado
A cortado that taught me more about barista interactions than espresso extraction—sometimes the people-watching is the real brew.
September 23, 2025MPLS Coffee is now MN Coffee
This month I'm releasing a big set of updates to MPLS Coffee. The biggest is a facelift and a name change from MPLS Coffee to MN Coffee.
September 02, 2025Early mistakes in Big Little Cities
We just finished our second month of Big Little Cities. As it was successful, we also had some mishaps. This blog post is about what we did wrong along the way.
August 14, 2025El Casino from Sey Coffee ⭐
A Pink Bourbon from Colombia that made the best cold brew of the year—red fruit and blueberry notes that I could drink all day.
July 31, 2025West End Blues from Tandem Roasters
A Portland Maine traditional espresso that didn't match my first bag—switched to primarily espresso as I figured out milk was leaving me bloated.
July 31, 2025I Rebuilt My Website In .Net 8
A breakdown of my personal site rebuild using .NET 8, Bootstrap, and markdown-powered blogging.
July 24, 2025Short Weekend at Grand View Lodge
We had a short weekend at the Grand View Lodge in Nisswa, Minnesota. Here are some pictures from that trip.
July 23, 2025Huckleberry & Never Coffee Roasts
Two dark roasts—Blue Orchid and Boomerang—that confirmed I'm a light-to-medium roast person. Good reminder about personal preference.
July 15, 2025How I Use AI to Save Time on .NET Projects
Real-world ways I use AI tools like GitHub Copilot to speed up .NET development without sacrificing quality or my job.
July 03, 2025Mixed Tape from Dogwood Coffee
A Minneapolis roaster that's fine but not great—chocolate and corny notes couldn't justify specialty prices for the weekly rotation.
June 23, 2025Banko Taratu from Verve
An East African cold brew with blood orange and black tea notes—saved my Verve subscription after too many fruity African blends.
June 23, 2025How to Fix a Broken .NET App You Just Inherited
A practical guide for developers and consultants who need to take over and rescue a legacy .NET codebase.
June 17, 2025How To Fix Missing 'sub' Claim an ASP.NET JWT
If you're using Azure AD B2C and can't find the 'sub' claim in your Web API, ASP.NET Core's default claim mapping is likely the culprit. Here's how to work with JWT claims directly.
June 12, 2025