Proposal: Create a standard default location for pictures

The problem:
There is no default location within each user's $HOME for pictures from
digital cameras.

The solution for GNOME specifically:
Use GConf to provide a default location. (more detail below)

Why is this a problem?

For inexperienced user Alex:
   The first time he brings pictures from a digital camera system on their
   computer, Alex must make a series of decisions about where to store the
   pictures.  The second time he does so, he must either remember where
   they put the first set of pictures, or pictures will be scattered in
   different locations.  Each time Alex wants to view, edit or otherwise
   manage the pictures, he must remember where they are.  Plus, like many
   other inexperienced users, Alex really doesn't quite understand this
   whole directory/subdirectory filing thing.  He knows that his pictures
   are _somewhere_ in his computer, but every time he wants to look at his
   pictures, he has to stumble around until he finds them.

For experienced user Betty:
  Betty uses a number of different tools to access and manage her digital
  pictures.  She uses gThumb to import them and GwenView to manage them,
  and The Gimp to edit them.  Because there is no standard location, she
  has to teach every program she uses where her images are.  She tries new
  programs, too.  Some of the new programs she uses aren't sophisticated
  enough to remember the last location she navigated to, so every time she
  opens such a program, she must spend time navigating to the root
  directory in which her pictures live.

For developer Carl:
        Carl is working on a program to allow Betty and Alex to manage their
        digital pictures.  Carl would like to allow his users to focus on
        their pictures -- not on their file manager.

For developer Daisy:
        Daisy is working on a really cool system that would allow images to
        come off of cameras and onto the computer automagically.  She wants
        to make as much happen without user intervention as possible, so
        she'd like to be able to make an assumption about where the pictures
        should land.  She can get part way there by knowing the date that
        the photos were taken (from the EXIF information), but she wonders
        where she should put the pictures. In the users $HOME directory?
        Should she just define a location and hope that the user can
        manually find it?  Unfortunately, no other program will know
        where her program put the pictures.

For developer Ed:
        Ed is working on an application that would allow Alex and Betty to
        share their photos with their family members.  It is really forward
        looking and will allow automagic sharing of the photos via IM,
        P2P and the web.  Ed wants as much to happen automatically as
        possible; he'd like to be able to look and tell if there are new
        images since the last time his program ran.  Does he need to make
        the user wait while he scans all of $HOME? Should he also look
        in /var/www ?   Somewhere else?

What should be done about this problem?

Just as $HOME/Desktop has become a de facto standard for the KDE and GNOME
desktops, $HOME/Pictures should be the standard root location for digital
pictures.  This will allow Alex not to worry about it with new programs,
and will give him a high probability of finding his pictures even if he
works with old programs.  Betty can change the location, if she wants to
do so.  Carl, Daisy and Ed can let their applications focus on the
pictures, rather than on the file selector.

On a more detailed level, perhaps $HOME/Pictures/camera-name/YYYY/MM/DD/
might be a good location for default picture imports.  While not all
digital cameras produce unique filenames over their useful lifetime, few
will start reusing image names within a given session or day.  The
existance of standard top level Pictures root is significantly more
important than how applications organize photos within that root because
inexperienced users will likely pick one (or a complementary) set of
applications and use them and advanced users are more likely to override
any automatic file arrangement within that tree in any case.

What hasn't this been done before?

$HOME has traditionally been the user's playground, and the *nix userbase
has been limited to those both interested and competent in managing their
own files.  As adoption of consumer-focused desktop systems increases,
this has become an invalid assumption.

What do other desktop operating environments do?
In Windows XP, a "My Photos" folder is created automatically.  In Mac OS
X, a "Pictures" photo is created when the user account is created.

Who can enforce a solution?
No one.  But that doesn't mean nothing should be done.

What should be done?
The GNOME project should adopt a standard location, using the GConf
system, to store a default Pictures directory.  In English environments,
that directory might, in fact, be called "Pictures".  But, by using GConf,
the actual directory name can be different because of i18n concerns.

The KDE project should adopt a standard location, using the KConfig system.

GNOME and KDE photo-handling applications should start to look at these
locations to see where they should store photos and where, if user navigation
is required, they should open their file selection dialog boxes.

Folks at are working on a standard for sharing
configuration information across desktop environments.  That is great,
there is no need to wait for this standard to be complete.  There are
already many items in Kconfig and GConf which will need to be transitioned
into any new, lower-level, standard.  Adding one more will not make this
job harder and will provide a win for useability in the meantime.

What location should be adopted by the KDE and GNOME projects?
This proposal suggests that we adopt $HOME/Pictures as a
default location on English language systems.  Because the actual
pathname is stored in the desktop enviornment's configuration system,
applications should not even need to be aware of what the true directory
name is.

Why not "My Photos"?
A large number of potential users will have seen "My Photos", but the
space in the directory name makes for less confortable use of this
location from the command line.  (Besides, it sounds so Fisher-Price!)

Why not "pictures"?
While *nix systems (and their users) have a traditional aversion to
capitalization, it is believed that most ordinary desktop users expect and
appreciate capitalization.  Also, the capital letter will help the
location stand out in a sea of small case files.  The de facto
$HOME/Desktop location provides a naming pattern that should be followed
for HIG consistency.  And, finally, because some users will be switching
(back and forth?) between Mac OS X and the KDE and GNOME environments, the
commonality of "$HOME/Pictures" provides a win for usability.

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]