Opened 9 years ago

Closed 6 years ago

#2063 closed defect (wontfix)

Sugar should bring up an alert when an unhandled Python exception occurs

Reported by: bernie Owned by: tomeu
Priority: Unspecified by Maintainer Milestone: Unspecified
Component: Sugar Version: Git as of bugdate
Severity: Unspecified Keywords: dextrose sugar-love
Cc: m_anish, smparrish, mtd Distribution/OS: Unspecified
Bug Status: Unconfirmed

Description

Many UX designers abhor the idea that the computer would scare off users with incomprehensible error messages. Ideally, we would have a 100% bug free system in which this never happens, but current today's is very different.

Currently, users and are left wondering why some operation isn't doing anything and have no way to tell that their log is full of tracebacks.

To keep things simple, I would suggest to print the exception message in a notification alert, and suggest users to open the Log activity for further details.

Change History (8)

comment:1 in reply to: ↑ description ; follow-up: Changed 9 years ago by eben

Replying to bernie:

Many UX designers abhor the idea that the computer would scare off users with incomprehensible error messages. Ideally, we would have a 100% bug free system in which this never happens, but current today's is very different.

Of course they would! An incomprehensible error message is useful to no one, and can—as you say—frustrate or confuse people. However, most UX folks are not inherently opposed to error message or dialogs of all kinds; it just happens to be rather difficult to design good ones, and bad ones are often really bad.

Currently, users and are left wondering why some operation isn't doing anything and have no way to tell that their log is full of tracebacks.

Most UX people would be just as concerned about an absence of feedback. Feedback is critical to a user's understanding of the tool they are using, and a lack of feedback can cause uncertainty and confusion as well. Feedback is a very good thing, as long as the feedback is actually useful or informative to the audience it's directed at (in this case, kids, not developers!).

To keep things simple, I would suggest to print the exception message in a notification alert, and suggest users to open the Log activity for further details.

It's unfortunate that some errors make it through, though its also inevitable, especially in an ecosystem that encourages learners to participate in its creation and augmentation.

I'm in favor of showing an error message for an uncaught exception (since feedback is good!), though I caution against displaying the actual exception string in this instance. It's unlikely to make sense to the primary audience. Instead, I would generate some friendly message that lets them know that the action they attempted didn't work as expected, and then offering a link into the Log activity to learn more should they want to dig deeper.

This will a) ensure there is feedback, preventing uncertainty b) provide a friendly message that kids will understand, even if they don't understand WHY something didn't work, and c) offer those with more expertise—or those desiring to learn—a shortcut to the gory details.

(All this to say I mostly agree with Bernie, but hopefully I've set some misunderstandings about us "UX folks" straight. =) )

comment:2 in reply to: ↑ 1 ; follow-up: Changed 9 years ago by bernie

Replying to eben:

Of course they would! An incomprehensible error message is useful to no one, and can—as you say—frustrate or confuse people. However, most UX folks are not inherently opposed to error message or dialogs of all kinds; it just happens to be rather difficult to design good ones, and bad ones are often really bad.

I agree we should work hard to make our error messages clear and intelligible, but not at the cost of suppressing essential information that technical support would need to help novice users.

In modern Linux UIs you often need to ask the user: "please open a terminal and type..." because the GUI is useless. Having no alternative, Windows tends to provide more informative error messages in the GUI.

I'm in favor of showing an error message for an uncaught exception (since feedback is good!), though I caution against displaying the actual exception string in this instance. It's unlikely to make sense to the primary audience. Instead, I would generate some friendly message that lets them know that the action they attempted didn't work as expected, and then offering a link into the Log activity to learn more should they want to dig deeper.

100% agreed. What icon could we bring up to go with this message? Do we have a "gasping" or "puzzled" laptop icon in the style of the sleeping computer that we use for power management?

(All this to say I mostly agree with Bernie, but hopefully I've set some misunderstandings about us "UX folks" straight. =) )

Hehe, sorry about that :-)

comment:3 in reply to: ↑ 2 Changed 9 years ago by garycmartin

Replying to bernie:

Replying to eben:

Of course they would! An incomprehensible error message is useful to no one, and can—as you say—frustrate or confuse people. However, most UX folks are not inherently opposed to error message or dialogs of all kinds; it just happens to be rather difficult to design good ones, and bad ones are often really bad.

I agree we should work hard to make our error messages clear and intelligible, but not at the cost of suppressing essential information that technical support would need to help novice users.

In modern Linux UIs you often need to ask the user: "please open a terminal and type..." because the GUI is useless. Having no alternative, Windows tends to provide more informative error messages in the GUI.

Can you suggest some commonly used canned support responses that could be added to either Analyse or Log activity as toolbar buttons? I'd be happy to try and carry these through.

I'm in favor of showing an error message for an uncaught exception (since feedback is good!), though I caution against displaying the actual exception string in this instance. It's unlikely to make sense to the primary audience. Instead, I would generate some friendly message that lets them know that the action they attempted didn't work as expected, and then offering a link into the Log activity to learn more should they want to dig deeper.

100% agreed. What icon could we bring up to go with this message? Do we have a "gasping" or "puzzled" laptop icon in the style of the sleeping computer that we use for power management?

I'd been thinking of a bug icon (already have an svg one available if needed, cleaned up from Walters excellent TA efforts). But I do like this idea of the laptop style icon, x's for eyes and a wonky mouth, almost old Apple Mac boot crash style. The down side is it might feel XO only specific for other sugar users on different hardware. Happy to build the svg if needed.

(All this to say I mostly agree with Bernie, but hopefully I've set some misunderstandings about us "UX folks" straight. =) )

+1 as long as you communicate with the user in a meaningful way, just talking at them is not so hot ;)

FWIW If you ever see an activity trace back _please_ do trac report it, these are often the 'easiest' types of reports to sit down for an evening an try to resolve. A bug is a bug is a bug... FWIW2 I do read all trac reports and they _do_ (slowly) burn away at my soul until resolved.

comment:4 Changed 9 years ago by bernie

  • Keywords dextrose sugar-love added

comment:5 Changed 8 years ago by smparrish

  • Cc smparrish added

comment:6 Changed 8 years ago by smparrish

  • seeta_dev set to Shanjit

comment:7 Changed 8 years ago by mtd

  • Cc mtd added

comment:8 Changed 6 years ago by dnarvaez

  • Resolution set to wontfix
  • Status changed from new to closed

There seem to be no consensus that we should do this. Feel free to bring it to the mailing list and open a ticket if you can find consensus on a plan for this.

Note: See TracTickets for help on using tickets.