A couple of years ago, Ola Ellnestam and Daniel Brolund was working on a project where the code was a big ball of mud, or at least well on the way there. Global variables and singletons all across the code base, circular dependencies, deep and fragile inheritance hierarchies etc. The Technical Debt was everywhere.

Read the rest of this entry »