By Jake Edge
August 17, 2011
The KDE project had quite a number of talks at the Desktop Summit—as
would be expected—but there was definitely a unifying theme in many
of the
talks: Plasma Active.
This relatively new sub-project is an attempt to
build a cross-device interface for tablets, phones, media centers, and
other embedded Linux devices. The descriptions and demos look
interesting, and Plasma Active seems to break some of the molds that have
arisen around how we interact with devices.
Sebastian Kügler gave an overview talk titled "Plasma Active - Conquering
the Device Spectrum" that looked at the motivations behind and plans for
the project. It grew out of a recognition that there are two main players in
the mobile market today, iOS and Android, both of which use parts of the
free desktop stack, but not openly. Both are "more or less
proprietary", which leaves quite a few people that are not served by
either. There are other players (e.g. RIM, WebOS), but those don't really
have an ecosystem around them and lack for apps. There is a need, he said,
to create a community in the mobile space.
Kügler and others started thinking about what could fill the gap left
over by iOS and Android. They wanted a "freedom device" where the user was
in control. It would deliver what the user wants, and not what Android or
the application wants the user to have. Importantly, it would also be an
"elegant and beautiful" interface that would make friends
say "I want that", he said. It absolutely "needs to be
an open system", without lock-in to a single vendor or service.
The mission statement for the project came out of that thinking:
"Create a desirable user experience encompassing a spectrum of
devices". A spectrum of devices is important Kügler said
because the device landscape is constantly changing. "Yesterday it
was smartphones, now it's tablets, I don't know what it will be in the
future", he said.
Plasma Active will encompass a complete software stack, which is currently
based on MeeGo and openSUSE. That stack will continue to be
free-software-based,
because "hackability implies a free software stack", he said.
The interface needs to be touch-friendly, but many devices and systems
today already have that. If that were all that Plasma Active brought to
the table, it would "just be another player in the market".
It needs, he said, some unique features that make it stand out and make it
desirable.
One of those unique features is the Contour shell,
which is envisioned as the workspace for Plasma Active. It is
activity-centric, not application-centric, he said. It will adapt to the
context of what the user is doing, and will try to recommend likely actions
based on previous usage.
Another unique feature of the interface is the idea of
"Share-Like-Connect", which integrates the social web into Contour. For
each type of object, there will be options to share the object with others
(e.g. a photo to Flickr, Facebook, or a free service), connect it to the
current activity (or another resource), or rate the object. The options
will reflect the type of the object (e.g. a file, a contact, a web page
URL, etc.), and will be extendable by plugins written in JavaScript or other
scripting languages. The idea is to "make hackability accessible to
people who don't write C++", Kügler said.
There will also be a set of "nicely integrated apps", some of
which will derive from existing KDE applications. So, Calligra Active and
Kontact Touch use the existing code bases, while
scaling them down and making them touch-friendly. Apps can be written in
pure QML, which also helps reduce the barriers. Since it is a normal Linux
stack underneath, traditional applications can be run as well, or you can
run MeeGo applications, though those applications may not integrate perfectly.
For developers, Plasma Quick provides a way to speed development of
applications. It builds on top of Qt Quick (which uses QML) and JavaScript
using Plasma as the runtime. It makes app distribution easier as well,
because you can write an app, "pop it onto a USB stick, plug it in,
and run it". You can also write more traditional C++ applications,
and use QML for the user interface, which is the path that Calligra Active
has taken, he said.
Integrating with the operating system is where Kügler has been
spending much of his time. He has been building Balsam
Professional live images for easier installation and testing. Those
images are based on openSUSE 11.4, but there is ongoing work on MeeGo both
for x86 and ARM, he said.
There are also efforts to get hardware vendors involved. The first step is
to make Plasma Active product-ready, he said. The project is
"actively interacting with vendors", he said, and there are
companies making
commercial support available. There is also consulting for integration and development available. A "commercial ecosystem" for application developers is something being worked on
as well, he said. The goal is to "get this system into the hands of
real users".
Activities
Ivan Čukić dug into Plasma activities in his talk, and he called them
"the helpful Big Brother". Essentially activities are used to
collect up related applications, files, windows, and other parts of the
interface and the user can easily switch between them using the aptly named
"activity switcher". With activities, Plasma Active converts the desktop
from something
that is application-centric to a document-centric workflow.
Underlying activities is Nepomuk, which can "track everything that
you do", he said—thus "Big Brother". That data can then be analyzed to determine which
are the important documents to the user, which documents go together
(because they are often used together), and so on. It is completely based
on the usage patterns, rather than the contents of the documents, he said.
That allows things like "favorites" and recently used document lists to be
context dependent, so that you "won't get completely useless things
in your list", he said. Those lists are also not limited to just
documents, but can include all sorts of other objects, like contacts
(email, IRC, instant messaging, ...), web pages visited, etc. The lists
become activity-specific and can thus provide more relevant information, he
said.
The Nepomuk tracking is already present in current versions of KDE, but
applications have not yet started reporting information on object usage.
There are also multiple back-ends that can be used, including a version of
Zeitgeist that pushes its information into Nepomuk. In addition, all of this
infrastructure is applicable to both Plasma Workspaces on the desktop and
Plasma Active for devices.
More on Plasma Active
KDE hacker Marco Martin and interaction designer Fania Jöck shared the
stage for another presentation about Plasma Active, but more directly
focused on the user experience design and features. Jöck outlined the
"big picture", noting that Plasma Active is really an umbrella project that
encompasses pieces like Plasma Mobile, Contour, Share/Like/Connect, and
active applications.
The model for Plasma Active is to make the system adapt to the user, rather
than the normal situation that is the other way around. She likened it to
the difference between a supermarket and a restaurant. In a supermarket,
you have to search for the things that you need. Whereas, in a restaurant,
the waiter will bring you what you need next. Plasma Active is looking to
implement the restaurant model on mobile devices.
In the Contour shell, the idea is to take context, patterns, and activities
and "squeeze them to give recommendations" to the user, she
said. Context is things like geographic location, time, active files and
applications, and the current activity. Everyone has different patterns,
she said, and Contour will try to track those. Some will get up in the
morning and check email and Facebook, but others will have different ways
of starting their day—and working throughout it.
Using that information, Contour will (eventually) try to come up with
recommendations, which are "propositions for actions that will
dynamically change", based on various factors. While the user is at
home, the activity switcher will show "relevant things you might do
there". While at work or at a university, different activities will
be recommended. The "recommendation overlay" will adapt to the current
activity and recent action history, she said, but it is all still "a
bit theoretical" right now.
After a demo of Contour and Plasma Active, Martin said that "a big
part of Contour is data and a smart representation of data". KDE
has the existing infrastructure with Nepomuk and the activity manager, and
Contour is in some sense a visualization of the data collected.
QML is in a "way more central place" for Plasma Active, as
compared to Plasma Workspaces, Martin said. QML manages and lays out the
application windows as well as managing the panel and the animations used
to switch activities. Though they Plasma Active packages aren't Plasmoids,
they fill the same role and are often called "QML Plasmoids",
Martin said.
An audience member asked about how activities are created and whether you
could do something like tag all of the internet activity for the last five
minutes into a new activity. Martin said that new activity creation is a
very manual process at this point, but that they would like to detect major
changes in what the user is doing and allow the user to define that as a
new activity. It may be difficult to do in practice, and he's not sure how
much of it can be done semi-automatically.
Conclusion
It's clear from the number of talks on Plasma Active and related projects
that the KDE project as a whole is very excited about the possibilities
that it brings. The project seems to be taking the right steps to try to
build an application ecosystem and to engage hardware makers as well.
While many have written off the mobile space as a two-horse race, it is
likely to be way too early to make that determination. Once Plasma Active
is fully working, and possibly pre-installed on real hardware, it could
certainly "become a third player in the mobile space" as
is the plan according to Kügler
[ I would like to thank KDE e.V. and the GNOME Foundation for travel
assistance to attend the Desktop Summit. ]
(
Log in to post comments)