This is a post about what by now is a very old subject. At the place where I work test driven development was first introduced by some colleagues of mine who were also some of the first advocates at the office of the scrum methodologies. Doug Swisher and John Murphy if memory serves, though I apologize in advance if that’s not correct.
I mention this now because I was reminded again about how it has permeated the development culture. Microsoft has also brought many of these practices in house in different areas and it shows. For example they’re working with a guy making Moonlight, and open source implementation of Silverlight for Linux, by providing documentation and the code for their full unit test suite. The MVC demo from Scott Hanselman also demonstrated unit testing and advocated some practices such as using a mock library. If you catch his presentation online at five minutes into it he’s showing the new MVC project template which includes a test library option selected by default, as well as an “I suck” option (his words) to omit any unit test library in your new solution.
He’s funny. Ah! I see he’s looking into various inversion of control containers. That’s a cool topic, but not what I’m talking about at the moment.
TDD is one of those things that’s a good habit, and one to constantly strive to reinforce, but one that’s also very easy to abandon when your project enters the grind to the finish line.
It’s something I’m thinking about because I’ve also been working on a small contribution to the open source castle project. I’m a huge fan of that group’s work and I’d like to give a little something back. But since it’s going out to� that community I want the code to make a good impression for me - so I’ve been especially careful trying to follow conventions including providing a nunit lib.
I’ll post something more about that once it’s committed. How exciting.