Blog
This is a blog about software engineering, consulting, coffee and other things that I find interesting.
El Casino from Sey Coffee ⭐
July 31, 2025A Pink Bourbon from Colombia that made the best cold brew of the year—red fruit and blueberry notes that I could drink all day.
West End Blues from Tandem Roasters
July 31, 2025A Portland Maine traditional espresso that didn't match my first bag—switched to primarily espresso as I figured out milk was leaving me bloated.
I Rebuilt My Website In .Net 8
July 24, 2025A breakdown of my personal site rebuild using .NET 8, Bootstrap, and markdown-powered blogging.
Short Weekend at Grand View Lodge
July 23, 2025We had a short weekend at the Grand View Lodge in Nisswa, Minnesota. Here are some pictures from that trip.
Huckleberry & Never Coffee Roasts
July 15, 2025Two dark roasts—Blue Orchid and Boomerang—that confirmed I'm a light-to-medium roast person. Good reminder about personal preference.
How I Use AI to Save Time on .NET Projects
July 3, 2025Real-world ways I use AI tools like GitHub Copilot to speed up .NET development without sacrificing quality or my job.
Mixed Tape from Dogwood Coffee
June 23, 2025A Minneapolis roaster that's fine but not great—chocolate and corny notes couldn't justify specialty prices for the weekly rotation.
Banko Taratu from Verve
June 23, 2025An East African cold brew with blood orange and black tea notes—saved my Verve subscription after too many fruity African blends.
How to Fix a Broken .NET App You Just Inherited
June 17, 2025A practical guide for developers and consultants who need to take over and rescue a legacy .NET codebase.
Photos: May 2025
June 13, 2025A collection of my favorite photos taken in May 2025.
How To Fix Missing 'sub' Claim an ASP.NET JWT
June 12, 2025If 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.
Adding IndieAuth and IndieWeb Features to My ASP.NET Core Website
June 6, 2025How I made clintmcmahon.com IndieWeb-friendly with IndieAuth, microformats, and the IndieWeb Webring.
It's OK to ask for help
May 14, 2025So often in my career I've offered to help someone with a task and they don't take me up on it. I can't figure out why people don't take free help.
Mustefa Abakeno from Verve
May 11, 2025An East African light roast that made outstanding cold brew with pear and marmalade notes—one of the best cold brews I've made in some time.
AI Use Case: Debugging Vue + Quasar UI Code with ChatGPT
May 6, 2025I use AI in my day-to-day life as a developer and human. One way that I use AI as a developer is to understand code bases that I'm not familiar with.
Photos: April 2025
May 2, 2025I did not take very many photos in April. But here are the best of the ones I did take.
Call your dad
April 25, 2025Today is my dad's birthday. This morning Siri put a prompt on my homescreen to tell me to call him today. That's the AI I want in my life.
Montes De Oro from Verve ⭐
April 22, 2025A Costa Rican with green apple, plum, and butterscotch notes—earned five stars even when espresso ran thin. Might be my favorite Verve coffee.
What to write on LinkedIn
April 17, 2025I've been on LinkedIn from the beginning but I still have no idea what I'm suppose to write on the platform.
Photos: Southern California Spring Break
April 14, 2025We just returned from our spring break in Southern California. Here are a collection of my favorite photos from the trip.