Recent

Podcast: Weekly Dev Tips - Software Quality Defense in Depth

Podcast: Weekly Dev Tips – Software Quality Defense in Depth

I had the opportunity to record a podcast appearance with Steve Smith back in January where I discuss the concept ... Read More

Featured

The History of .NET

The History of .NET

As someone who has been using .NET since the betas, I've been really impressed with .NET's ability to grow, change, ... Read More
Making Defects Impossible

Making Defects Impossible

Technical Debt Must Die

Technical Debt Must Die

.NET

Safe .NET Feature Flags with FeatureToggle

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 ... Read More

JavaScript

Creative Uses of TypeScript Discriminated Unions

Creative Uses of TypeScript Discriminated Unions

Let me show you how creative use of TypeScript's discriminated unions, type aliases, and functions can give you a greater ... Read More
Rise of the Reducer

Rise of the Reducer

Angular Accessibility

Angular Accessibility

Architecture

Facades should not have Working Plumbing

Facades should not have Working Plumbing

In this short article we discuss the role of facades in application architecture and some common problems and solutions. A ... Read More
Technical Debt Must Die

Technical Debt Must Die

Fun with Feature Flags

Fun with Feature Flags

Soft Skills

Software Quality Defense in Depth

Software Quality Defense in Depth

In this article we'll discuss what Roman military tactics and modern security practices have to do with protecting users from ... Read More