Activities and the move to context-oriented desktops
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.
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:
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:
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:
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:
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.
"
Index entries for this article | |
---|---|
GuestArticles | Byfield, Bruce |
Posted May 28, 2009 3:07 UTC (Thu)
by flewellyn (subscriber, #5047)
[Link]
Not necessarily a bad idea.
Posted May 28, 2009 3:50 UTC (Thu)
by lothar (guest, #14052)
[Link] (1 responses)
Posted May 28, 2009 5:25 UTC (Thu)
by pkt (guest, #53879)
[Link]
On the other hand, a way to automatically and dynamically build a "context" by just looking at what the user is doing right now is currently missing and mylyn (to the extent that I understand it) is mainly about that.
E.g., imagine the system "remembering" that when you are in your "graphics design" activity, you are very likely to be using gimp, inkscape etc, so it preloads parts of them in RAM to make them really fast to start.
Posted May 28, 2009 5:12 UTC (Thu)
by mjthayer (guest, #39183)
[Link]
Posted May 28, 2009 7:45 UTC (Thu)
by zdzichu (subscriber, #17118)
[Link] (1 responses)
Posted May 28, 2009 11:14 UTC (Thu)
by nedrichards (subscriber, #23295)
[Link]
It's a concept designed specifically for the constraints of netbooks, particularly resolution and screen size and as such it may not work as well on much larger desktop or laptop screens.
Disclosure: I work on Moblin at Intel.
Posted May 28, 2009 12:12 UTC (Thu)
by nix (subscriber, #2304)
[Link] (2 responses)
I'd say a better way of putting it is that activities are useful if you switch tasks a lot: they mean you can put Plasma widgets in appropriate configurations for each task and have them follow the tasks around, while if you only used non-linked virtual desktops you'd find the widgets static and thus much less useful.
The advantage of not linking virtual desktops and activities is, to me, simply that you can have multiple desktops associated with the same activity, and changes to the widgets in one desktop propagate instantly to the others. If you linked the activities to the desktops, and you used several desktops for one activity, you'd need to make any changes three times.
Activities are a very nice concept, but, er, they're not revolutionary, sorry, although maybe they have revolutionary consequences. If anything was revolutionary it was the plasmoid idea --- somewhat pedestrian itself in hindsight --- that your desktop background could be more than just a file folder. Once it was dynamic at all, allowing saved, interchangeable states (which is basically what activities are, counting window presence as part of the state) seems a straightforward generalization. (I was actually surprised find that KDE4.0 hadn't done it already, and chalked it up to Plasma's unfinished state in that release.)
Posted May 28, 2009 12:59 UTC (Thu)
by nye (subscriber, #51576)
[Link] (1 responses)
I never interact with my desktop - it's just a backdrop for whatever I'm doing if that happens not to cover the screen, which is uncommon. If I wanted an interactive window, I'd use an interactive window and get the benefit of the usual alt-tab behaviour, and other window management features. Hence I personally find the Plasma desktop to be a flashy gimmick of no real value or interest - so far no real examples seem to have been given of how it's used for anything but bling - so activities seem rather useless.
Posted May 28, 2009 20:39 UTC (Thu)
by nix (subscriber, #2304)
[Link]
One thing I'm not clear on (because I haven't looked) is how much of
Posted May 28, 2009 13:36 UTC (Thu)
by dskoll (subscriber, #1630)
[Link] (2 responses)
Posted May 28, 2009 19:13 UTC (Thu)
by joey (guest, #328)
[Link]
For example in Xmonad I have workspaces with different layout rules, which are tuned for different activities like coding, chatting, web browsing, reading ebooks, etc.
Posted Jun 3, 2009 3:11 UTC (Wed)
by GreyWizard (guest, #1026)
[Link]
Posted May 28, 2009 19:13 UTC (Thu)
by dlang (guest, #313)
[Link]
Posted Jun 4, 2009 9:12 UTC (Thu)
by forthy (guest, #1525)
[Link] (1 responses)
What I miss is a way to get a conclusive environment on multiple
computers. I've a laptop, a desktop at home, and workstations at work. For
the workstations at work, NFS provides a solution - log in on any of the
computers, and your mail, newsgroups, calendars, address books, desktop
settings, etc. are all synchronized and up to date (actually, they aren't
synchronized, they are just stored at one central place). For the other
two computers, IMAP-based e-mail is synchronized, but the rest more or
less falls apart. So what is also necessary is a facility to synchronize all those
settings across computers, especially mobile ones where NFS is no
solution. Putting .kde4 into a git/hg/bzr repository might give some
improvements, but for news, the next difficulty is that I'm using
different news servers depending on where I am - simple article numbers
for which articles I've read aren't sufficient. So while I like the idea of a context-oriented desktop, the next step
is to make sure that a context is something you can transfer and
synchronize between computers. And with all the fuzz about "ext4 ate my
files", please simply use a DVCS for storing and synchronizing
contexts.
Posted Jun 4, 2009 14:14 UTC (Thu)
by Duncan (guest, #6647)
[Link]
Attach that thumb-drive to your keys or ID card and it becomes
Of course that doesn't directly deal with challenges like the different
(FWIW, I'm a heavy news user myself, but while I use KDE (still 3.5
Duncan
Posted Jun 5, 2009 15:21 UTC (Fri)
by Penn (guest, #1890)
[Link]
http://skliarie.blogspot.com/2008/11/my-45-workplaces.html
I think fvwm would allow do further customization to change the FvwmButtons menu in the corner to be activity-specific (for the particular workplace to include the most used buttons and automatically open most frequently used windows for the activity), but for fvwm it would be is manual process which I would like to avoid.
What a pity gnome is not as customizable as fvwm and the technology of'95th is better than 2009th for me...
Activities and the move to context-oriented desktops
Activities and the move to context-oriented desktops
switches between programming tasks. I can envision a similar powerful use for the
Desktop. Tasktop (the commercial part of Mylyn) already shows what's possible by
integrating email and web browsing into a task focused environment.
But in order to do the focus/filtering that Mylyn provides and that makes it so powerful, the
desktop environments need to define APIs, so that they are interoperable.
Activities and the move to context-oriented desktops
Activities and the move to context-oriented desktops
moblin2 WM
moblin2 WM
Well, this was as clear as mud:
Activities and the move to context-oriented desktops
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.
How does carrying your computer about relate to a desktop (background/ widgets/visible apps) that changes between configurable sets on demand? And what on earth is 'basic productivity'?
Activities and the move to context-oriented desktops
Activities and the move to context-oriented desktops
all the time, or if you bind a key to windowshade your app (trivial with
any decent wm). Then you can have a bunch of per-app widgets (generally
folder widgets) giving things like graphical file management (useful? yes,
if, say, you're working on something with images in it: instnt
thumbnailer!) on a per-project basis.
plasmoid functionality you can bind to keys. (Next time I'm near a system
running X I'll have to check, but I'm on the wrong end of a modem right
now.)
Hey you kids! Get off my lawn!!!!
Hey you kids! Get off my lawn!!!!
Hey you kids! Get off my lawn!!!!
Activities and the move to context-oriented desktops
Multiple computers...
Multiple computers...
thumb drive. It gets difficult when it's different OSs at each place (tho
individual x-platform apps may still be synced), but when it's the same
general OS or at least the same UI (say KDE on Windows as well as X on
various Linux distributions and BSDs), one's home dir, with all the usual
KDE and etc config, can often be mounted from the thumb drive no matter
what it's plugged into.
your "computer pass key" that brings your preferred working environment,
possibly including open applications and etc, to whatever you plug it
into.
news servers you mentioned, but to some extent that can be dealt with
using scripts triggering on that geo-location data, or sensed hardware IDs
or the like if it's only a few machines one switches between regularly.
mostly, as my aging Radeon 9200 doesn't cope so well with KDE4's effects
at the 1920x2400 screen size I run) as my desktop of choice, I use the GTK
based pan news client. It does some of what you want with its multiple
server setup, but would still need some tweaking and workarounds as it
doesn't cope well if it can't access a configured server, so some scripts
to change out server config and a but of working around its limitations
would still be needed. You're welcome to drop by the pan user list if you
like, available on gmane.org's list2news for news clients, as I
participate, or with subscription info available from the
pan.rebelbase.com homepage.)
Activities and the move to context-oriented desktops