Graceful failures
Hans-Joachim Widmaier
hjwidmaier at web.de
Wed Dec 31 12:19:00 EST 2003
It is quite a coincidence that a thread like this pops up right when I
feel I have to start one - with almost exactly the same subject - myself.
Error handling can easily be the hardest task in a program, and that's why
its being neglected most of the time.
Am Wed, 31 Dec 2003 05:28:08 +0000 schrieb Samuel Walters:
> My "dream error dialog box" would do the following:
>
> Tell the user in a very neutral and nontechnical manner that it has
> encountered a problem and tell the user what it was trying to do when it
> failed.
>
> for instance:
> """
> Foo has encountered a problem.
> Foo was unable to load the necessary images to continue.
> """
I would like it much more detailled, like:
"""
Foo has encountered a problem. It was trying to load a necessary image
from the file '/usr/share/Foo/images/up.png'. This file does apparently
not exist. The problem may be caused by a broken installation of Foo.
Alas, Foo cannot be continued and will be closed.
"""
(I'm not the best error message designer, but I hope you get the point:
Tell exactly *what* is missing, so an even moderatly experienced user can
try to fix it. I *hate* messages like "Cannot find image". What image?
Where is it supposed to be?)
> The error dialog box should allow the user the option of viewing
> technical details, but should clearly label them as technical details.
Which means the details I want go there - fine with me.
> If possible, the user should be presented with possible courses of
> action to correct the problem.
+1
> Finally, I really, really wish that users were presented with the option
> of being automagically taken to the technical support website where
> they're allowed to see and discuss with others how to solve their
> particular problem.
[snip]
This, of course, is a bit overkill for a little freeware program, but
sounds good for a "big" application with a hefty price tag.
Handling every conceivable error right is quite a challenge and lots of
work, especially in the test department.
Hans-Joachim Widmaier
More information about the Python-list
mailing list