Why is composing symphonies tough? I don't know. It's just very few people in the world can do it well. And I think that's the case with upfront design. It is very hard to do well.
Martin FowlerWhen you actually sit down to write some code, you learn things that you didn't get from thinking about them in modeling terms...there is a feedback process there that you can only really get at from executing some things and seeing what works
Martin FowlerNow I'm a pretty lazy person and am prepared to work quite hard in order to avoid work.
Martin Fowler