All Articles

Learning to Succeed Through 96 Failures

I have no idea how many different hobbyist software projects I’ve started and abandoned over the course of my life. Let’s just take an average guess and say I’ve worked on 3 side projects each year since 1987 when I started programming for fun. That’d put the number at 96 […]

Building Text-Based Games with Compromise NLP

In this article I’ll walk you through using the Compromise NLP JavaScript library to interpret player input in text-based adventure games. Interactive Fiction In text-based games, also known as Interactive Fiction or IF, the game describes a room to the player who then types in a command and the game […]

A Love Letter to .NET

With Microsoft’s official release of .NET Core 3 today, I want to give you my perspective on .NET and tell you how the platform continues to innovate solutions to modern problems. I’ve been using .NET since beta 2 of the framework back in 2001 and have seen a lot of change over the […]

Discriminated Unions in C# using OneOf

Ever wish you could act on different types of variables — effectively switching by object type and taking different action depending on which class is present? Discriminated Unions from functional programming languages offer an answer to this. In this article I explore the good and bad of Discriminated Unions in C# and […]

How TypeScript squashed all known bugs

You know that application that keeps you up at night hoping you won’t have to change it? It seems like we all have one. Mine was in JavaScript. It was a single page application made with just jQuery and JavaScript and it was the most brittle thing I’ve ever worked with. […]

Safe .NET Feature Flags with FeatureToggle

Yesterday I wrote on Feature Flags in a largely language-neutral overview article. Today I want to discuss my library of choice for Feature Flags in .NET applications: FeatureToggle by Jason Roberts. Feature Toggle is a very small and dedicated library dedicated to a variety of flexible feature toggle variations. In Feature […]

Fun with Feature Flags

Feature flags are a simple technique that let you toggle whether a new piece of functionality is available in your software or some aspect of how it behaves. In this article, I’ll discuss why this isn’t as crazy of an idea as it sounds, how you can implement a simple […]

Debugging Slide Decks

Ever have a presentation get off on the wrong foot or an intended point completely miss the mark? I sure have. Let’s backtrack a few months and look at how I failed and 6 steps I now follow to keep getting better. I was giving a monthly training presentation to […]

Mocking Data with Bogus

Ever needed a bunch of random data for testing, UI prototyping, or even as part of an application? I did, and I found a good option to generate it for .NET applications. Bogus is loosely based off of the Faker library for PHP and differs from testing libraries like AutoFixture by […]

Creating a .NET Core API

This article will walk you through some simple steps in creating, running, and testing a new ASP .NET Core Web API. Prerequisites I will be using .NET Core 2.1 as it’s what I have installed on my machine, though today Release Candidate 1 of .NET Core 3 came out. To get started: Download […]