I try to write a first prototype without any regards to best practices. When I'm doing a rewrite (of a prototype, not a full product), by then I already have the structure in my mind and perfectionism then can't get in the way. For example I don't design unnecessarily complex sub systems just to get the flexibility I don't need.