The Circuit Breaker Pattern

I don't remember where I first heard about the circuit breaker pattern but I had seen it a few times in a few different forms under different names. Over time I have come to believe that the original approach described to me might not be the most appropriate.


2013 statistics

Since I decided to move the blog during 2013 the statistics for 2013 are split between two sites and I'll do this a little different than last year.


TFS Anti-Patterns: Copying work items

Over my years at Microsoft I have encountered what I'd like to call the work item copy anti pattern.


Lunch Dictator or Tweeting from PHP

A while back I needed a way to simply post tweets from PHP. To my disappointment most examples I found were about reading tweets or required a bunch of PHP modules I did not have the opportunity to use on the server where the script was going to run. So I had to do some work.


429 vs 503

A while back I was involved in a discussion around using 429 instead of 503 in order to tell clients they should back off a little. And there are some good arguments for both. Here are my thoughts.


Abstracting time

Probably one of the most common tight couplings I see is a dependency on system time, i.e. using DateTime.Now or DateTime.UtcNow directly in your code without any abstraction around it. A tight coupling that typically leads to very complex and fragile tests when trying to ad test coverage.