The Coming KDE
Aaron Seigo discusses KDE’s new approach to managing change and the changes coming up in the next few years.
Aaron Seigo is one of the best-known figures in KDE. A developer on the project since 2000; a former director of KDE e.V., the non-profit organization that governs KDE; and currently the project leader for Plasma, KDE’s interfaces sub-project, Seigo knows KDE like few others. Recently, he took the time to talk about the current state of the project, explaining the importance of KDE’s ongoing transition to Qt 5 and outlining the changes he expects to transform the project in the next few years.
When KDE released its 4.0 release in 2008, the result was a then-unprecedented user revolt. Looking back four years later, Seigo recalls that experience as a discouraging time for developers, some of whom quit in reaction.
However, he adds that the experience also made KDE re-examine its approach to introducing new features. Avoiding the temptation to eliminate major changes altogether, KDE has opted instead to develop features in new applications like Plasma Active, KDE’s mobile interface, and then reintroduce them into Plasma Desktop, the desktop interface, starting with new libraries, then altering the desktop, and finally applications.
This approach, Seigo says, “helps us introduce changes only when they’re ready. We find that with the way we’ve been doing things in the last couple of years, even when we release big things, the response has been a lot more positive. As a community, we’re learning how to introduce changes better.”
Combined with the kind of code maturity that only 10 releases can bring, this change management puts KDE in a position that other innovative interfaces like Gnome 3 and Unity, both of which are still weathering their own user revolts, must envy.
“There’s always more that can be done,” Seigo says, “but it’s got to the point where it’s really quite serviceable.” But, never a project to coast, KDE is using its current stability in public perception and code to range further ahead.
Switching to Framework 5 and QtQuick
According to Seigo, the next major change in KDE will be the transition to Framework 5, the new development framework based on the upcoming Qt 5. In fact, in keeping with the new approach to innovation, the transition has already been going on for a year with the gradual release of libraries.
“It really comes down to Qt 5 being a lot more modular,” Seigo says. “Qt 4 was already modular, but, still, you had [for instance] QtGUI, which was a fairly monolithic thing that added all sorts of classes to do with the GUI. But with Qt 5, they’ve really taken it to the next level. All of the traditional desktop widget styles and the API that we use for all the desktop applications is moved into its own library inside of QT. And there’s a QML library, too, so you can now write QML applications without plugging in QWidget. They’ve also brought in some support for new technologies like Wayland [the proposed X Window replacement], which is going to be very important in the future.”
Seigo expects Qt 5 to be especially beneficial to those with more experience with Qt than KDE. Previously, if developers wanted, for example, the ability to archive files, “they’d have to link a whole bunch of libraries,and there was really no need for this – it was just how the classes had ended up,” Seigo says. “With Framework 5, each function will be opened up into its own library, and developers can use each independently. The dependency chain is really well-defined – we’ve got rules about what kinds of dependencies are allowed – so this really opens up the use of KDE libraries to Qt developers.”
Seigo sees the adoption of Qt 5 as the next logical step in KDE’s restructuring. Throughout the 4.0 release series, KDE has been becoming more modular – for instance, with the sound system being modularized in Phonon, personal information in Akonadi, and interfaces in Plasma. Now, “modularity has finally hit the lowest level of our libraries.”
So far, the change has been so unnoticeable that even KDE developers have sometimes overlooked it. Seigo tells the story of one developer who accidentally built the latest version of his software against the already-transitioned Qt 5 libraries. “It just built, linked and worked. It wasn’t until he actually went to the application and it complained that it couldn’t find the correct version of Qt that he realized what he had done.” When Framework 5 is fully implemented, users should not even notice that much.
While this transition has been happening, KDE developers have also taken the opportunity for some code cleanup. In particular, the transition has allowed KDE to consider “the things that we would like to see in Qt rather than in our libraries, because we think they should be integrated properly with other Qt classes,” such as currency and other aspects of localization.
Qt 5 is scheduled for release early in 2013. Assuming no problems emerge, the complete Framework 5 is likely to appear in KDE 11 in August 2012. After that, Seigo is expecting to complete a conversion of Plasma that might include integration of parts of Plasma Active into Plasma desktop – perhaps the spinner for Activities selection or Okular Active, the version of KDE’s document viewer that has been repurposed as an ebook reader.
“We already started a couple of releases ago. We’ve been slowly replacing things one or two at a time,” Seigo says, noting that the system tray and notifications have already been revised to work with QtQuick 2.0, a set of technologies that allows enhanced animations. “People don’t tend to notice except that things run smoother, and the animations are nicer – which is good.”
Community and Company
KDE has been redefining itself for several years now, first with the rebranding of itself as a community of developers rather than a software project, and the release of the KDE Manifesto, a statement of the community’s shared values.
By themselves, these actions might seem more cosmetic than anything else. However, according to Seigo, they were actually the groundwork for an ongoing process that, if successful, should keep KDE true to its roots while transforming it from a traditional free software project to something with aspects of a company.
One of the first moves in this direction was the announcement of Vivaldi (originally, Spark), a KDE-based tablet, in early 2012. Although originally scheduled for release in May 2012, Vivaldi has been delayed by manufacturing problems.
“It’s unfortunate that we weren’t able to get something out sooner,” Seigo says, “but we will be able to put out a much nicer device, and Plasma Active will have had that much more time to mature. At the same time, the window on the market that we’ve been trying to hit has not closed or been closing, because the status quo ecosystems, iOS and Android, have continued to follow the path they’ve always followed, making app buckets.”
Instead, Seigo hopes to position Vivaldi as part of the next stage in computer evolution – as part of an integrated, interacting toolset that includes not only mobile devices, but also desktops and media centers.
“We don’t see mobile devices just as a phone, or just as a way to play Angry Birds,” Seigo says. “We’re interested in how you integrate them into your daily life. Our assumption is that, at least if we allow them to, people are going to stop thinking of the boundaries between devices. They are going to start thinking of what the right device is for what they’re trying to do – if the devices work together and the experience is seamless enough.”
Seigo states that KDE currently has no plans to develop its own smartphone, “although eventually we’ll get there.” However, Seigo does envision a collection of different computing devices, comparable to a collection of task-specific kitchen knives, united by a common interface and capable of sharing resources and data. The future, he suggests is “drop-in appliances” for cloud-based computing or media centers, in which “you plug into your TV and you have a nice Plasma-driven interface that you can control from your Plasma Active tablet, and with everything syncing off your own cloud appliances. That would be really compelling for a lot of people and use-cases.”
To reach this goal, KDE most likely needs roles similar to those of corporate product managers and marketing directors – “a lot of roles that we didn’t have to deal with in the past. In the past we created software and threw tarballs on an FTP server somewhere and let distributions know it was there, but with Plasma Active, that’s not how it’s been done at all. We’ve taken a much more active role in defining the actual distributable images, but without excluding traditional distributions, either.”
Making an oblique reference to plans for a Gnome OS, Seigo goes on, “We’re not striving to make the KDE OS per se. But we’re trying to make more conscious decisions about what a well-integrated system should look like. Instead of looking to downstream distributions to read our minds on these matters, we’re trying to demonstrate here how good things can be, and how everything can come together.”
Seigo does not see KDE providing services, although he suggests that people already involved in KDE might set up their own companies to assist users. However, he foresees a “kind of hybrid model of companies operating both in and with the community to become more and more common. I think it’s an inevitable and maturing process.”
At the same time, he adds, “One of the things that we’ve been very, very careful about is keeping a very clear definition of community process vs. corporate process – not by creating firewalls, but by making sure that development happens, as it always has and should, within the community in an open fashion. We’re really committed to that.”
Seigo is talking about some radical changes, and he is mindful of the criticism that groups like Canonical and Ubuntu have faced when attempting to meld the community and the corporate.
All the same, you can hear the excitement in Seigo’s voice when he talks about KDE’s future plans. “We have the ability, in the next year here, to have a really important window of opportunity. Not just what we’re doing with Vivaldi, but in genral to bring out free-software hardware devices that are better than what’s out there. This could really be a significant piece of the puzzle for moving free software forward. It’s a new market and one that we can compete in if we’re diligent.”
Potentially, he suggests, free-software-driven hardware like Vivaldi could be as disruptive to current business practices as the iPhone was in its first release.
A Competitive Advantage
KDE is not the only free software culture thinking of such moves. Besides Canonical, Gnome has also been discussing such futures in the last six months. Such competition means that KDE faces numerous and determined competitors.
Still, Seigo remains convinced that KDE has a competitive advantage. “Plasma is the only free software system,” he says, “that has been designed properly to transcend the desktop while not only serving the desktop well and not requiring major rewrites as we move forward, but also being able to encompass other form-factors with different interactions principles – and to do so with a very small amount of additional code.”
The proof of this statement, Seigo maintains, is the collection of desktops that KDE has already built: Plasma Desktop, Plasma Netbook, and Plasma Active. “We can have a proper tablet user interface, we can have a proper media user interface, and we can have a proper desktop user interface – and we don’t have to compromise on any of these systems.”
By contrast, despite their efforts to be equally versatile, he considers Gnome and Ubuntu’s Unity as “making compromises constantly,” designing toward a lowest common denominator that fits imperfectly into any particular form-factor.
Seigo expresses extraordinary ambitions for a free software project – especially one with no formal corporate backing and a determination to remain true to its philosophical roots. But, if nothing else, its unique perspective on both coding and business should ensure that watching KDE over the next few years should be anything but dull.