Another excellent post on TDD by Jeremy D. Miller. The following quote is something that needs to be up on the wall:
DO learn how RhinoMocks works or DO NOT use it. Seriously. It's a very powerful tool when used correctly, but it punishes folks with a shallow understanding of the tool. Understand what it does, don't memorize, and don't try to copy/paste RhinoMocks code you don't understand
When I started out with unit testing and TDD, I ignored the existence of dynamic mocking frameworks altogether. I wrote my stubs and mock objects by hand. I wanted to grab on to the core principles of unit testing. After feeling the pain of manually writing stubs and mock objects for a year or so, I started using RhinoMocks. Looking back, I still started way too soon. I still consider not using a mocking framework at first is still a good thing. It's easy to get overwhelmed.
In this other post of Jeremy, the following quote actually made my day:
The WebForms event lifecycle is the most gawdawful, overcomplicated piece of crap MS has ever rammed down our throats.