Another little TDD post:
Firstly: there is a new site up called DimeCasts.net that shows 10 minute crash courses on a given subject. So far the first bunch is really good, they hover around the 10 minute mark and are covering NUnit. So if you have not done any unit testing or want some reinforcement that how you are tackling TDD is correct, check DimeCasts out.
As I work on a several side projects I come to realise how beneficial DDD, your Ubiquitous Language and BDD can be.
My "at work" project is so badly organised, especially in terms of communicating business ideas to code, these concepts could have saved the project. Its a subtle mind shift but a beneficial one. The biggest thing I see is the barriers DDD removes. It becomes less Us vs Them (i.e. Code Monkeys vs Suits) and much more about correctly defining the problems at hand and putting into a language that fits all intend audiences. BDD is not really a new way of think but again a subtle refinement of the DD practices and honing the language. I am going to pushing forward with these concepts with a pretty large scale project I may be tackling solo (initially). The business owners are completely non technical and are still fleshing the finer points of the business. To me these more agile practices should be a perfect fit for the on coming workload. :)
I may even venture into the BDD frameworks that support the processes