LWN.net Logo

When Designing for Moblin, Think Like a Mobile User (Moblin Zone)

Moblin Zone has a two-part series on user interface design for Moblin (part 1) and (part 2). The article looks at user attention span, limited screen real estate, limited input methods, and so on, that characterize a mobile device, with specific advice on how applications should work based on those constraints. "Consider the warning that you might create if your live application loses its network application. Don’t say 'Cable [Unplugged],' and then 'Lost IP Address,' and then 'Lost Connection to the Internet' and then 'Connection Recovered' and then 'IP Address Acquired'... you get the idea. Tell the user only what he/she truly needs to know. Don't forget that the user might not be looking at the screen at any particular moment."
(Log in to post comments)

When Designing for Moblin, Think Like a Mobile User (Moblin Zone)

Posted Nov 23, 2009 20:54 UTC (Mon) by sbergman27 (subscriber, #10767) [Link]

"""
Don’t say 'Cable [Unplugged],' and then 'Lost IP Address,' and then 'Lost Connection to the
Internet' and then 'Connection Recovered' and then 'IP Address Acquired'... you get the
idea. Tell the user only what he/she truly needs to know.
"""

How about:

The application encounterred an error!
.
.
.
The application was unable to recover from the error. Terminating!

The user doesn't need to know any of the ugly details. They wouldn't understand anyway.
Does anyone thing that "Terminating!" makes the dialog overly verbose for their tiny little
minds? I can't decide.

When Designing for Moblin, Think Like a Mobile User (Moblin Zone)

Posted Nov 23, 2009 21:41 UTC (Mon) by anselm (subscriber, #2796) [Link]

I hate it when a program or device just says »Error!« because it doesn't give me a clue what to do about the problem. I don't like it either when a friend phones me and says »My computer just displays "Error!", what do I do now?«. I hate it when programmers assume that my little mind is too stupid to understand what is going on.

Please, anybody who believes that »The application encountered an error« is the appropriate sort of thing to have a program display, stay at least 10 miles away from any kind of UI design. Just imagine if you went to the doctor and all she ever told you was »Yeah sure, you're sick.«

Maybe in some occasions

Posted Nov 23, 2009 22:13 UTC (Mon) by man_ls (subscriber, #15091) [Link]

But I think the underlying message is right: why tell the user that the cable was unplugged after he unplugs it? Why speak about "IP addresses" or "DHCP"? The user just wants to connect to the internet and browse some website. Don't you hate it when the doctor says "epigastric hernia" and doesn't explain what it is or what it means? The point of the author is really that a couple of meaningful messages are better than a host of low level self-diagnosis messages.

Maybe in some occasions

Posted Nov 23, 2009 22:42 UTC (Mon) by michaeljt (subscriber, #39183) [Link]

I like it when the system doesn't bother me with the details, but when they are a couple of clicks away if I do want to know them.

Maybe in some occasions

Posted Nov 23, 2009 23:12 UTC (Mon) by nix (subscriber, #2304) [Link]

Exactly. I don't want the system to tell me the cable was unplugged and
there is no carrier if I just unplugged the cable, but I damn well *do*
want it to tell me that it thinks that that's what happened if I *didn't*
unplug the cable and my link just went dead without warning.

Maybe what we need is a 'what just happened?' button that displays the
last few lines of a more readable version of the syslog...

Maybe in some occasions

Posted Nov 24, 2009 10:01 UTC (Tue) by michaeljt (subscriber, #39183) [Link]

Or if the system displays the minimum of information so that I know that something did happen (i.e. the network icon changes from connected to disconnected - after all, it may have been a hardware failure, and not a deliberate plug-pull - but nothing else), and there is a handy diagnostic tool under the system menu which shows me an expandable tree of all events of interest in reverse chronological order. If I click on the "lost connection" entry, it will expand to give more details, some of which can possible be expanded again, getting more technical each time. And this tool collects information from different sources, much like hal did for hardware information. Sigh, shame I have no time to implement this :)

Maybe in some occasions

Posted Nov 24, 2009 20:42 UTC (Tue) by nix (subscriber, #2304) [Link]

It sounds very non-keyboard-friendly, too. I despise mouse-only
interfaces. (A lot of RSI sufferers can't use them at all.)

Maybe in some occasions

Posted Nov 25, 2009 9:43 UTC (Wed) by michaeljt (subscriber, #39183) [Link]

>It sounds very non-keyboard-friendly, too.

Not necessarily, methinks. On the one hand good design demands separation of UI and logic (and this wouldn't even be a difficult case), so the same thing could equally have a command line interface. In fact, I dislike software that decides for you whether you should use a GUI or the command line to control it unless there is a good reason for it.

And on the other hand, yes I said "click", but these days GUI vs command line is not the same as mouse vs keyboard. If a GUI can't be used without a mouse, as the Debian people might say, "that should be considered a bug". And I would even venture to say that with practice, you can be just as fast using a well-designed GUI interface from the keyboard as using a command line.

Maybe in some occasions

Posted Nov 26, 2009 17:41 UTC (Thu) by nix (subscriber, #2304) [Link]

In that case there are very few well-designed interfaces. I frequently
find apps that won't even handle ESC -> cancel (the most recent being
virt-manager but it is by *no* means the only one).

When Designing for Moblin, Think Like a Mobile User (Moblin Zone)

Posted Nov 24, 2009 3:13 UTC (Tue) by dkite (guest, #4577) [Link]

Why would losing connectivity in a mobile device be an error? Isn't it an
expected mode of operation?

I would expect the application to tell me something I need to know, like I
can't get something I asked for because the network is down, then get it
when it comes back. Otherwise, it isn't an error.

Derek

When Designing for Moblin, Think Like a Moron

Posted Nov 24, 2009 8:07 UTC (Tue) by sean.hunter (guest, #7920) [Link]

Surprising they see fit to lecture people when the moblin user interface has the most egregious flaw: No way to quit or even switch user.

So once you're logged in with moblin you're done. No-one else can use the computer unless an admin kills the xserver. Really gross.

I have a netbook, and occasionally I allow my 4-year-old daughter to use it to do "stuff". Since I can't have her trashing my files she has her own login. Moblin would in theory be perfect for her but because they have seen fit to remove all possibility of quitting, my daughter uses gnome.

I know why they've done it this way, in their world-view the primary use case of netbooks is single user. Fine. So put quitting or switching user on a control panel somewhere. Don't make it impossible.

avoid hover-requiring interfaces

Posted Nov 27, 2009 2:36 UTC (Fri) by pjm (subscriber, #2080) [Link]

The author asks ‘Instead of showing “reply” or “delete” buttons, why not have them fade in when the cursor is moved over a message header?’

The answer would be that hover doesn't work on touchscreens, which are becoming common on the sort of devices targeted by Moblin. Some touchscreen technologies used on MIDs simply physically don't give hover information. Even with touchscreen technologies that can detect position of a stylus/finger that's held very close to the screen, this is not a natural action, so in practice the computer doesn't have information about where the user is focusing or considering clicking; it only helps if the user already knows that holding this uncomfortable position will be helpful.

Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds