Why I can’t stand KDE

Here it is. A perfect example why I don’t use KDE.

Worst. User. Interface. Ever.

It’s cluttered. It has layers upon layers (aka tabs) of mostly useless stuff. Vertically and horizontally (argh). For some of the useless info presented you even must scroll down to read it all. Or it’s like we care about this scary “mood” thing that Amarok uses (what the f*ck is that?). And I am sure that if we were to right-click somewhere in that interface, the long options presented to the user would be even more scary.

Amarok is just an example of how terrible KDE application UI design can be. Most of the KDE or Qt apps look and feel as bad as Amarok does. While KDE does not have strict UI guidelines like Gnome has via its HIG, I don’t blame the developers. I blame the TOOLKIT and their RAD tools. Why you ask?

–> Think <–

Why OSX apps don’t look as ugly, even if most of the apps are created by the same kind of non-UI-educated developers? Why Gnome apps are usually not as cluttered either, even if most of the GTK+ devs don’t give a rat’s ass about the HIG? Why most common Windows apps don’t look as layered or cluttered even if they don’t have a HIG to begin with? Why these problems are MOSTLY visible on KDE and Qt apps?

The answer is because Qt’s RAD tools make it EASY for developers to design CRAPPY interfaces. I had never thought this way about it (I was always blaming the developers), until an Apple engineer friend of mine suggested it over IM a few months ago. Qt makes it easy to design ugly apps. The answer is to fix the RAD tool (QT Designer) to respect enforced widget alignments and to serve a better toolbar design (no, this has nothing to do with the theme used). Of course, developers will need to learn some basic UI design and usability principles too (yes, I know that usability!=UI), but everything STARTS with the toolkit and its tools (along with some usability design on a plain paper before that).

You may ask, what is the RAD tool to do? Here are some ideas: Enforce widget alignment and 10-12px spacing by default. Allow spacing between menu items in the menu bar (without my bug report on the current default KDE theme 2 years ago, all menu items would be reading like a single sentence — that’s how close they were. Other themes don’t have code to fix Qt’s broken menu spacing). Qt still uses “lines” around its “box” widget, while Gnome has moved to a simple bold header, just like OSX has, while XP has “soften” these box lines. These are just a few ideas to fix KDE/Qt UIs, without the developer having to do anything differently.

Some will say that some of my suggestions remove freedom from the developer and place some decisions to the RAD tool itself. YES. This is correct. If these developers don’t wanna read the HIG, then the RAD tool should take the right UI decisions for the developer. If the mountain won’t come to Mohammed, Mohammed must go to the mountain.

IMO, Qt is much superior to GTK+, programming-wise. But I can’t STAND the applications it PRODUCES. This is why while I respect Qt as a toolkit way more than I do GTK+, I use Gnome over KDE, and I will continue to do so.

Post a comment »

Thom Holwerda wrote on April 11th, 2006 at 10:04 AM PST:

Well, I’m what Linus calls a ‘UI nazi’; I want consistency. Consistency is what makes or breaks a UI to me. It’s, for instance, why I’m such a huge admirer of CDE: yes, it’s ugly as fcuk, but at least it’s consistent: there are no surprises anywhere, button xyz does exactly the same all throughout the desktop environment.

Both KDE as well as Windows suffer from inconsistency– both in behaviour (i.e. ‘x’ does different things in different apps) as well as in looks. This bothers me a great deal. Windows has old icons mishmashed with new icons, old GUI controls mingled with new ones; I detest it. It’s sloppy, it’s a plain sign of laziness on the developers’ end.

OSX is going down the same route in that respect; we have what, 239472 different official themes now? And what’s with the crappy ‘pill’ buttons in Mail.app?

GUI inconsistency is the biggest weakness of most DEs today. Developers focus on features! features! features! but forget the basics: consistency. Without consistency, a DE is simply evil.

As for GNOME… Yes, it’s more consistent than Windows or KDE, but oh dear God how fcuking SLOW it is. Redrawing is… Pathetic. Rendering it… Well, close to unusable.


This is the admin speaking...
Eugenia wrote on April 11th, 2006 at 10:19 AM PST:

I don’t have a problem with Windows’ UI incosistencies, because for the most part, they aren’t that many. Of all my apps, only my very old apps (PSP 5, CuteFTP 4.2) and Trillian are incosistant with the new Windows apps.

Gnome’s rendering speed is slower than KDE/XFce, but not that much anymore. GTK+ is still slower than Qt, that’s for sure though and Cairo made things worse.

Regarding OSX, I hope Apple just picks one of their 2-3 official looks and go with it 100%, I agree on that. They should put an end to their experiementation that’s going on for 3 years now.


memson wrote on April 12th, 2006 at 1:35 AM PST:

Hmmmm…. Eugenia, you make no sense. I’ve used plenty of Windows apps with crappy design. I’ve used plenty of Qt Apps with good design. RAD has little or nothing to do with it.

Firstly, you have totally missed on the OSX front. Cocoa is totally RAD. XCode is basically the same deal as was with ProjectBuilder, which is ultimately the tool Nextstep had. I have a version for Windows (yellow box) and it is RAD to the extreme. To state that anything but legacy apps are not RAD is insane. Writing Cocoa apps without using RAD is a complete PITA.

Secondly, Qt ripped off the ProjectBuilder metephore. Seriously, Qt Designer is extremely similar to a number of RAD tools (VB/Delphi being in the list), but is takes big gobs of ProjectBuilder (e.g. the way SIGNAL/SLOT editor works and the GUI that supports it.)


This is the admin speaking...
Eugenia wrote on April 12th, 2006 at 1:50 AM PST:

>RAD has little or nothing to do with it.

I beg to differ. A good RAD tool can enforce (instead of being optional and user-driven) some basic UI principles, like spacing and alignment, as I mentioned above.

>To state that anything but legacy apps are not RAD is insane.

HUH?? When did I ever said that? Of course and there are non-RAD apps out there! And these non-RAD apps, will need extra care from its developer to create a good-looking UI.

>Qt ripped off the ProjectBuilder metephore.

This is beside the point, it makes absolutely no difference in what I tried to express in my blog post if it’s a clone or not.


memson wrote on April 12th, 2006 at 4:35 AM PST:

> I beg to differ. A good RAD tool can enforce (instead of
> being optional and user-driven) some basic UI principles,
> like spacing and alignment, as I mentioned above.

Hmmm… VS.NET doesn’t, Delphi doesn’t nor does Project Builder on OS X. Not “enforce” alignment. “Snap to grid” maybe, but Qt Designer does that, so I’m at a loss as to what you mean.

What I said still stands. OS X apps written using Cocoa are mostly RAD (unless the author is psycotic) and Project Builder enforces no more or less alignment than Qt Designer. Can’t speak for X Code, never used it.

What does stand is that blaming it all on Qt Designer is nonsense. Qt Designer is just as good as any other RAD tool I have ever used, except that the actual codeing side is a little poor. Nothing to do with the GUI.

> HUH?? When did I ever said that? Of course and there are
> non-RAD apps out there! And these non-RAD apps, will need
> extra care from its developer to create a good-looking UI.

Legacy apps under OS X. Anything using carbon. They are probably not RAD unless they’re PowerPlant or something, but Cocoa is RAD from the ground up.


This is the admin speaking...
Eugenia wrote on April 12th, 2006 at 5:35 AM PST:

If you can’t find any _technical_ reason as to why their apps are so cluttered, the only logical conclusion that I conlcude from your comments, is that these Qt/KDE devs are simply, idiots. Right?


memson wrote on April 13th, 2006 at 8:34 AM PST:

> Qt Designer, does not take ALL THE PRECAUTIONS that it
> COULD TAKE, in order to PROTECT the developers from their
> own sloppy self!

And, as I said.. Having used most of the major RAD tools on the market (historical and current), Qt Designed does absolutely nothing differently. It works in a similar way to ANY other RAD tool. Any other. Honestly. I’m not a Qt dev, but you are plain wrong.


This is the admin speaking...
Eugenia wrote on April 13th, 2006 at 8:43 AM PST:

Ok then, so you are just saying then that KDE devs are just like that by nature: sloppy.


memson wrote on April 13th, 2006 at 12:39 PM PST:

Who said I was a Qt dev? I’m multi-purpose. I have, unlike yourself obviously, actually used a number of RAD tools over the past 15 or so years, not least:

VB (DOS version, 3, 4, 6 and VS.Net)
Delphi (1 – 7, 2005)/C++ Builder (1 and 3) / Kylix (1)
c# (VS.Net, BDS and Sharpdevelop)
Project Builder (Nextstep, OpenStep, Rhapsody and OS X 10.2)
Symantec Visual Cafe,
MS J++ v6,
Borland JBuilder (1, 3 and IIRC 4)
Qt Designer (for Qt 2.x and Qt 3.x)
Netbeans (forget which version, circa Java 1.4)
Codewarrior (4, 6, 10 for MacOS and Windows – mainly for Java but some Powerplant stuff)

All in commercial/shareware environments.

I’ve also used other RAD environments in some way shape or form including:

MS Access
Envelop (VB clone)
Various HTML editors

Probably more.

The point: RAD, ABSOLUTELY no matter what tool kit you use,
is still at the mercy of the programmer. Someone with little or no flair will royally screw the app design.

I re-iterate. Qt Designer and Qt is not a bad toolkit, and blaming bad design on Qt being RAD is just not true.


memson wrote on April 13th, 2006 at 12:47 PM PST:

Not that I’m taking a pop. I just refute your claims against Qt.


This is the admin speaking...
Eugenia wrote on April 13th, 2006 at 12:51 PM PST:

You don’t understand. I never said that Qt has a bad design because it uses RAD. RAD is good! I simply said that Qt’s own RAD tool, Qt Designer, does not take ALL THE PRECAUTIONS that it COULD TAKE, in order to PROTECT the developers from their own sloppy self!


memson wrote on April 15th, 2006 at 12:57 PM PST:

Pretty much ;-) Garbage in, garbage out.


Comments are closed as this blog post is now archived.

Lines, paragraphs break automatically. HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

The URI to TrackBack this blog entry is this. And here is the RSS 2.0 for comments on this post.