May 27, 2009
This article was contributed by Bruce Byfield
The next buzzword on the desktop is likely to be "Activities." Today, the
chances are high that you have never heard of them, or, if you have, that
you have not identified the different uses of the term as having anything
in common. However, what all the usages do have in
common is that they signal a move away from a static desktop towards one
that changes with the tasks being performed.
Any more exact definition is elusive. All the same, Activities are
already part of the KDE 4 series, and scheduled to become more
prominent in the upcoming 4.3 release. Similarly, GNOME 3.0, which
is due out next year, will include its own, more limited concept of
the term. But, under any implementation, the term signals a shift in the
desktop, with free software developers leading the way.
The concept of Activities originates in Sugar, the desktop designed for
the One Laptop Per Child (OLPC)
project. In Sugar, "Activities" is used as a synonym for
"application." However, Gary C. Martin, one of the coordinators
for Sugar's Activity Team, explains that the change is more than
semantics or marketing. Because Activities run within the general
collaborative frame of Sugar, using them is intended as a very
different experience than running a standalone application on a
traditional desktop.
For me, the key parts of Activities are that
they combine
concepts of document, executable, and collaboration state into a
single, simple to use user interface. With the
Activity state automatically kept in the Journal, it's easy to
resume or reflect on past work, and, with realtime collaboration
as a first class feature, peer sharing and group work is
strongly encouraged.
In other words, Sugar's Activities are not just about running an
application, or learning how to produce a spreadsheet or a
presentation. Instead, they are conceived as part of the total
learning experience that Sugar is designed to provide.
"It's not about producing documents in applications," Martin
explained. "It's the learning that happens while doing Activities.
Activities are at the heart of learning in Sugar. They support a class
working together, seeing what others are doing, sharing, learning, never
losing their work, and [being] able to reflect on that work with their
parents and teachers." Although the mechanics of running an Activity
may not be all that different from running an application in GNOME or KDE,
what matters is the context in which it is used.
The KDE implementation
Part of the design philosophy of KDE 4 is to accommodate the
growing sophistication of users, according to long-time KDE
developer Aaron Seigo. Thanks to mobile devices and gaming
consoles, many users — particularly younger ones — find
a static desktop confining. Nor is a traditional desktop
especially suited for multiple, specialized uses that range from
office productivity to social networking. Depending on whether
people are working, attending classes, or socializing, their ideal
desktop could vary considerably.
Even within a single activity, desktop needs can change, Seigo
said:
Watching people use their computers, we noticed that a
lot of people who work on more than one project at a time were
manually arranging their icons between projects,
Graphic designers, for instance, would have two or three
projects they're working on. When they worked on one project,
they would take all the icons and files they're working on, and
they'd put those icons on the desktop. Then, when they were done
with that project, they'd put those icons back in a folder that
wasn't showing on the desktop, and move all the icons for a
second project out on to the desktop.
To simplify computing for these more sophisticated users, the KDE
concept of Activities was born: desktops with their own custom
sets of widgets, icons, and applications, that could be switched
by keyboard shortcuts or by zooming out via the Desktop Toolkit,
the cashew-shaped icon on the upper right of the desktop.
Originally, these desktops were called "containments" by Chani Armitage,
the developer who first implemented them:
But I didn't really like
the word 'containment' because it was pretty technical. I'd been using an
OLPC for a while at the time, so I actually got the inspiration from there.
We've kind of co-opted the term and put it to a slightly different meaning
than what they've been using.
In some senses, Activities resemble virtual desktops, which KDE
and other desktops have had for years. And Seigo acknowledged
that "they're complementary ideas." However, he
suggested that the resemblance depends on how you use virtual
desktops. If you use virtual desktops mainly to separate out
windows — for example, to keep a virtual terminal always
ready, or to run a full-screen browser — then there is
little to choose between virtual desktops and Activities.
By contrast, if you use separate virtual desktops for different tasks, then
Seigo suggested that Activities provide a superior experience, one closer
to that of mobile devices and more suited to some of the functionality
planned for the KDE 4.4 release (see below). Still, because of user
demand, KDE 4.2 allows an Activity to be tied to a particular virtual
desktop by changing a configuration
setting, and the final version of KDE 4.3 will include a setting for
the same task.
Seigo emphasized that the increased visibility of Activities in
the 4.3 release is not intended to pressure people to use them.
"What's really nice about this concept is that you can
completely ignore it," he said. "It's completely
unobtrusive." After all, he added, "for certain people,
the current metaphors work well," especially those who do
not carry their computers about or those who use them for basic
productivity.
The main change heralded by Activities, according to Seigo is
that, unlike on the traditional desktop, they do not enforce one
particular way of working for every task:
This is no longer about forcing people into a mode of
work or behavior. Rather, we're trying to build
interfaces that are relevant to the device you're using them on,
and also relevant to the user — which means where are you
and who are you? That's something that hasn't started to sink in
with a lot of people.
People are demanding
more flexibility, and, with the current state of hardware, it can
be provided today without any undue strain on system resources.
GNOME 3.0's workspaces
Possibly because of KDE's use of the term, the implementation of multiple
workspaces (aka virtual desktops) is causing some confusion about GNOME-Shell, which is scheduled
to become the basis for GNOME 3.0.
As implemented so far, GNOME-Shell's Activities is an overlay mode for
organizing workspaces and arranging groups of windows on them. To a large
extent, it resembles the Zoom view in KDE. However, some people are
incorrectly
referring to the workspaces themselves as Activities, a change in reference
that might just stick, and make GNOME 3 more closely resemble KDE 4.
So far, these workspaces seem to function the same as those in recent
versions of GNOME and KDE, with no capacity for separate customization. Nor
have any plans to extend their functionality been announced. But, with ten
months before GNOME 3.0's estimated release, that could change, especially
if KDE's Activities become widely-used. At this point, though, even if
the reference is different, the use of the term does suggest that GNOME
developers are also thinking about contextualized computing. And even if
the implementation remains what it is today, the overlay mode remains a
de-emphasis of the single, static desktop.
Coming attractions
Exactly how GNOME 3.0 will implement Activities remains uncertain. Meanwhile,
KDE developers are already contemplating future developments for
contextualized computing. Armitage talked about allowing Activities to
be de-activated and stored. Perhaps, too, she mused, applications
could become more contextualized; for example, KMail might be set
so that it used a particular address book when opened on a
certain Activity.
A change already planned for KDE 4.4 is to associate an Activity
with a certain location via the new geo-location layer in KDE.
University instructors, for example, could have one Activity with
their notes and slides that would automatically open when they
started KDE in the class room for a particular class, and
another Activity with their research that started in their
offices. "You would basically train the computer,"
Seigo said. "As you move around, the interface comes to
you."
Meanwhile, the different uses of the same term can obscure exactly
what each project means by it. But, as Seigo said:
The
idea that binds them all is a movement towards task-oriented
computing. Our viewpoint is that tasks are highly-contextual: What
are you doing? Where are you doing it? And who are you?
Whether Activities in any form will come to dominate the desktop
is still uncertain. Possibly, they will remain the interest of a
relatively small set of users. However, regardless of their
ultimate success, the fact that the context-based computing is being
emphasized more strongly is a shift in thinking about the desktop, and one
that free software is leading. Virtual workspaces -- let alone KDE's
Activities -- remain non-standard on Windows, while OS X's Spaces are
turned off by default. On both, the static desktop remains the norm.
"Nobody else is looking at these things," Seigo
said. "You don't see it on Windows and you don't see it on
Mac. This is very much an innovation that free software pretty
much owns. And I'm really happy to see that in GNOME and KDE
we're right at the front of this development."
(
Log in to post comments)