A weekend spent cleaning house

I spent a weekend cleaning up a personal project, and learned more about JavaScript in the process.

  Apr 28, 2026 ·  7 min

Using null conditional and null coalescing operators for assignment in C#

The null conditional operator just got an upgrade.. we can do assignments with it now! Let’s see it in action.

  Dec 3, 2025 ·  4 min

Using Extension Members in C# 14

Extension members take extension methods to the next level. Let’s see how to use this new C# 14 feature.

  Dec 2, 2025 (rev. Dec 3, 2025) ·  7 min

A comparison of DateTime to DateTimeOffset

Should you use DateTime or DateTimeOffset? Well, it depends…

  Sep 6, 2025 (rev. Oct 30, 2025) ·  5 min

WebView2, a browser for WinForms in .NET 5

In .NET 5, WinForms got a WebView2 control for displaying web pages.. even ones we create on-the-fly while the app’s running. Let’s kick the tires.

  Jan 17, 2025 (rev. Oct 11, 2025) ·  6 min

TaskDialog, a new message box for WinForms in .NET 5

In .NET 5, WinForms got a major upgrade to the MessageBox called TaskDialog. It’s way more flexible and powerful - let’s check it out!

  Dec 31, 2024 (rev. Oct 11, 2025) ·  6 min

Selecting multiple directories with the FolderBrowserDialog in .NET 9

One of the smaller updates to make it into .NET 9 for WinForms was allowing multi-selection in the FolderBrowserDialog. Let’s see how.

  Dec 19, 2024 (rev. Oct 11, 2025) ·  2 min

How to Use GetStockIcon for WinForms in .NET 8

Buried deep in the list of .NET 8 improvements for WinForms is the GetStockIcon method. It gives us a way to access stock Windows icons at runtime for the OS the app is running on. Let’s check it out.

  Dec 18, 2024 (rev. Oct 11, 2025) ·  5 min

Using Raw String Literals in C# 11 / .NET 7

C# 11 added raw string literals, not a life-altering new feature, but they could be useful in the right circumstances. Let’s see how to use them.

  Dec 14, 2024 (rev. Oct 11, 2025) ·  5 min

Using Primary Constructors with Classes and Structs in C# 12 / .NET 8

As part of C# 12, we got a new feature called primary constructors. Let’s see how they work and what we can do with them.

  Dec 13, 2024 (rev. Oct 11, 2025) ·  5 min