I watched a screen cast by the creator of Rhino Mocks in where he states something to the nature, you should not really get into mocking until you understand test driven development better and how to design code correctly, so my question is what are some resources for correctly designing/architecting code?