Thinking about work #1
Over the years I have been able to pick up a few things along the way that have really helped me do my job. I will try to outline these in a series of articles titled "Thinking about work".
Solving a problem can be modeled as a binary search. The idea behind a binary search is to divide the number of possible solutions by half each time an experiment is performed. For example, a binary search could be used to determine what number your friend picked when asked to pick a number between 1 and 10:
Pick a number between 1 and 10.
Is the number you picked less than or equal to 5?
Is the number you picked less than or equal to 2.5?
Is the number you picked less than or equal 1.25?
You picked the number 2!
The difficulty with problem solving is generally not the method taken but the time required. Given enough time and resources most problems can be solved, but that is a luxury that few people, if any, have. Time constrained problem solving adds another layer of complexity, namely, risk. Therefore, the most important consideration for problem solving is evaluating risk versus the time-to-solution (TTS).
Although a binary search type model will consistently provide the best TTS with very little risk, it will not always fit with the time scale given. It is often required that you take an approach with more risk in the hope that you get "lucky" and lower your TTS. For example, you could have asked your friend if the number he selected is less than or equal to 2. Since the number he selected is less than or equal 2, the risk paid off and you will lower your TTS. However, if the number was not less than or equal to 2, it would have increased your TTS by a maximum of the time taken to perform the experiment. This is one of the reasons why working with a tight deadline is inefficient. It encourages you to take risks for a quick solution which increases the TTS.
This does not mean that you never take a risk. If the person who is working on the problem is very experienced it increases the possibility that their decisions will be correct and decrease the overall TTS. This would be equivalent to knowing that your friend always picks the number 2. Having experienced people is one of the best ways to solve problems quickly.
Another aspect to consider is the amount of time taken to run certain experiments. If it only takes 30 seconds to try something that will decrease the time-to-solution by 5 days if you are correct, then it is worthwhile to do the test since the risk versus reward is in your favor. This would be similar to going through each number sequentially when you ask your friend which one they picked. In this scenario your are picking experiments that will give you the most amount of information with the smallest amount of investment. This is a critical tool for someone to have in problem solving.
Most problem solvers understand these concepts intuitively but are not able to articulate it to their boss. It is important for everyone to understand that the more risks you take the longer it may take to solve your problem even though you are trying to do it faster.