[Desktop_printing] Usability: Printing roles,
tasks and environments
mike at easysw.com
Tue Mar 7 07:18:12 PST 2006
Ellen Reitmayr wrote:
> 1. Installing
> 2. Configuring
> 3. Printing
> 4. Printer Feedback
> Questions that popped up so far:
> - - What tasks do we want to address in the meeting? Is installation an
> issue, or will that further on be handled by the distributions?
We definitely want to talk about this, because right now printer
installation and administration is a mess; from a posting I made
in December of 2005:
On Red Hat ES4, I can choose System Settings->Printing (starts
printconf-gui), Control Center and then click on Hardware and
Printers (starts KDE Printing Manager).
On SuSE 9.2, I can use System->Yast2 then click on Hardware and
then Printer, or Utilities->Printing->Printing Manager.
On Ubuntu, I can choose System->Administration->Printers (GNOME
All of those programs provide different functionality and have
completely different UIs, and there is no indication as to which
method is preferred or appropriate. Only Yast2 shows any knowledge
of the firewall settings and how they would interact with browsing
(though it still doesn't pop up a prompt for the user to correct
the situation, and presumably the firewall tool should also know
In the realm of usability, consistency is paramount. My semi-
ambitious wish list:
1. Provide a single program in a common place. The user
shouldn't have to think (too much) when looking for the
printer configuration tool. Red Hat's "System Settings"
sub-menu is probably the most obvious; remember that
Microsoft has long used "Control Panels->Printers", and
people "switching" from Windows will be looking for
2. Use the supplied APIs to get the available drivers and
devices. Right now each distro seems to be maintaining
their own (insert your buzzword) database of printer
drivers rather than asking CUPS for a list of printer
drivers it knows about. The result is that each GUI
provides a different list of drivers/devices than the
other or the CUPS web interface, which is confusing.
Why do we want to confuse the user?!?
3. Manage distribution-specific details (i.e. Firewall
and other security features) for the user. Right now
only SuSE seems to have any checks in place for iptables
and SELinux will only increase the chances that certain
printing-related features don't work as expected. ALL
security features need to be easy to use and not get in
the way of users, otherwise they will just turn them
completely off or choose another platform/distro.
CUPS 1.2's web interface is, IMHO, a step in the right direction
(but hey, I'm biased ;) in that administration and printer
installation/configuration happen in one place for the user.
> - - What is the scope of configuration options? Could you provide examples
> of the configuration options for a very basic printer, two or three
> intermediate ones, and one or two high-end machines?
All printers have some common configuration information:
Name (queue name, sometimes human-readable, e.g. "LJ4000")
Description (human-readable text, e.g. "HP LaserJet 4000")
Location (human-readable text, e.g. "Building 4 Room 301")
Device URI (geek-readable, e.g. "ipp://184.108.40.206/ipp")
Printer Driver (PPD filename, e.g. "hp4000_6.ppd")
Page Size (e.g. "Letter", "A4", etc.)
Most of this can be auto-assigned via device discovery, and this is
how CUPS 1.2 does things...
Many printers provide optional accessors such as auto-duplexers
and extra paper trays. These show up as "installable options"
in the PPD file and must (currently) be manually selected by the
user when they setup the queue:
Auto Duplexer: Installed/Not-Installed
Large Capacity Tray: Installed/Not-Installed
Most printers offer additional device output/quality options:
Media Type (plain, glossy, matte, etc.)
Media source (auto, tray 1, upper, lower, etc.)
Duplexing (1-sided, 2-sided long edge, 2-sided short edge)
Color Mode (grayscale, color, photo, etc.)
Resolution (600dpi, 2880x1440dpi, etc.)
Output Tray (top, side)
High-end printers (basically copiers with built-in computers)
typically offer finishing options:
Staple (top-left, side, saddle)
Fold (booklet, Z-fold for brochures, etc.)
2/3 Hole Punch (top, bottom, left, right sides)
Mailbox (next available, specific slot, etc.)
> - - Is there more information of possible alerts and event notifications?
The IPP notifications spec, along with the CUPS IPP implementation
guide, provides the supported alerts/events that can be monitored.
Basically everything you mentioned, but with more state/context
information so that users/apps can determine whether the event
is worth responding to.
> - - Are alert codes standardised between manufacturers so the equal error
> messages can be provided, or are there differences?
There is a fair amount of standardization, but some devices have
special hardware/conditions with non-standard messages. CUPS 1.2
includes support for vendor printer-state-reasons to allow vendors
to add custom stuff and have UI's display something reasonable.
> - - Are there more roles that need to be considered? For example, is
> Raymond's Aunt Tillie a combination of some of the existing roles
> (having less knowledge, though), or are there roles that haven't been
> considered so far?
Raymond's "Aunt Tillie" example is, um, somewhat overstated. His
Aunt Tillie is a pretty advanced home user, what with the home
network and multiple computers.
It might be more productive to focus more on classes of users that
perform all of the classic printing roles, for example:
1. The One Computer User - S/he has one computer and one
printer. If s/he uses any networking, it is to do email
and surf the web.
2. The Home Network User - S/he has two or more computers
and one or more printers on a (wireless) network. S/he
manages one of the computers as a server for the rest,
sharing printers, etc. as needed.
Conceptually, the One Computer User is the easiest to support and
requires the least amount of software to do it, but right now we
do a really bad job of supporting them. If the various printing
and Linux forums are any indication, printer configuration is too
hard for them and the bundled drivers do not work.
The Home Network User isn't all that much more difficult - we just
need to make it easy to share the printers from one of the computers.
Again, the *configuration* side of the equation is the major stumbling
CUPS 1.2 should make life easier for these (and larger) users, but
we need to make sure that the Linux distros integrate it properly...
Did I say it was important that we talk about the installation issue?
Michael Sweet, Easy Software Products mike at easysw dot com
Internet Printing and Document Software http://www.easysw.com
More information about the Printing-summit