If you ask a Linux (or BSD, or *nix) user what their favorite window manager is, there is a strong chance that they will tell you that they use KDE. The good people at KDE are set to release their next major version – KDE 4.0 – currently slated to drop on October 23, 2007. Until then, for those of us who are a bit more daring, KDE 4.0 Beta 1 is available now.
I spoke with Wade Olson, the North American contact for the KDE project about what we can expect. Wade has been in the software industry for 14 years as a programmer in C, COBOL, SAS, shell scripting, Java, and PERL. He’s done contract work with some heavy hitters in banking, media, and health. In addition to his work with the KDE Team, Wade is currently an I.T. Manager for a team that develops high-volume Java portlet web-based applications in Java, Spring, Hibernate and WebFlow, as well as JSR-168. Wade is also a proponent of cross-platform (web-based) applications, open protocols, and open document formats.
What is your “Official Designation” with KDE?
What specific area of development are you involved in?
My focus is on marketing and promotions for the KDE community.
Can you tell me a bit more about that?
The Marketing Working Group was formed after discussions at our 2005 aKademy conference. The KDE community continues to expand, and we try to stay well-positioned and prepared for future growth. The MWG is one example of KDE planning for the future and self-organizing. Sebastian Kugler, Martijn Klingens and I were elected as the inaugural members. I haven’t been impeached yet, so I must be doing something right. Our mandate/goal is to lead promotional efforts: press announcements, conference planning, release notes, application naming, unified messaging, etc.
Personally, I’ve always thought that KDE was very technically and architecturally impressive; so as a contributor, my efforts would be better spent conveying those benefits to others. I’m sure that users and KDE developers alike are happy that I stay out of our codebase. The MWG was therefore perfect for me. KDE is great – now how do we reach more people and what do we tell them when we do reach them?
Approximately how many programs officially make up KDE?
We don’t have an official count as to what constitutes an official KDE program or application. We certainly have central applications that handle almost every computing need: instant messaging with Kopete, audio with Amarok, CD burning with K3B; the list goes on and on.
With our “extragear” applications and the ones listed on kde-apps, we can safely say that hundreds of programs exist in the KDE ecosystem. For those that read this answer and think, “Way to avoid the question…” you can always browse KDE’s subversion trunk and see for yourself.
How many developers would you estimate to be involved?
Similar to the last question, it’s very difficult to give an exact answer. What constitutes a developer: some minimum lines of code? Number of commits daily?
Our Commit Digest is a great resource to see what goes on every week in the KDE codebase. Last week alone (the week of August 12th, 2007) , it shows that well over 200 different developers committed code to KDE’s code repository. OSS developers’ involvement ebbs and flows with “real life” getting in the way; certainly several hundred developers have worked on some aspect of KDE in the past calendar year. Of course, we can’t forget the valuable work of our artists, translators, and those that work on documentation. We have a “Credits” page on our website, but it’s tough to stay current. New initiatives like Google’s Summer of Code add new contributors all the time.
How many countries do these developers span?
The Commit Digest shows how active developers are each week by country. Typically, we might see weekly activity from thirty or more countries. A large map of contributors also shows how global KDE has become. We take pride that recent releases of the 3.5 series have translations in 65 languages.
What are the “powerful new technologies” that are part of the new libraries?
We’ve coined the term “Pillars of KDE” in reference to technologies that are the foundation for KDE 4: There’s Strigi for information extraction and desktop searching, Phonon for multimedia, Decibel for telephony, Solid for hardware abstraction, Akonadi for PIM data storage, Oxygen for icons and interface work, and Plasma as the new desktop metaphor.
fixing bugs and asking questions on mailing lists – I know it’s working.
It makes me feel stupid.
What do you see as being the most significant change in this new architecture?
To be honest, it’s the convergence of our new KDE 4 technologies along with other very important initiatives: documentation on techbase, developer improvements in the past couple of years like subversion for our code repository, using CMake by Kitware and valgrind, and EBN for code documentation and quality.
We’re giving developers the best documentation, libraries, environment and code checking tools we can. Time from both new and existing developers should be spent making awesome applications, not putzing with configurations and cryptic APIs.
When I see how fast new contributors get productive, fixing bugs and asking questions on mailing lists – I know it’s working. It makes me feel stupid.
Taking advantage of Phonon, Decibel, etc. will of course take time for applications. Already, I’m hearing about creative uses of Strigi. Amarok developers are working with Plasma developers for the Amarok 2.0 layout. Applications like Marble are taking advantage of Qt’s Arthur painting system. People are not wasting time in collaboration and implementation, that’s for certain.
What will the average user notice most about 4.0?
Well, KDE 4.0 is a big, big endeavor, and we’ve hopefully positioned ourselves well to really build on this new foundation over the next several years. There might be some initial growing pains as expected with any “dot-oh” release with 4.0; remember that the 4.0 release is the start of something new, not a finished product. Nonetheless, right away users will see a new look-and-feel with Oxygen, a new file manager in Dolphin, improvements in applications like Okular and KDE games that are well along in porting efforts, and the first Plasma desktop widgets. Things are still changing very fast; with two release candidate builds coming up, this answer will still probably change. The best answer to users? Get involved and decide for yourself. What’s important to you and what’s improving? KDE is getting so big that different users may have very different answers.
Over the life of KDE 4, users will see big efforts on usability, polish and consistency in the desktop. That may sound trite, but I’m really pleased with the prominence given to HIG, CIG and accessibility. Also, cross-platform applications will grow in prominence. Maybe, just maybe, there might be some eye candy somewhere.
What about administrators; what will they see that is different?
There has been great work done on KRDC, our remote desktop client. Klik2 will continue to advance virtualized applications as well. KDE’s commitment to Project Portland and D-Bus will of course assist in desktop integration. (ED: Wade also points us to the Kiosk Admin Tool)
you download, it’s the community
of people behind that software.
On a broader note, what do you see as the key advantages to the open source development model in contrast to the proprietary model?
Years ago, I saw arguments against the utility of the open source model stating that just because source code was available didn’t necessarily mean people would make use of it, or that certain products/algorithms were just far to complex to be understood by outsiders.
When you look at the level of work in the commit digests and changelogs you realize the talents of the people in the community. I see new names committing code every week. I’m not suggesting that KDE consists of ten million developers all writing one line of code – of course we have our core developers. Nonetheless, there really are people that find something wrong with their favorite program, set up a development environment, and send in a patch.
Even just a few lines of language translations can help people develop a connection with their software that they don’t get from buying a box on a shelf. So it’s not only the ability to contribute, but the satisfaction in actually doing so. KDE isn’t just the software you download, it’s the community of people behind that software.
Going back to the last question, I mentioned the complexity and difficulty involved with software. When you look at the level of work being done you’d be crazy not to be impressed. Have you seen the new painting options in Krita lately? Or how robust KHTML/WebKit is becoming from both a compliance and security perspective? These are not trivial efforts in the least. Not only are new developers getting involved, but we have extraordinarily seasoned programmers working on issues that make my head hurt.
Of course this doesn’t apply to only programming. Have you seen the Oxygen icons lately? I mean actually sat down and looked at them? It’s a crime to use them at lower resolutions. I can’t believe the talent level of artists we have; and it’s only possible because KDE is an open community.
It’s still fairly rare to find a computer user that’s never used Windows, but it might become more and more common. On one hand, you have to respect that many bright people have spent a lot of time and a lot of money doing research on the Windows interface. Of course, you should also realize that such pursuits have still led to Windows ME and Vista.
An easy dig, but the point is that you have to be cognizant that Microsoft has really shaped a generation of computer users, both for better and for worse. How do you make new KDE users comfortable and productive for those that know Windows? What about new users with no bias? It’s not only a question for KDE, but HCI in general. Which is exactly why we have an HCI Working group.
Throw into the mix the fact that different KDE-centric distros target different user bases, and you quickly understand it’s a complex situation.
What can you tell me about the Plasma Team?
They’re basically rebuilding the desktop and panels from scratch, integrating desktop widgets and making sure to include scripting to allow for a larger developer base to assist (JS, Ruby, Python the obvious candidates).
The Plasma team is very prudently going about their business. I’m subscribed to the panel-devel mailing list, so I have some basic visibility on their progress.
It’s pretty comical; the immediate flood of interest in the Plasma project showed that rethinking the desktop metaphor really struck a chord with many users and enthusiasts. However, plans and screenshots do not make a software project alone. If they did, Sourceforge would be a very different place. The interest and excitement was both a blessing and a curse. Enthusiasts wanted immediate satisfaction, but no gantt chart of dependencies and milestones can assist in practicing patience.
When you look at Qt 4.x, the necessity of KDE libraries, and working with our usability team – the Plasma team has gone about their tasks the right way. Their mailing lists are painfully efficient. There’s surprisingly very little static or white noise involved.
In general, the Plasma project is a prime example of the mutually beneficial relationship between KDE and Trolltech (or OSS projects and businesses in general). Plasma gains from a really powerful Qt rendering system and Trolltech gets feedback from a demanding real-world application.
equalizing aspect of FL/OSS is fascinating.
Who doesn’t want to hit the fast forward button and see where this all takes us?
There is talk of breaking from the WIMP (Window/Icon/Menu/Pointer) paradigm. What direction does KDE and the Plasma Team want to take in this regard?
I don’t know if we “want” to take any direction apart from what our HCI and Plasma members find to be the best experience for KDE users. Interface paradigms will evolve just like any other aspect of computing.
I can say with some degree of confidence that KDE 4.0 will not require Wii controllers and a running mat to use. 4.1 on the other hand? You’ll just have to wait and see.
Finally, what are your thoughts on the direction of Open Source/Free Software in general?
This sounds like a question that will definitely allow me to look back and realize how wrong I was.
I often rant about how in all disruptive technologies, trends are always the same. Whether with the automobile, railroads, telephony or computers. A dominant company establishes ubiquity, but eventually competition settles in. Can you believe that Fords and Chevys can drive on the same roads and use the same gas? What a miracle of modern science that an AT&T user could call a Sprint user on the phone? A TGV and ICE train can ride on the same tracks? Madness! I can plug a lamp into the wall that my power company didn’t sell me? Now that’s what I call progress.
Why would computing be any different? I can’t believe that some choose to write software for a large audience that isn’t cross platform, browser-based or interoperable – but some do. Over time, proprietary file formats will go from being a competitive advantage to disadvantage. Heterogeneous systems are the norm and expected in every industry. It’s just tough being patient in ours.
That’s just basic economic prognostication though, and I don’t want to minimize the philanthropic facet. That should be an interview all by itself. The empowering and equalizing aspect of FL/OSS is fascinating. Who doesn’t want to hit the fast forward button and see where this all takes us?