Edclick

Edclicking Keyword Cloud

By Dr. Harry Tennant

Comments: Edclicking

To the blog

Enter a comment

Wednesday, February 22, 2012

Problems with problem-solving

In my last post I talked about wasting two days on a programming bug. That experience indicates that I have problems with my problem-solving process. It is inefficient if it can stall my progress for that long. What to do?

  • The first step to improving a process is to make the process explicit. I must admit, I have no explicit process for debugging software. I analyze it, look at the outcome and try to figure out what went wrong. And usually that works well enough. But sometimes, like this recent experience, it doesn't. So, I wrote a debugging process.
  • Develop a checklist of things to check and a time to start using it. For example, if fixing a bug has alluded me for more than ten minutes, it would be beneficial to stop what I'm doing and start a more systematic approach. I wrote a short checklist. It was clear that it needs to be elaborated because there are many types of special things to check for different program constructs.
  • There would be a good time to get someone else involved. A code walkthrough is where two people go through code line by line explaining what each line is supposed to do. A second set of eyes often sees things that have become invisible to the author. With screen sharing technology, doing a code walkthrough is easy to do even if the people involved are across the country. You often make two kinds of discoveries in code walkthroughs: you find errors or you don't remember how the heck the code is supposed to work. Both are useful discoveries.
  • Look for best practice. How do other people approach debugging? With whatever task you're up against, chances are very good that others have done something like it before, and chances are pretty good that there is something online to read for insights.

Posted at 12:00 AM Keywords: Continuous improvement 0 Comments

  No comments. Be the first to enter a comment.

Enter your comment

Your name



To fight spam, please enter the characters in the image.