ATDD in practice - the teaser

After a previous post a friend of mine asked for some practical examples of ATDD. Well, that’s a challenging task. Mostly, ATDD operates in the scope of entire application, so you can’t get away with simple ‘stack class’-like examples. You need an idea of an application to build, and it should be an interesting one to highlight the challenges and the way you approach them.

Usually, I simply recommend the GOOS book for the curious. Indeed, I cannot stop advertising this book - Nat Pryce and Steve Freeman did a gigantic work to illustrate this style of programming with a very interesting example.

However, lately I’ve found an alternative resource to refer to. Another big TDD proponent, Robert Martin, also known as Uncle Bob, started a series of videos called Java Case Study where he and his son Micah work together to rebuild the entire Clean Coders website from scratch, using Java (I wish they did it in Clojure, I must admit). The series is meant to demonstrate the principles of object-oriented design and development practices, applied to a real-world application.

Answering to my friend’s request, I think I’ll use this video series’ example to illustrate the practical aspects of ATDD. I’ve only watched the first episode yet, so there’s absolutely no idea where it will lead me. The plan is to watch the videos one by one at a relaxed pace and then make a recap of each in this blog, focusing on the ideas and techniques I find important or interesting. I’d also like to compare the approaches taken by Uncle Bob and GOOS authors, as they seem to have some differences in implementation details.

Stay tuned to see what’s going to come out of it!