Comment 181 for bug 332945

Revision history for this message
Peter Whittaker (pwwnow) wrote : Re: [Bug 332945] Re: [Jaunty] Update Notifier icon would provide useful status information

On Thu, 2009-04-09 at 11:41 +0100, Mark Shuttleworth wrote:
> Peter Whittaker wrote:
> > If you read my comments on the wiki page, you'll see I make clear
> > distinctions between system and user notifications: Let's apply that
> > distinction consistently. A user notification is a doorbell, it appears
> > in the user notification area, near where the user keeps their stuff. A
> > system notification is a firealarm and appears in the system
> > notification area, where other "systemy" things are.

> So, a user notification is something like "John emailed you", and a
> system notification is something like "Your network disappeared"?

Yes, exactly. They are different events, different types of events, and
need to be handled differently. If I ignore the doorbell, chances are
I've missed a friend or a chance to donate to a worthy cause; chances
are I'll have another chance at either/both.

If I ignore a firealarm, well, it's not the sort of thing you do more
than once, is it?

So "John emailed you" appears ephemerally in the user notification area
(mentally, I'm viewing this as bottom-right, where the bubble fades up
from the bottom, stopping with its bottom edge attached to the bottom
bar).

"Your network disappeared" appears in the system notification area,
using the same mechanism (my little mental picture is bubble fading down
from the top right, stopping with its bottom edge attached to the top
bar). If necessary, they can decorated with something akin to traffic
signals (yellow triangles for suspicious conditions, red octagons for
serious conditions, etc., though I would like this to be configurable).

Generally, user notifications are ephemeral, allowing us to ignore them;
the one obvious exception is a user-triggered reminder, that is, a
reminder of a ToDo, meeting, etc., entered by the user. (Preference
allows the user to make buddy or email notifications, etc., persistent
if they want, and all user notifications are user configurable.)

System notifications fall into three classes: The always ephemeral, the
always persistent, and the ephemeral-but-may-signal-a-problem. "Your
battery is about to die, save your work" is persistent (using the model
I described previously - appear, then sink beneath the focused window,
reappearing as focus rises). "Important updates are available" is also
persistent.

Always ephemeral would include "Your battery is fully charged", "you are
now connected to network N", etc.

Trickier are "ephemeral-but-may-signal-a-problem": "You are now
disconnected from the network" may or may not be a problem. Chances are,
you undocked your laptop. But if you aren't on a laptop, chances are
this is a problem.

I'm of at least two minds as to how to resolve this. My first - and
distinctly inelegant - inclination is to periodically remind the user
("You've been disconnected for 90 minutes, is everything OK"), perhaps
even making the notification persistent after a time, but this would be
disturbing to the laptop user who has deliberately gone off-line.

My second - and preferred - inclination is an ephemeral bubble to draw
attention coupled with a persistent NetworkManager icon showing current
network state. I say preferred because it is fairly easy to do (since it
is what happens now - no more work required) and because it is
relatively elegant. (The only reasonable improvement I can see is to not
raise the bubble until the machine is being used interactively, e.g.,
when the screen is unlocked, in order to ensure the bubble is displayed
when it makes sense to do so - when it can be attended to.)

My third - and downright potentially Rube Goldbergian - is to apply some
sort of heuristics to determine how likely it is that the network
disappearing was intended. If the machine is being used and it is a
latop, then chances are the user undocked; if the machine is not being
used, then maybe the user undocked, but that's not a safe assumption; if
the machine isn't a laptop, then chances are it's a problem - the user
may have deliberately unplugged the network, but that in itself likely
signals an unusual, so having to dismiss a persistent dialog won't be
too unwelcome.

And I don't know if the data exists to allow intelligent heuristics.

All of the ephemeral-but-may-signal-a-problem will have to be use-cased
(hmm, Calvin was right, verbing weirds language) to determine
appropriate defaults and appropriate heuristics.

What do we do if we get any of these wrong, as we surely will? We
discuss. We figure out default policies for all three cases, apply them
as best we can, likely succeeding more than we fail thanks to the 80/20
rule, and we debate the rest as a community and come to consensus.

Like we most often do.

Having said that, all system notifications start off with a default
system policy that can be changed by an admin (but not by a user).

Quick comments re a few other points.

I am adamantly opposed to popups in the user space, as should be obvious
from earlier comments - unrequested popups are simply unwelcome and
potentially problematic. Bubbles are much more elegant and are different
enough to warrant attention. I felt it worth reiterating this point,
given other comments re the unwelcomeness of popups (If I'm showing off
Ubuntu, an unwelcome popup would be embarassing; a way-cool bubble, on
the other hand, provides another opportunity to describe how cool and
responsive are the community and its OS).

I understand the comments re icons in the bar. While it *is* what I am
used to, it can stand improvement and at some point there may be too
many and signal will get lost in noise. The bubble mechanism,
appropriately employed, is an elegant alternative. And one that can make
clear the distinction between user and system events.