I actually apply this to my hacking these days. The statement you often realize that problems are more interesting once you sit down and analyse them I have found to be particularly true.
When I'm faced with a design problem I write a "white paper" setting out the problem, framing the desired properties of any solution then as systematically as possible setting out the alternatives and justifying why a particular solution has been chosen.
I usually find that in going through this process I am forced to change my initial design decisions, often ones that seemed obviously, even trivially, correct to begin with.
Comments
I actually apply this to my hacking these days. The statement you often realize that problems are more interesting once you sit down and analyse them I have found to be particularly true.
When I'm faced with a design problem I write a "white paper" setting out the problem, framing the desired properties of any solution then as systematically as possible setting out the alternatives and justifying why a particular solution has been chosen.
I usually find that in going through this process I am forced to change my initial design decisions, often ones that seemed obviously, even trivially, correct to begin with.