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.

Troubleshooting outdated WooCommerce Subscription plug in

How I migrated from a very old WooCommerce Subscription plug in back down to the previous versions and back up again.

December 11, 2024

San Juan from Verve

A Peruvian single origin with fudge notes—a sweet morning treat that Katie loved and could have easily been four stars.

December 07, 2024

Kiambu from S.K. Coffee

A Kenyan single origin that the barista called a banger—he was right. Powerhouse coffee that earned five stars for Thanksgiving.

November 24, 2024

MPLS Coffee is available for iOS and Android

MPLS Coffee is now available for both iOS and Android to help everyone find top coffee shops in Minneapolis and Saint Paul.

November 14, 2024

Chelchele from Verve

My first encounter with Ethiopian beans taught me that small beans need different grind settings—a one-star result that started a year-long learning curve.

October 16, 2024

Migrating Umbraco sites has become easy

I've completed so many Umbraco migrations over the past year that they've become incredibly easy to execute. Now that I've been doing them for a while, I've created a template that I follow to make the process almost automatic.

October 08, 2024

Baide from Verve

A Honduran single origin from Verve that was really good and easy to brew in the Chemex—tasted more dark than the light roast suggested.

October 08, 2024

Developing a Minneapolis Coffee Shop Locator

October 07, 2024

Wahgi Valley from S.K. Coffee

My first bag from S.K. Coffee—a Papua New Guinea single origin that delivered solid three-star territory.

October 01, 2024

Photos: A walk around Gold Medal Park

Earlier this month I had a few minutes to spare downtown so I decided to take a walk around Gold Medal Park.

September 21, 2024

What's the difference between 401 and 403 response codes

There's a small but significant difference between 401 and 403 response codes. Both are related to authentication and authorization.

September 19, 2024

Kerehaklu from Verve

An Indian single origin from Verve that kicked off my coffee journal—solid but unremarkable, a fine way to begin tracking home brews.

September 17, 2024

Warm Septembers

The query, visualization and data set below is for the average Minneapolis temperature (combination of high and low temps) for September from the beginning of records until today (2024).

September 11, 2024

How to have effective stand-up meetings to maximize productivity

Stand-up meetings are often mismanaged (or not managed at all) and therefore end up wasting time and killing productivity. If stand ups go too long and drawn out, people will stop paying attention.

September 04, 2024

First real heat of the year

There's a heat dome forecast to settle into the upper Midwest tomorrow that will hang around for the next week. Temperatures are expected to be 85F degrees and higher with lows dipping only into the 70s at night. This will be the warmest the summer of 2024 has been so far.

July 25, 2024

Quickbooks Payment API

Today I learned how the Quickbooks Payment API system works from the standpoint of the C# Quickbooks API client. The architecture or pattern used to process credit cards is known as Tokenization.

July 22, 2024

How to execute multiple SQL Server views in C#

This blog post shows how to return data from multiple SQL Server views in a single database trip with C# WebAPI.

July 18, 2024

How to reverse engineer a database with Entity Framework Core

Here are the steps to reverse engineer or scaffold your SQL Server database into C# models.

July 15, 2024

Taking meetings from the sidewalk

Today I biked with my son to his summer day camp and instead of rushing into an office to join a meeting after dropping him off, I opened Zoom on my phone and joined my regularly scheduled morning meeting.

July 11, 2024

How to create a custom bound OData function

Create a custom OData function. Specifically a bound function which is a function that is associated with a specific entity type or entity set.

June 06, 2024