“Sherlock Holmes and Dr. Watson go on a camping trip, set up their tent, and fall asleep. Some hours later, Holmes wakes his faithful friend.
“Watson, look up at the sky and tell me what you see.”
Watson replies, “I see millions of stars.”
“What does that tell you?” Holmes asked. Watson ponders for a minute.
“Astronomically speaking, it tells me that there are millions of galaxies and potentially billions of planets. Astrologically, it tells me that Saturn is in Leo. Time wise, it appears to be approximately a quarter past three. Theologically, it’s evident the Lord is all-powerful and we are small and insignificant. Meteorologically, it seems we will have a beautiful day tomorrow. What does it tell you?”
Holmes is silent for a moment, then speaks. “Watson, you idiot, someone has stolen our tent.”
When I first saw the “We share your pain” spoof video, first thing that came to my mind was who created it!!! Obviously it was created by Microsoft!!! See at http://www.microsoft.com/uk/technet/itsshowtime/sessionh.aspx?videoid=9999. The spoof is on the error reporting dialog that pops up on application crashes. We call this the Watson dialog….
Before I worked in Microsoft I saw this dialog come up couple of times. I thought with the huge user base that microsoft has does anyone really care? So I mostly ended up clicking on Don’t Send. Right now the story is kind of the other-way around. I am in Microsoft and my application crashes actually throw up this dialog on users boxes!!!
We are developing Visual Studio Team System which is a V1 product and hence there is limited audience outside of Microsoft. Mostly they are on Beta or CTP bits. So I was leading a happy life with all issues being reported with detailed logs and I’d mostly get repro-boxes where I could debug the failures.
However, life changes fast and I got a couple of these Watson bugs as we call them. I then realized that these error reports are treated very seriously. There is a dedicated team that looks into all the error reports sent in and file bugs on the faulting products. To protect user’s privacy and our strict data-collection policy very limited data is gathered. However, the data is usually enough for us to locate the faulting code as we can get the stack trace and unhandled exception details.
So next time you see one of these dialogs do send the error report. It’ll surely be analyzed and will help us build better and more stable products… Read an excellect blog about this topic here