Google developer Cedric Beaust argues that treating orthodox Test Driven Development as some kind of panacea is a mistake, a position that I find it difficult to argue with. In fact, I find myself rejecting nearly all dogmatic software development philosophies. I like to read about them, but in the end I just steal the parts that work for me and do what seems to make the most sense.
My dirty secret: I almost never write a test, watch it fail, and then fill in the code necessary to make the test pass. That seems gratuitous to me.