The latest beta of KDE‘s 3.2, beta 2, was released a few days ago. I installed the provided Fedora RPMs and had a look in this early pre-release version of the popular X11 desktop environment. Six screenshots are included. We look at both the strengths and the weaknesses of the DE.
KDE 3.2 offers a slew of new features, including an updated khtml engine, an SVG viewer/player kpart, better tab integration on Konqueror (which are now available for file management as well for web pages), CD burning via Konqueror, and even an addon-like technology, named Service Menus. Any user can hack together their own custom service menus and create their ideal addon menu without any C/C++ code. There is also a better Kiosk support, support for graphically connecting to Windows machines, and support for inline automatic spellchecking for some apps like kmail.
The Kontact manager has seen a lot of work and seamlessly integrates KMail, the address book, the calendar, a notes system and a Palm Pilot kpart. Together with the KGroupware project this can be a very strong point of KDE pitching itself to the corporate desktop when Kontact becomes more stable (currently, I find it to not be as much). The now included multi-IM solution, Kopete, also integrates seamlessly with the KAddressBook.
New applications include JuK, KPDF and KWallet, a universal password application and new versions for a geometry app and KStars (the very nice astronomy app). Developers would find new versions of KDevelop, Quanta, Umbrello (a UML modeler) and the inclusion of KCacheGrid for profiling KDE apps. An interesting new app is KDialog which let’s you create little GUI apps with simple shell scripting for use with simple tasks. A very handy tool that can do the job much faster than writing the equivelant C++ code.
KDE 3.2b2 had a copy of the latest beta of KOffice as well. The office suite looks pretty good, very well integrated together to all KDE apps, however I did manage to crash KSpread when loading a Gnumeric spreadsheet. Other new features include a Wi-Fi manager, a reworking of the KDE Center and a shuffling of some of the preference modules, the inclusion of KRandR to dynamically change screen resolutions, an updated Kooka version, a better “configure background” dialog etc.
KDE comes with a new theme as well, named Plastik. Plastik is one of the best themes I have seen on Unix/Linux, ever. It is simple, but on the same time very well designed, up to the point and without extra graphic bloat. It is clean and concise with the right amount of mouseOvers and colorings. It is just right, and I honestly hope that this theme becomes the default KDE theme instead of the hideous Keramik (remember, most of the users don’t change the defaults, so it is important to serve them the best solution each time, in this case Plastik).
There are a few more nice UI touches on 3.2, like a new vertical widget showing on the left bar of Konqueror, Quanta or KDevelop which auto-expands. Also, I love the bouncing icon when loading an app (also I believe that should be the default behavior). The Kicker modules now don’t have a visible grabbing point; you need to place your mouse on the left of each module to get it to show and that results in a cleaner-looking Kicker. The context menus on the desktop have now being cleaned up and while there is still quite a number of menu entries in there, the situation is a bit better than before. The Trash’s context menu is now just right too.
What are the best feature of KDE 3.2 in my opinion? Speed. Definitely way faster than any Gnome installation on my AthlonXP, even Slackware’s. The KDE applications seem snappy, they load fast enough, and the widget/UI performance and responsiveness is far better than GTK+’s.
I am certainly impressed by KDE’s ability to have all these new and old features integrated well together. There is an immense work put behind KDE and it shows. But it shows for the wrong reasons: too much UI and application bloat.
We have beat this issue to death for years now, and while the KDE team has actively made a lot of effort this time around to clean up a few things, the problem does remain. Konqueror’s context menu is a mess, why would I want to zip a web page or use Cervicia with it, is beyond me. And the main menu itself it just has way too many options. Konqueror is the Frankenstein of file managers, made of so many Kparts that the end result is just not good. Options of other Kparts are appearing on the main and context menu etc.
Additionally, there are too many apps shipping with KDE. This results in a huge KDE menu (while other options have been stripped out of KMenu in this version). I don’t need four text editors in the same submenu (Kate, KWrite, Kedit and Kommander-something), I need one. While each one of the four have a bit different specialty (e.g. Kate is a good programmer’s text editor) the fact remains, there should be one solution offered. KDevelop should do the rest of the job for the programmers. The second-tier applications should be offered separately via KDE’s web site for those who want them, instead of bloating the main KDE distribution.
And then there is the still terrible Kontrol Center. The KDE project seems to have acknowledged the problem because they now offer custom Konqueror views (like Gnome’s “Start Here”) and so this new trick gives the impression to the user that their control panel is leaner. But it is not. It is an… eye illusion and if you actually load the normal Kontrol Center you will get even a bigger tree with more modules than on KDE 3.1. The problem is not just that there are too many modules there, but there are two more problems: 1. Each module has 2-5 tabs full of widgets and stuff. TOO many options, too confusing as to what is where, too much bloat for features that are redundant for the vast majority of people. Too much detail. 2. There is no integration between modules. For example, there should have been a single module for keyboard and mice, with one tab for each with some basic must-have options there. Another example is that we have the theme-related modules spawn on several modules under “Appearance,” ranging from icons, color, style, etc., etc., instead of getting a single panel for all these related items with the most needed options listed there.
Some of the options found on preference dialogs should not be there at all, but work automatically. For example, I used a white-ish background image and then I couldn’t read the text on the desktop icons. KDE should have either detect the background image color and automatically adjust its icon text color all by itself, or do it the “easy way” as Windows does it and apply a dark text shadow by default. Currently, the user has to literally search on panels after panels where the “show text shadow” option is hidden (FYI, is on a panel after you clicked “advanced” on the background image panel) and when you actually find it next to more redundant options and you set the shadow as ON, it just doesn’t look good and sharp. It looks like a “mountzoura,” as we say in Greece: a blot.
Also, I would advocate for some Qt UI changes, e.g., expanding a few pixels the space between words on the application menus. Currently, they read like a sentence instead of being wisely spaced out. Also a soft line that separates the menu from the toolbars and the toolbars from each other would have been nice too, as currently they look like they have all been thrown out together with no easy way for the eye to distinguish them fast enough. See one of my screenshots to see what I mean.
Another thing I dislike is that “settings” menu that most KDE apps have, where they list 3-4 different “Configure” options in addition to the “Configure the application” option. All these configures are confusing and severely bloat the app menu; they should not be there at all. For example, the “configure toolbars” should be accessible by right-clicking the toolbars themselves for example, a-la OSX or Epiphany. The “configure the app” should be just called “Settings” and put under the Edit menu when applicable. (“Configure” is a verb and as I said in the past,is like ordering someone to do something that has never done before. UIs is about psychology too and the right wording is important).
All the above might sound like nit-picking, but rest-assured, pixel pushing, looks, user psychology and usability is a huge part of any desktop environment. And KDE is one.
KDE is great. It has the best underlying technology today compared to other X11-based environments. It is modern, flexible, and now, faster than ever before. But this UI bloat and general unpolishness that still plagues itself and its applications leaves a very sour taste in my mouth. What I would love to see on Unix (and I am sure others would too) is a clean, polished and HIGified environment (like Gnome) but with the speed, architecture, integration and infrastructure of KDE. Luckily for KDE, they have the advantage over Gnome. It is easier for them to streamline, strip out and clean up their current interface than Gnome to get that level or architectural quality that KDE today enjoys. Development tools are worlds better on KDE too: Qt Designer beats Glade and knocks it out in the first round.
My suggestion would be: Clean up KDE’s UI, polish the widgets at the Qt level and do some usability and accessibility testing. Then, remove most of the most redundant options from Konqueror, its menu, its preferences, and Kontrol center’s modules and move them to a KConfig panel (a-la GConf or a-la Registry) so both worlds are happy (advanced and newbie users). Only keep visible on panels the most important, basic options, the ones that guarantee a polished experience. If the KDE Project realizes that polish and simplicity is more important than all these almost-never-used and hard-to-find-in-a-chaos-of-panels options, adopt a HIG, get some usability engineers aboard, oh joy, we would have a winner. But as it stands today, the battle with Gnome will still stand as Gnome has an edge on usability direction and general UI polish. I would like it if KDE used Gnome’s HIG (which is actually one of the good points of Gnome, so re-use it, that would help the overall usability as a bonus for both DEs and freedesktop.org’s efforts).
The fact remains though, KDE is good enough for most people. It does the job. The beta still has bugs and applications crash quite a bit (I think some are Fedora-only issues actually), but it does look very promising. KDE has the right technology and tools. But it is so damned easy to develop for this platform that some people seem to… over-develop.