Taming complexity is a challenge of every large-scale software project. Traditional metrics and techniques are inadequate. That leaves us with intuition. And human intuition is unequaled when it comes to assessing the quality of a design. But
28 May 14
We can do without architecture early on, but at some point a clearly communicated architecture offers big productivity benefits to developers who otherwise drown in the expanding implementation-level detail.
Dave Thomas interviews Michael Feathers about legacy code and the benefits and challenges of refactoring older code bases to match the needs of modern times. This is a fascinating topic.
As programmers we have learned and practiced various refactoring techniques, you have pulled up methods, pushed down fields, extracted superclass,… Yet if you feel that you or your team can use something more fundamental, something more basic
6 Jul 12
The notion of approaching such a huge refactoring task is daunting to say the least, and the altruistic idea of dismantling the project piece by piece, then reâ€“building it systematically is more easily said than done. But