MAR
31
2003

George Staikos: A Quick Cost Analysis of Qt vs GTK

Last week, CORBA-lover Michael Meeks released some slides that caused something of a stir amongst some in the KDE community. In his slide, Michael Meeks attempted to make the case for GNOME as the only viable desktop on Unix by directing the heat of his argument at the cost of Trolltech's Qt -- the wonderful cross-platform toolkit on which KDE is based -- for proprietary development. Rising up to the challenge, George Staikos has written a nice article that compares the cost of Qt vs GTK in the real world.

George successfully makes his case independent of the specifics, but there are few things in particular about Michael's slide that bother me. For one, Michael seems to be making a skewed comparison of GNOME to Qt as opposed to comparing GNOME/GTK to KDE/Qt. If comparing KDE to GNOME, then certainly two of the three points in favour of GNOME count for KDE.

Other than the points George makes in Qt's favour (check out the dirt on the new tab widget!), and the fact that KDE more or less maintains a copy of Qt in CVS, KDE has a very open development model, and I would even argue that in many ways KDE development is more open and accommodating to contributors than the GNOME development model which is heavily influenced by the commercial powers behind the GNOME Foundation. Personally, I have also seen a lot of whining about how closely-controlled (by Red Hat) GTK development is. And, of course, the ABI/API stability Michael claims for GNOME certainly applies just as equally to KDE/Qt.

Another thing that puzzles me are the prices Michael quotes for proprietary Qt development. He is talking about proprietary development on Unix, and yet he quotes the prices for Qt on three platforms (Mac/Windows/X11) which is twice the price of Qt for X11 alone. And if he does that, he really ought to take into account the state of GTK on Windows and Mac (ports of which do indeed exist). But these quibbles are sort of besides the point, since indeed Qt does cost something for proprietary development whereas GTK is gratis up front.

So, by all means, read George's article carefully, then tell us what you think about this whole matter. Have you used Qt for free or proprietary development? If so, what have been your experiences?

Comments

"Qt doesn't need to for KDE as much as GTK needs to for GNOME, as KDE apps can pretty much override everything in Qt (easier than the OO in C approach in GTK at least!)"

Not really, no. They can't really extend qt itself transparently. What they are doing is subclassing Qt classes. That's why we have KApplication instead of QApplication etc. But the applications must do this explicitly (unless you use a LD_PRELOAD hack but C programs can use them as well).
GTK can do this as well AFAIK, it's one of the basic features of object systems.


By Fredrik at Mon, 2003/03/31 - 6:00am

Oh, well, we could if we hacked qt-copy while maintaining binary compatibility.

I know, I know, not what you had in mind ;-)


By Roberto Alsina at Wed, 2003/04/02 - 6:00am

The tab widget example was not false. It was an unexpected double example of how Qt developers audit all changes going into Qt, and implement them -right-. They clearly didn't agree with the change as it was submitted, but they had a better idea of how to accomplish the same goal. I think it was a shining example.


By George Staikos at Tue, 2003/04/01 - 6:00am

While you KDE guys are wasting your time whining about how GNOME is evil, Microsoft is getting a greater and greater advantage over you. If this keeps up, one day Microsoft will kill off the entire open source community, KDE included.

Open your eyes people! Microsoft is the *real* enemy here! Instead of spreading anti-GNOME propaganda, write code and make KDE/Linux/whatever BETTER than Windows XP! If you don't, you will eventually be destroyed by your own blindness.


By FooBar at Mon, 2003/03/31 - 6:00am

Although you show us your tendency to overreact, and MS isn't gaining any more momentum than they already have (imho), I must respond to the stop-flaming, start-cooperating part with: "Hear hear!"

Someone should also say this to 'certain'-Gnome devvers though :)


By wzzrd at Mon, 2003/03/31 - 6:00am

"Someone should also say this to 'certain'-Gnome devvers though :)"

Let me know who and I'll tell them next time I see them.


By Iain at Tue, 2003/04/01 - 6:00am

I agree, but I don't think this can be stopped. The community is strong, but all these artists, coders, translators, idea-contributors.... can simply not compete with a big global player like MS... We always think the Open Source community is enthusiastic about what 'we' all have reached 'together'...

Question: Have you ever seen a real Ms employee, how enthusiastic these people are? That's far beyond imagination. From my point of view I always think they have left earth long ago and living on Mars already. The thing is: they really _believe_ in Microsoft (and the companys politics) much more than the OO community believes in itself. This (of course) makes Ms an unbeatable competitor.

MS: thousands of people having exactly the same idea

OpenSource: thousands of individuals having different (but nevertheless bright) ideas working somehow together with a lot of 'friction losses'


By thomas at Mon, 2003/03/31 - 6:00am

having thousands of people blindly buying into whatever the party line is only works if the party line is infallible. if, however, there is room for exploration, more than one possible answer and competition is actually a benefit then such narrow minded views are not a benefit. rather, they are a liability. the fact that in the Open Source world there are hundreds of active, well populated and indeed thriving individual communities all exploring their own visions is one of the things that makes it so strong and impervious to attack and even internal mistakes.


By Aaron J. Seigo at Mon, 2003/03/31 - 6:00am

So GNOME-folks can whine how TT/KDE is evil and sucks, but KDE-folks can't provide any counterarguments?


By Janne at Mon, 2003/03/31 - 6:00am

The GNOME folks don't whine about how TT/KDE is evil. Find me an anti-GNOME article that is less than 6 months old from an official GNOME site. I dare you.

Notice the "official GNOME site" part. NOT a random post from a single individual!


By FooBar at Mon, 2003/03/31 - 6:00am

The REAL enemy is not KDE or GNOME, it's YOU.

This article you are replying to is nothing official. It's from single individuals. Just like Michael Meek's slides to THOUSANDS of OOo developers. Or should I say Ximian?


By anon at Mon, 2003/03/31 - 6:00am

> "The REAL enemy is not KDE or GNOME, it's YOU."

Keep Yast Online Update out of this!


By FooBar at Mon, 2003/03/31 - 6:00am

> Find me an anti-GNOME article that is less than 6 months old from an official GNOME site.

You want to say that GNOME is missing self-criticism? Agreed.


By Anonymous at Mon, 2003/03/31 - 6:00am

Err.... typo. o_0

2nd try:
Find me an anti-KDE article that is less than 6 months old from an official GNOME site.


By FooBar at Mon, 2003/03/31 - 6:00am

Ummmmm... How about the slides everyone is talking about here? How GNOME is "free", while QT/KDE is "less so"? For reminder, here is the url:

http://www.gnome.org/~michael/XimianOOo/img7.html

What's that website? www.gnome.org? That's what I thought....

And are there any anti-GNOME posts in official KDE-websites? Nope. The counterarticle in question was not on official KDE-website. It was on www.staikos.net.


By Janne at Mon, 2003/03/31 - 6:00am

And besides, if we should be concentrating on MS instead of other free projects, why is Michael Meeks attackign Qt and KDE? Shouldn't he be convincing people how MS sucks and how they should be working on GNOME and/or Linux instead?

Instead of whining how KDE has "lost track of the real enemy", shouldn't we also be whining how GNOME and Michael Meeks has lost track of the real enemy?


By Janne at Mon, 2003/03/31 - 6:00am

I don't really think that slide was a flame of KDE.
I think the (KDE) in brackets was to say that KDE use QT.
and I think the only real mistake was putting GNOME instead of GTK
He could have put GTK+ (GNOME) like the QT (KDE).

But are there any lies on the slide?

The LGPL does give you more freedom to do what you want than the GPL
(which is both a strength and a weakness of the GPL)

I personally think everyone is overreacting...


By Iain at Tue, 2003/04/01 - 6:00am

"http://www.gnome.org/~michael/XimianOOo/img7.html"

When it has a ~ in it, it stops being an official GNOME site.


By Iain at Tue, 2003/04/01 - 6:00am

No, that would be users/members/whatever.gnome.org/~. The fact that it's on the same server means that either everything there is endorsed by the project or you can't accept anything there as official since I see nowhere a rule that "~" or whatever else makes the project not responsible for the content.


By Datschge at Wed, 2003/04/02 - 6:00am

umm... I used to work at an ISP that had some neo-nazi pages and had the ~username, and of *course* we didn't endorse that sh-t. But in America we have a thing called freedom of speech.


By Anonymous at Thu, 2003/04/03 - 6:00am

Alright, a note to Michael Meeks then:

While you GNOME guys are wasting your time whining about how KDE is evil, Microsoft is getting a greater and greater advantage over you. If this keeps up, one day Microsoft will kill off the entire open source community, GNOME included.

Open your eyes people! Microsoft is the *real* enemy here! Instead of spreading anti-KDE propaganda, write code and make GNOME/Linux/whatever BETTER than Windows XP! If you don't, you will eventually be destroyed by your own blindness.


By lit at Mon, 2003/03/31 - 6:00am

No true. The people who _do_ further KDE development don't waste time on discussions like this one. How many postings from Waldo, Faure & c:o do you find on this page?


By Apollo Creed at Mon, 2003/03/31 - 6:00am

There is no particular reason to choose GNOME or Windows as a "real" enemy. Both are competitors to the KDE desktop.

Perhaps Windows has a much larger user base, but at times GNOME can be more threatening for being able to run on the same OS as KDE. Windows, though, threatens to take people off X11, while GNOME users can still run some KDE programs (even konqueror!).


By ThreeFarthingStone at Tue, 2003/04/01 - 6:00am

"Perhaps Windows has a much larger user base, but at times GNOME can be more threatening for being able to run on the same OS as KDE."

Isn't that a *good* thing? KDE can run GNOME apps too.

The average user *wants* interoperability. They don't want any of this "it's either us or them"-stuff, they want to be able to run both.


By FooBar at Tue, 2003/04/01 - 6:00am

> Isn't that a *good* thing? KDE can run GNOME apps too.

It definately is but the question is:

a) why running GNOME apps under KDE ? The KDE apps are far supperior, integrated, polished and configurable over GNOME apps.
b) the reason why GNOME runs KDE apps is because they are missing native ones.


By oGALAXYo at Tue, 2003/04/01 - 6:00am

> b) the reason why GNOME runs KDE apps is because they are missing native ones.

Gnome lacks some applications, KDE does as well!

I love KDE, for me it is the best desktop. But surely I am very glad being able to run gnome apps like the gimp or zapper on it.

I find this flaming very anoying. I don't need a kde-competitor to the gimp or whatsoever. Though a kimp-frontend for a gimp-library might be great.


By Andreas Silberstorff at Thu, 2003/04/03 - 6:00am

I think it's pretty clear that this was not an attack at Gnome. It was a response to FUD intentionally spread about Qt and posted on public forums. You're right, there are better targets for venting frustration and competing against. Hopefully responses like these are unnecessary and infrequent in the future.


By George Staikos at Tue, 2003/04/01 - 6:00am

Hello dc, also known as Stof. Boy have you lived on this site. Even got banned once, I see... you sure do keep at it.


By Navindra Umanee at Tue, 2003/04/01 - 6:00am

The "reasonable" developer costs you 9000$/year in Easter Europe or even less in Russia, India, China. Qt costs you 2300$, and additionally, upgrades cost almost 1000$/year and it doesn't include compiler ( on Windows ), so Qt isn't an option there.
It probably isn't an option if you want to distribute your programs as shareware for 20$ ( for students or out of work development ).
It isn't an option for Sun and other commercial companies who can't tell their customers that they have to buy a second licence from Trolltech in order to use their product.
It isn't an option for all in-house script-makers, so it never become a main GUI toolkit on Unix.


By Tom at Mon, 2003/03/31 - 6:00am

Developers in China and in Russia develop with whatever they want. Most choose Microsoft platform with Visual Studio (now .net), because most of them do not pay for licenses at all (oh dear, what world are we living in... sad... :-)
Remember Microsoft, that shiny bright big western company that pays sallaries an eastern europe/chinese/russian developer can only dream of?. They all want to step up to this bright new world, and MS sills are the ticket, because everybody needs to make a living! GTk-skills are not a ticket at all (QT skills neither)......


By thomas at Mon, 2003/03/31 - 6:00am

>It isn't an option for all in-house script-makers, so it never become a main GUI toolkit on Unix.
We’re in that situation, using wxwindows instead. What would happen if Troll tech decides to tipple the license cost? They're not in it for charity. One of the biggest attraction with free software is the freedom to not bug the economic department. I think this will be one of the biggest issues for KDE in the corporate sector.


By Tomten at Mon, 2003/03/31 - 6:00am

>It isn't an option for Sun and other commercial companies who can't tell their customers that they >have to buy a second licence from Trolltech in order to use their product.

You do not need to buy a license to use a program built using Qt:

http://www.trolltech.com/products/qt/licensing.html?cid=4

--Jon

http://www.witchspace.com


By Jonathan Belson at Mon, 2003/03/31 - 6:00am

But if you have a plugin system for your application that requires GUI elements, then no one can create plugins unless they buy QT (even if your plugin system wraps the GUI with a scripting language). That's no good.

You can use MFC (or .NET forms), Aqua, Gtk+, or whatever and plugin developers won't have any problems.


By ch at Fri, 2003/04/04 - 6:00am

> The "reasonable" developer costs you 9000$/year in Easter Europe or even less in Russia, India, China. Qt costs you 2300$, and additionally, upgrades cost almost 1000$/year and it doesn't include compiler ( on Windows ), so Qt isn't an option there.

This is an absurd argument. It's like saying "sure the on board computer is a small percentage of the cost of a Mercedes 600 class but it's a larger percentage on an econo box". This begs the question... what are you going to do with all the money you save?

You should check your facts. The scenario you are describing bears some resemblance to theKompany's business model. It has also opened doors for them on portable devices where QT is the only option. Whatever you want to say about them last I checked they continue to produce software... invalidating your argument.


By Eric Laffoon at Tue, 2003/04/01 - 6:00am

Use WxWindows
Provides a Wrapper to a existing toolkit (GTK on Linux).
It works on Linux,Win32,Mac
No licensing issues.
Powerful and provides easy migration path for MFC programmers.

I beleive KDE /Gnome should have common reusable binary architecture (Like COM)instead of bonobo /Kparts,
since
Bonobo sucks due to complexity
Kparts is very much tied to QT.

Rajeev


By Rajeev Narayanan at Mon, 2003/03/31 - 6:00am

"Bonobo sucks due to complexity
Kparts is very much tied to QT."

And COM isn't tied to Windows? Geez, at least get your arguments straight!


By David Johnson at Tue, 2003/04/01 - 6:00am

No, COM isn't tied to Windows. Read a book, get a clue.


By Jörgen S at Wed, 2003/04/02 - 6:00am

I got as far as:

"Where I conveniently conclude that it can be the only solution on Unix for now"

...before giving up. If the rest of the slides are as obnoxious and argumentative as that, I don't particularly want to read it. The same would apply if the slides were promoting KDE instead of GNOME - it's hard to take a dickhead seriously.


By Jim at Mon, 2003/03/31 - 6:00am

this was also my reactionto these slides.


By SANGOHN Christian at Tue, 2003/04/01 - 6:00am

I think the reason Michael included the cost of Qt on other platforms is because OpenOffice is (like a lot of large open source projects) portable between platforms. If OO was to use Qt, the cost would be a lot greater.

I've also seem some people imply that GTK/Win32 is not very good or something, check this out, see for yourself:

http://gtk-wimp.sourceforge.net/screenshots/

Rather clever that, I'm still trying to figure out the XP theming APIs :)

GTK Mac is a rather sad state of affairs 'tis true.

I'm not trolling, but I wish dot.kde.org was more like gnomedesktop.org - ie where most of the posts are to do with cool programs and the latest toys, as opposed to here, where most of the stories seem to be about trashing GNOME or pumping KDE/Qt. I do check here every so often because I am interested in KDE development, but only rarely is there a story of interest about the technology (sigh).


By Mike Hearn at Mon, 2003/03/31 - 6:00am

Mike you are such a tool!

The only time I see you in here opening your pie hole is when you can criticize KDE in some minor way and/or tout your GTK/GNOME flamage.

I don't see you post when Derek gives the weekly CVS updates on all the cool technology. I don't see you post when Navindra and the other editors post articles about KDE technology.

The _only_ reason you come here is to post these passive aggressive comments that are really pathetic! It is the same on all the other forums... You claim to be so above the troll's but look in the mirror buddy, you are just a troll with a _weak voice_. Damn, I can't stand such passive aggressive people like you.


By anon at Mon, 2003/03/31 - 6:00am

[ Mike you are such a tool! ]

Thanks. I love you too.

[ I don't see you post when Derek gives the weekly CVS updates on all the cool technology. I don't see you post when Navindra and the other editors post articles about KDE technology. ]

I don't normally have much to say about them. I do in fact read them though (well, skim the cvs updates, they are rather long). I don't usually post on the GNOME stories on gnomedesktop.org either, unless I have a question for instance. You can't draw any conclusions from that.

[ The _only_ reason you come here is to post these passive aggressive comments that are really pathetic! ]

Oh hardly. I read comments, and when I disagree with people, or believe they're not in full possession of the facts, I respond. The people posting on this board are normally

a) Very knowlegable about KDE and
b) Slightly (sometimes strongly) biased in its favour.

I'm not an expert on either desktop, but I tend to have differing beliefs on GTK/GNOME to most posters here, so I post my thoughts. That IS what a comments section is for right?

Unless "troll" now means, "doesn't rejoice in the glory of KDE constantly", I don't believe I'm a troll at all. If I went around using abusive language, posting unsubstantiated opinion and passing it off as fact etc, then perhaps, but I don't (or try not to).

So just chill dude, ok? Qt is a fine piece of software for sure, and KDE is a great project. But I like other stuff too, and I don't like to see people making stuff up about other projects - if that makes me a troll then I'm going straight to hell anyway.


By Mike Hearn at Mon, 2003/03/31 - 6:00am

"I don't normally have much to say about them."

Right. You don't have shit to say unless it involves criticizing KDE in some way or touting your GTK/GNOME flamage. It's as simple as that so quit with your passive aggressive 'dot.kde.org should be more like gnomedesktop' and take your biased overwrought passive aggressive self to some other forum. Quit bemoaning the state of the dot and passing this off as intelligent commentary.

You're a tool and it's frightfully obvious from everyone that reads your posts that you are biased and passively hostile towards KDE and Qt.

"Oh hardly. I read comments, and when I disagree with people, or believe they're not in full possession of the facts, I respond. The people posting on this board are normally "

You make every effort to apologize for everything GTK/GNOME and passively criticize every little thing about KDE and Qt that you can. Anyone brings up Qt and you gush about gtkmm. Some one says that C++ is superior to C and then you claim you know nothing/little about C++ and besides gtkmm is great while Qt is somehow not 'real C++'. You just love all the bindings that GNOME provides and bash KDE bindings...

"But I like other stuff too, and I don't like to see people making stuff up about other projects - if that makes me a troll then I'm going straight to hell anyway."

But you make stuff up and apologize when others make stuff up about Qt and KDE. That makes you obviously biased. Coming here (a KDE site) and posting your obviously biased crap ad nauseum makes you a troll.


By anon at Mon, 2003/03/31 - 6:00am

[ It's as simple as that so quit with your passive aggressive 'dot.kde.org should be more like gnomedesktop' and take your biased overwrought passive aggressive self to some other forum. Quit bemoaning the state of the dot and passing this off as intelligent commentary. ]

I never claimed it was intelligent commentary, so clearly you think it is - thanks :)

I don't understand this passive agressive rubbish. If you mean I present my views without hurling insults at people, then yeah, bring it on. It's called civilised discussion in other parts of the world.

[ You're a tool and it's frightfully obvious from everyone that reads your posts that you are biased and passively hostile towards KDE and Qt. ]

It's not obvious at all - apart from the fact that it's not really possible to be "passively hostile", I used to use KDE and think it's a cool project. Yes, I criticise it sometimes, I don't think it's perfect, and if you do then... well, you need to take a step back and get some perspective. Things can always improve.

[ You make every effort to apologize for everything GTK/GNOME and passively criticize every little thing about KDE and Qt that you can. ]

No I don't. That's completely unsubstantiated, where have I said things about Qt that are not irrefutable fact? Pointing out details of TrollTechs licensing isn't criticizing every little thing btw.

[ Some one says that C++ is superior to C and then you claim you know nothing/little about C++ and besides gtkmm is great while Qt is somehow not 'real C++'. ]

Where did I say Qt isn't "real C++"? It clearly is. It redefines a lot of stuff in the STL, will you deny this? That doesn't make it "fake" C++ though, I was simply drawing a comparison between them. Clearly George Staikos is allowed to compare the two, so why can't I?

[ You just love all the bindings that GNOME provides and bash KDE bindings... ]

Where did I bash KDE bindings? You're the one making stuff up now, and it's not even about technology, it's about people, which is far less constructive.

I mean for gods sake dude, get some perspective ok? We're discussing WIDGET TOOLKITS here, not war or politics!


By Mike Hearn at Mon, 2003/03/31 - 6:00am

"I don't understand this passive agressive rubbish. If you mean I present my views without hurling insults at people, then yeah, bring it on. It's called civilised discussion in other parts of the world."

The only reason you post on this forum is to criticize KDE/Qt wherever possible and laud GNOME whenever possible. You are a troll and a liar. This can be seen quite readily.

"Yes, I criticise it sometimes ..."

No, you go out of your way to criticize it and tout GNOME in it's place.

"Where did I bash KDE bindings? You're the one making stuff up now, and it's not even about technology, it's about people, which is far less constructive.

You sir are a liar.

http://developers.slashdot.org/comments.pl?sid=56544&cid=5480863

From a thread responding to Richard Moore:

"I do apologise. I didn't make myself clear. What I meant was: Language bindings that work, and are useful for something other than feature checklist wars on slashdot.

In terms of working, useful language bindings KDE is a C++ environment only. Now kindly fuck off, loser.

autopackage [autopackage.org] - Linux portable packaging"

How freaking embarrasing Mike. LOL. Now why don't you go crawl under a rock and quit trolling on the dot. Sucker.


By anon at Mon, 2003/03/31 - 6:00am

Uh huh. You do realise that I didn't write that, don't you? If you seriously believe I'd write "fuck off loser" at the end of a post, then you need to review my other posts, because I've done that .... er, oh yeah. Never.

I find it pretty disturbing that somebody is imitating me via my sig on Slashdot. I never post anonymously, and when you DO post in AC mode, your sig disappears, so whoever tried that was either extremely stupid, or doesn't understand how slashdot works.

That's a pretty transparent attempt to discredit me, and shows that clearly somebody has concluded that my arguments are sound, so it's easier to try and make me look bad.

How flattering.


By Mike Hearn at Mon, 2003/03/31 - 6:00am

"That's a pretty transparent attempt to discredit me, and shows that clearly somebody has concluded that my arguments are sound, so it's easier to try and make me look bad. "

Ah so now you appeal to paranoia! You deny that you made that post with your bald face hanging out. That's so rich.

ROTFL


By anon at Mon, 2003/03/31 - 6:00am

Well like I said, AC posts on slashdot don't show your sig (for obvious reasons, wouldn't be very anonymous if it did, would it?).

So really, that post speaks for itself - why would I post as an AC but copy and paste my sig? Might as well use the karma bonus.

I'm not going to reply to this thread anymore, it's a waste of time. The discussion has long left the realms of reality, and is no longer about issues, it's about how much you hate me and what I have to say, which isn't interesting to talk about.


By Mike Hearn at Mon, 2003/03/31 - 6:00am

this site has really slid downhill, these sorts of pathetic irrational flame posts are now the most common kind. its a shame and an embarassment to the whole KDE community


By sadened kde user at Tue, 2003/04/01 - 6:00am

Pages