Sometimes subconscious mind helps us come up with a solution to the problem that has been haunting us for days. But sometimes we just need to sit down and work on it.
I realized I use the same problem-solving pattern whether as a designer or developer. It brings creative thoughts into the process and helps me stay focused, which is — for the most part — enough. See how it works.
- Write down. Writing down your problem definition may be the only step you need to solve it. That is because thoughts get organized when you put them into words. Don’t be trying too hard (to make it right), you will iterate anyway.
- Iterate. You may notice your mind is locked on the problem, but you have no clue how to solve it. Your initial statement might not be the real issue. Iteration is a way to discover solution step-by-step. When the problem is repeatedly redefined, you fix your progress and not wander around “step one”. Iterations go in three ways: generalization, analysis and plane switch.
- Generalize. While iterating, try to come up with a wider perspective. Figure out if the problem is really important and is the one you should be solving right now. That helps to set priorities and not to be constraint by the context you are in, being more creative and unbiased. Keep iterating and writing until you: (1) find a solution, (2) realize the problem is unimportant, or (3) reach the topmost possible level.
- Analyze. If generalization did not work out, try going backwards and making the problem definition more specific with every iteration. It is important to do generalization before going into details, to focus on what’s important in the first place.
- Switch plane. Sometimes neither generalization nor analysis work. This may require replicating the problem in a different — modeled and simplified — environment to lessen the impact of disturbing external factors.
Remember, it’s a general pathfinding scheme, not something to be followed precisely, — if you feel like you see a solution one step down, instead of up, go for it.