3 Problem Types to Build Your Troubleshooting Skills

Growing up, I would tend to lose "stuff" all the time.  In order to locate the item, I would look everywhere.  I would look, relook, look again, and then repeat.  Then I would replay the day's events in my head to try and remember where I left the item.

By doing this, you activate your mind.  You stimulate certain areas which otherwise don't get used.  And the brain is a muscle, and if you exercise it, it will strengthen.

So this did three things.  First, it gets you to look at a problem from multiple angles, using systematic and chaotic approaches.

Second, it gets your brain to visualize, you see a picture in your mind of the day's events as you retrace your steps.

Third, it build focus and concentration, as you block out everything which does not directly help in locating the missing item. (What's interesting is what you find during your search that you weren't looking for.)

More often than not, by retracing ones steps, creating mental images of the lost item and relentless pursuit of your goal, you will eventually find that what you are looking for.  And I believe looking for misplaced items was good exercise for developing solid troubleshooting skills.

I call that the "Lost Item" problem.

Another problem type I call the "Tangled Knot" problem.  This requires great patience, trial and error and meticulous attention to detail.  At first the problem seems insurmountable, so much tangledness, where does one start?  At the beginning.  I would say this too is a valuable skill for troubleshooting problems.

Lastly, there's the "Onion" problem.  This is when you have to solve a problem, sometimes easy, but in order to do so, you must solve multiple problems to get there.

For example, I'd like to move the clothes from the washer to the dryer.  But before that can be done, you must move stuff out of the way.  Before that can be done, you must do such and such.  And before that, another road block.  This is similar to the tangled knot problem, except it's iterative layers of complication that must be addressed prior to solving the real issue.

So solving problems builds character, and a solid set of skills used for troubleshooting down the road.  Whatever doesn't kill you makes you stronger.  In having the mental strength and determination, you can solve just about any problem that presents itself.  Which is good, because in the world of Programming, we solve problems all day every day.