Imagine being able to search for help online without leaving your desktop application. An About dialog you could use to contact the developer. A site where you could post works in progress directly from your desktop for criticism. These are a few of the entries in KDE's recent social desktop contest.
They are also some of the first examples of what Aaron Seigo of the KDE project calls "freedom services" -- applications that bring cloud computing directly to your computer and seamlessly integrate the desktop and online services.
The social desktop was first proposed at Akademy, the yearly gathering of KDE developers, in 2008. In his presentation, Frank Karliltschek, the founder of openDesktop.org, a meta-portal for new applications that includes social networking features, advocated adding social networking features to the desktop.
So far, the implementation of the social desktop in KDE is limited to a widget that lets users of openDesktop.org interact with friends and others users nearby. But behind the scenes, KDE developers have been developing a set of open specifications that can be used for writing other social desktop applications.
In addition, KDE developers have been articulating the philosophy first sketched out by Karlitschek. Seigo explains, "We see the benefits to cloud computing and online services, but there is a great concern about them being open enough that we can use them and depend on them, and that people can have their rights as individuals respected. In other words, [we want] online services that match our licensing and ideals about software."
According to Seigo, what is needed is applications that any development team -- KDE, GNOME, or even Windows or OS X -- can use to connect to online services. These services should have open specifications, and be cross-platform. They should also be controllable by the user, who should have the option to turn them off and to choose the online services they use. For instance, their backends should not be designed for a single set of online office apps, but be able to hook into whichever set the user happens to prefer.
Moreover, while information may come from online, freedom services have the advantage of using desktop interfaces, which still tend to be more advanced than browser interfaces. An early example is Minitube, which accesses content from YouTube, but displays it in a much more efficient interface than the one available on the actual site.
As Seigo describes these freedom services, they combine the best of the desktop and the Internet.
Development, he points out, is "often phrased in terms of offline or online, as if that is some sort of dichotomy we have to adhere to. [The situation] is often phrased in terms of, 'Will online services kill the desktop?' or "Will your phone only be doing online services?'" Despite being heavily used for fifteen years, online services are still in many ways separate from the desktop, with all online work being filtered through the single application of the browser.
"This is a very dualistic way of putting things that we don't think is realistic," Seigo says. "People aren't going to accept one or the other world. People don't want to care about that -- that's our job as technologists. Taking these applications from the web browser, putting them in interfaces that are more appropriate or integrating them with applications that we write for everyday purposes -- however you do it, we feel that dualism has to go away. We want to free the web from the browser"
For Seigo, overcoming this distinction between desktop and web is something that free and open source software is well-positioned to do, simply because no one else is doing it. "Right now, proprietary services tend to be focused on their own separate silo. They're doing their own thing, and often it's 'how do we make a business,' not really 'what can we do with these online services? We're trying to break through this wall."
The contest and its results
Having developed a proof of concept and laid out the development vision, the next step for KDE was "how to get people to use it," Seigo says. "How can we get this into the hands of users in a meaningful way, and how can we get more people sharing their ideas and adding them to the pot?"
With this goal, Karlitschek announced the contest on June 17. Prizes were a netbook from Dell for the winner and a one terabyte hard drive for the runner up, and $50 and $30 Amazon gift certificates for third and fourth place. Judging was done by Seigo and Karlitschek, and -- partly to emphasize that the idea was not confined to KDE -- Luis Villa of the GNOME project and Alexander Colorado of OpenOffice.org.
The original deadline was supposed to be August 25, but the deadline was extended for a month in the hopes to encourage more entries. As the entries were submitted, they were posted (naturally enough to a page on openDesktop.org.
Contest winners were announced October 9:
- First place: Téo Mrnjavac's Extended About Dialog for KDE Apps, which gives the developers the option of helping users to contact them directly via openDesktop.org.
- Second place: Marco Martin's Knowledge base widget, which provides a desktop search application for the openDesktop.org Knowledge base.
- Third place: Guido Roberto's libopengdesktop, a Glib library for social desktop applications that will help extend the concept to GNOME, Xfce and other desktops.
- Fourth place: Ni2c2k's PyContent, a KDE widget for showing the most recent items from a designated content site.
Other contest widgets include a KDE widget for the microblogging sites Twitter or Identi.ca, an applet for viewing new entries for openGNOMEDesktop, one of the sites that is part of openOffice.org, and one for asking questions that can be answered by others.
All the entries are available under the GNU General Public License and available as source code.
The entries suggest an emphasis on the practical, especially the development of basic tools for expanding the browser. Since many of these tools are never seen by users, to some they might suggest that the contest and its winners are decidedly minor.
However, while Seigo admits that "obviously, we want dozens or thousands of applications," he argues that the ten or so that were received represent a good start, especially since "this is a new, groundbreaking area in the free culture / free technology movement."
At any rate, Seigo says, like any venture into online applications, freedom services need participants to make them worthwhile. From this perspective, the contest is at least a start.
"We got a few people thinking to the point where they actually wrote a few pieces of software," Seigo says. "But, just as important, people are taking notice, are talking about the idea, and thinking about it. That's really a huge step towards what needs to be done -- getting online services freed and integrated into our software stack."
Karlitschek agrees. "We got great submissions, feedback and ideas. So now we have several different client libraries for KDE and for GNOME, different applications, different servers, and a lot of new ideas. So the contest was very successful."
Up and coming
Certainly the contest has contributed to KDE. The knowledge base application is scheduled to be a desktop widget in KDE 4.4, and the extended About dialog will be used in the next Amarok release, and possibly in the KDE core applications.
Further out, a developer meeting for the social desktop is planned for later in 2009. Plans are also being made for Silk, a browser integrated into the desktop that, like Google Chrome, will run each page as a separate process, and offer the option of allocating custom resources to each one.
Freedom services will evidently take several years to develop fully, but they are clearly central to KDE's concept of the desktop's future.
"Online services being proprietary as the status quo is taking a huge set of steps backwards from where we are today," Seigo says.
"I think a lot of people who have seen the rise of software are trying to use proprietary online services as a way to avoid this new era of software freedom. "If we're going to trust our computing to online services, and we're going to build huge economies around such services, we need to have freedom services."