Linked by Thom Holwerda on Mon 16th Feb 2009 14:07 UTC
Editorial Late last week we ran a story on how the Google Chrome team had decided to use Gtk+ as the graphical toolkit for the Linux version of the Chrome web browser. It was a story that caused some serious debate on a variety of aspects, but in this short editorial, I want to focus on one aspect that came forward: the longing for consistency. Several people in the thread stated they were happy with Google's choice for purely selfish reasons: they use only Gtk+ applications on their GNOME desktops. Several people chimed in to say that Qt integrates nicely in a Gtk+ environment. While that may be true from a graphical point of view, that really isn't my problem with mixing toolkits. The issue goes a lot deeper than that.
Thread beginning with comment 349289
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[3]: We're Stuck With It
by darknexus on Mon 16th Feb 2009 16:47 UTC in reply to "RE[2]: We're Stuck With It"
darknexus
Member since:
2008-07-15

I take your points, but I do have to ask one thing about your examples, and yes, this question is OT. Exactly what would it matter if someone missed out on the Orca screen reader under KDE? It doesn't work with QT apps at all, at least not yet, though work is being done on this and QGTKStyle might end up a good interim solution. So yes, you miss out on this program, but it hardly matters anyway, as currently it really does depend on APIs that only GNOME provides. If you have gotten it to work with QT or KDE somehow, please do share (pm me so as to not clutter this thread), I'd absolutely love to try KDE4 after everything I've been hearing about it.
Back to the topic, I'm of the opinion that UI consistency is a dream at best. Everyone, be they user, developer, or manager, has different ideas on what a good UI is. Even if one sticks to a single toolkit, you still don't have consistency, just look through the majority of GNOME apps and you can see that.
By far, the most consistent UI at present seems to be OS X, and I mean consistent in behavior, not necessarily in looks. But even there, where Apple is extremely strict on UI guidelines, you don't have 100% consistent interfaces. Just open the preferences of some of your favorite apps, odds are you'll find some that don't have ok/cancel buttons (they save your settings when the window is closed) and some that do. Actually, let's simplify it: compare Apple Mail and iTunes preference dialogs. Enough said.
I stick to GTK+ apps on Linux, why? Not because I hate QT, or think GTK+ is any superior to it. I've programmed in GTK+ in several languages, I happen to really like C# and GTK#, but no one in their right mind would claim GTK+ in C is the cleanest of APIs. At the moment I stick to GTK+ and/or Java/Swing apps (SWT doesn't count, as it bridges to GTK+ and therefore works)for one simple reason: nothing else works with Orca yet, except for a few exceptions--Firefox, Openoffice, and Mono Winforms-based apps of which there aren't that many in Linux.
There are any number of reasons to stick to one toolkit, or not to do so, and it all comes down to personal preference. Simple as that. Attempting to force your choice on to someone else is akin to trying to persuade an evangelical Christian that you're not interested in their religion. It's not going to happen, and you'll end up shouting yourself hoarse by the end of it. Isn't that the beauty of choice? I do what suits me, you do what suits you, and everyone should just be happy with that.

Reply Parent Score: 4

RE[4]: We're Stuck With It
by segedunum on Tue 17th Feb 2009 14:32 in reply to "RE[3]: We're Stuck With It"
segedunum Member since:
2005-07-06

I take your points, but I do have to ask one thing about your examples, and yes, this question is OT. Exactly what would it matter if someone missed out on the Orca screen reader under KDE? It doesn't work with QT apps at all, at least not yet....

It does with KDE 4 and Qt 4 because they support AT-SPI.

However, that's not the point. This was an example. The point is that you're limiting the applications available and limiting your functionality which will not expand the userbase for open source desktops. In addition, you're also increasing the work of already stretched open source time, people and resources because you're dictating that if an application exists it needs to have at least its front-end re-written. It's just a bit daft really.

Edited 2009-02-17 14:34 UTC

Reply Parent Score: 1