tl;dr When tests are hard to write, it’s because they are trying to tell you how the production design can be improved. Probably the biggest breakthrough during my Unit Testing workshop is to realize that …
pragmatic design
Exploratory Refactoring
This article describes a technique that I believe is missing from our practice, especially from teams working on complex (legacy) systems. The Problem I can’t refactor this code because I don’t know what happens in …
Pragmatic Dependency Injection
Any non-trivial codebase out there benefits from Dependency Injection, for two main reasons: to be able to pass in a proxy or a decorated version of the target dependency, or a mock for unit testing …