Chris Angelico wrote:
finding the bug is basically searching through a problem space of all things that could potentially cause this symptom. A novice could accidentally stumble onto the right solution to a tricky bug, or an expert could search a thousand other things and only get to the true cause after a long time.
What I think is more important than how *long* it takes is *how* they go about finding the bug. A novice will make wild guesses about what might be wrong and make random changes to the program in the hope of making it work. An experienced programmer will conduct a series of carefully-designed experiments to narrow down the cause. A result of this is that a true expert will never have to try a thousand possibilities. He will be able to search a space of N possible causes in O(log N) operations. This doesn't necessarily translate into time, because in some situations the experiments can be very time- consuming to perform. But other things being equal, the expert's bug-finding algorithm is faster than the novice's. -- Greg -- https://mail.python.org/mailman/listinfo/python-list