Kevin Rich

Unit Testing: Activate Easy Mode

The Four Horsemen: AutoMock, AutoFixture, Shouldly, and xUnit


Yesterday, after presenting to the Willamette Valley Software Engineering meetup about Dependency Injection, an engineer by the name of Josh and I got to talking. After making an offhand comment about a testing framework combination I'd used, he got really excited. I figured I'd use this as an excuse to do a . . .

Read More

March 08, 2019

booleanComments == true

Making boolean logic easier to read

I was reviewing a pull request today when came across something along some complicated boolean logic and it reminded me of the sections of Robert C Martin's Clean Code: A Handbook of Agile Software Craftsmanship. In it, he discusses Bad Comments as well as Using Descriptive Naming.

When looking at boolean logic, I like to . . .

Read More

October 25, 2018

It's not me it's you

How to handle failures


A large part of our codebase revolves around ensuring we are sending around 3 to 10 thousand messages to Popular Online Platform(tm). We've been updating the infrastructure around this process over the last few weeks, attempting to optimize the process as well as introduce new features.

At 8PM on a weekday, . . .

Read More

Posted in: failures

September 02, 2018

Comparing Lists w/LINQ

Intersect and Except

It's easy to forget tools we don't use often. I recently had the opportunity to break out a couple of under-utilized LINQ extensions, Intersect and Except.

Both do exactly what you'd expect, but let's see them in action.

var primaryColors = new []{"red", "yellow", "blue"};
var  . . .

Read More

Posted in: asp.netlinq

February 15, 2018


How to not loose it on stage

I recently spoke to about 120 people at the Salem Tech Lunch about Continuous Integration and Continuous Delivery. I've come to find I enjoy the challenge of presenting technical topics in a fun and engaging manner and have learned a lot from the great Scott Hanselman (and seriously, if you've never watched him in action, stop reading . . .

Read More

January 18, 2018

AWS HTTPS Redirects

and why understanding the Stack Overflow answers are just as important as knowing they are there

I love Azure. Like a lot. As primarily a .NET guy, Azure makes everything pretty much easy. I think AWS wants to be .NET friendly, but they just don't seem to be there yet.

Recently, I was tasked with forcing HTTPS on a .NET Framework site that lives on AWS in Elastic Beanstalk. After some digging and some false starts, I found . . .

Read More

December 12, 2017

Data Lake vs Data Warehouse

What's the difference anyway?

So I was recently helping a buddy of mine prepare for an interview. He hasn't had a ton of cloud experience, so I was showing him what I know. I made an offhand reference to a data lake and he asked something along the lines of, "Is that like a data warehouse?"

I got to break out my favorite analogy

A data . . .

Read More

September 19, 2017


Cover image credit: