The Source for Java Technology Collaboration
User: Password:



Cay Horstmann

Cay Horstmann's Blog

How Not to Report an Internal Error

Posted by cayhorstmann on August 23, 2006 at 07:43 AM | Comments (6)

I got up early this morning to get some coding done. Instead, I am writing this blog.

Something in NetBeans has become unstable, and it pops up this dialog.

???

Clicking on "Show Details" reveals

???

What's wrong with it?

  • Why do I have to report the error? It wasn't my fault in the first place. NetBeans should offer to report it on my behalf. It is ok to give me a manual reporting URL; after all, I may not trust the electronic submission. But that should be my choice.
  • Why does the message peter out in the middle of the last sentence? I tried resizing the dialog, and it doesn't reveal the log location. I already have a low opinion of software that generates unexpected exceptions. When I see a sloppy dialog, my confidence goes completely down the drain.
  • Why does the dialog pop up again, and again, and again, and again? There is no way of turning it off. I tried cleaning the project, closing and reopening the project, exiting and restarting NetBeans, and the error keeps popping up. For the love of Mike, if you know that your software is unstable enough to report the occasional "unexpected exception", give the user a way to get rid of it.

What can one learn from this? Here are some points worth keeping in mind if you ever design an error handling mechanism.

  1. When you report an error, don't piss off the user more than you have to. Your user is already going to be unhappy at this point. Make sure you put your best foot forward now. Make a framework for reporting, and test the heck out of the error reporting process. Don't tolerate the slightest sloppiness.
  2. It is a good idea to allow the user to report errors. It makes the user feel that you want feedback, and it might actually help your QA effort. Make error reporting super-easy. Your user should be able to click a button, see the report that you are about to send off, and click another button to confirm. Also give a manual method for the paranoid.
  3. If your software is worth anything to your users, they can't just wait for you to fix the bug that caused the unexpected error. Don't stand in the way of continued usage. Give options for recovery, e.g. to rebuild the internal state, or to turn off inessential features.
  4. Whatever you do, don't do something as pointless and stupid as popping up the same error again and again. After seeing that NetBeans dialog for the tenth time, my brain perceived a subtle change in the wording. It now seemed to say "Instead of wasting your time, why don't you try loading this project into Eclipse?"

P.S. I just finished writing this blog, and I got this email:

Hi Cay,

try to delete MDR cache in your userdir. It's stored in your home
directory in .netbeans/var/cache. You can safely delete it, it will be
regenerated.

-Roman 

It took care of my problem.

That's another option for dealing with unexpected errors in your software. Have someone on staff 24/7 to monitor the user forum, and make sure they reply to complaints faster than it takes disgruntled users to blog about them.


Bookmark blog post: del.icio.us del.icio.us Digg Digg DZone DZone Furl Furl Reddit Reddit
Comments
Comments are listed in date ascending order (oldest first)

  • Perhaps you would like to vote here:

    Need automatic error report submission
    http://www.netbeans.org/issues/show_bug.cgi?id=49504

    - Curt

    Posted by: coxcu on August 23, 2006 at 09:42 AM

  • Hi Cay, I believe this dialog is actually shown only in the development versions or beta versions. In the final versions only a small red icon blinks in the bottom-right corner. I agree we should simplify bug submition. Users of final versions won't see this dialog unless they ask for it by clicking the error icon.

    Posted by: romanstrobl on August 24, 2006 at 05:41 AM

  • Hi Roman! It is fair to have an "in the face" error dialog for beta testers. But then add an option "Don't show me this error again". Otherwise, you may lose a tester.

    Posted by: cayhorstmann on August 24, 2006 at 07:32 AM

  • Amen! This has annoyed me too whilst testing nb5.5. Even with NB5.0, when I clicked the red icon the dialog pops up and you can't seem to get rid of the thing! I must admit that I haven't submitted a bug report, but if there was a button that said "Submit" then I'd click it.

    Posted by: arooaroo on August 24, 2006 at 07:40 AM

  • I have seen errors like this and the one with the red and white sign on the bottom right of the window. I agree if you have an error there should be a way to say clean up the best you can and restart if needed. With the last red and white I got it was easier to uninstall and install because I figured that the newsgroup would take too long.

    Posted by: ddevore on August 24, 2006 at 11:03 AM

  • Yep, I agree, re-appearing pop-ups are very annoying. I've forwarded the feedback to developers.

    Posted by: romanstrobl on August 24, 2006 at 02:05 PM





Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds