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

Er... no - they still disliked the license of Qt, and they still bash TrollTech at the slightest opportunity (See all the SCO owns Trolltech comments in the last month). And Miguel and Michael Meeks and others still care enough (thanks guys) to FUD KDE.

oh plz. the arguments are more like "omg, trolltech is gonna control the UNIX desktop through KDE and then it will bitchslap the rest of us, and sell our free software souls to the devol"...

this of course, assumes that:

1. trolltech is an evil company

by Re: This articl... (not verified)

No, it assumes that Trolltech shareholders are going to pressure their employees, the directors or whoever at Trolltech, to work harder and increase profits one day. And then the director, with an evil grin decides that they are in a position to screw over everyone who uses the toolkit, and triple their developer licenses or something.

I know this reeks of conspiracy theory, but it is nothing that does not have a precedent. Corporations are heartless, inhuman from their foundations. Trusting a corporation's 'goodwill' is like digging your own grave. Those things exist for the sole purpose of making money. Trolltech made a conscious decision to license their tools the way they did because they saw commercial value in it. GPL does not apply to them, it applies to anyone who uses their toolkit without the other licenses. Trolltech is the only company that can do whatever it wants with the toolkit.

by Sad Eagle (not verified)

TrollTech is a privately owned company, with 71% of it owned by the employees (and another 5% by a charity foundation). There are no sharedholders to pressure employees or management there. So please, before you start spreading those types of paranoid theories, learn of what you're talking about.

You are assuming these people harbour no ambitions of becoming rich if given an opportunity.

Do you think IBM would have given Bill Gates teh rights to make an OS for their system if they had known he would become so powerful then. No. Back then, MS was owned by its employees too. Only now they are much richer and and employ thousands more.

And the same can be said of Ximian. What's to stop Ximian from forking all the code they do in the future and royally gouging everyone? Sure, the community could just continue with the free branch, but the same can be said for Trolltech and Qt. Qt is completely Free and nothing Trolltech can do will change that.

Ok, that covers 76 percent. Who or what owns the remaining 24 percent (nearly 1/4 of the company)?

7.0% Employee and Foundation Owned

Rest is 5 other private investors, including:

Borland - 8.3%
Canopy Group - 5.8%
Teknoinvest - 3.3%
Orkla - 3.3%
Northzone Ventures - 3.3%

Note that the sole controlling partner in Trolltech is it's employees. The Canopy Group, Teknoinvest, Orkla, and Northzone Venture are companies that invest in tens or even hundreds (in the case of Orkla, which is a rather huge conglomerate in Norway..) of companies.

by David O'Connell (not verified)

Just because Trolltech is privately owned doesn't mean there is no shareholder pressure. Private owners are private shareholders and subject to many the same forces as public shareholders. Further Trolltech employees might well be tempted by an attractive offer and be bought out by a public company.

In fact, Microsoft was a private company until 1986.

Ask yourself this. If Microsoft was to make an offer for Trolltech to sell out with some of its spare $40 billion cash, how long do you think those nice guys at Trolltech would hold out. Would you be happy with Microsoft in charge of key KDE underpinnings. Might they not try and leverage this postion?

I don't believe there is a problem today with Trolltech, the thing is unfortunately, there wasn't a problem with Microsoft in the 1980s. They where the good guys allowing IT departments the world over to escape the yoke of IBM.

I believe Trolltech owns something very similar in QT to what Microsoft had in the 1980s. It wasn't the ownership of the OS but the ownership of the key developer APIs that allowed Microsoft to leverage its position.

Those who cannot remember the past are condemned to repeat it.

by Re: This articl... (not verified)

From Trolltech's website

http://www.trolltech.com

[quote]
Adobe Uses Qt to Build Adobe Photoshop Album
In the latest example of Trolltech's growing market power, software giant Adobe Systems announced that it has used Qt to build its innovative new Photoshop Album application.

"Qt simplified our task by providing high-level tools we could customize to meet our needs," said Mike DePaoli, Photoshop Album Engineering Manager. "The product is excellent, the support was outstanding and we are extremely pleased with our decision to go with Qt".

The software (which helps users find, fix, share, and protect their digital photos) received the "Best of CES" award in Photography and Imaging at this year's Consumer Electronics Show in Las Vegas. CES is the world's largest consumer electronics trade fair.
[/quote]

The horse speaks.

2. Qt is GPL (for UNIX only)

No, Qt is GPL, for X only because there is no other free version, not because it's forbidden.

Qt is QPL too.

There are two versions of Qt (apart from commercial) available for UNIX. Qt X11 and Qt embedded. Both are GPL, AFAIK.

The main point is that it isn't forbidden to develop a GPL version for Windows, Mac OS, etc.
It often looks like Qt is "Unix only" because of the license of the free Qt versions.

by George Staikos (not verified)

The real fact of the matter is that even if there is no cost recovery, the cost of Qt is insignificant. However, there are many examples of Qt code that is far quicker to develop and smaller in size than GTK or almost any other toolkit equivalent. C++ really doesn't have much to do with it as far as I'm concerned. Bindings mean nothing (and in fact are a bit useless for commercial development because they add another point of failure - the bane of commercial /Linux/ development).

You never have to pay for upgrades down the road unless you want new functionality. Maintenance releases are free upgrades. Generally those upgrades are worth the money though. They provide real value. The added functionality will often save development time, once again resulting in cost savings.

Please keep in mind that when I wrote this, I admittedly wrote as a Qt developer who has experienced both worlds and came to these conclusions independently. This has nothing to do with GNOME or KDE, other than the fact that they use GTK and Qt respectively. I don't talk about them at all. I clearly wrote about the -costs- of development with Qt and GTK. The licence issue does creep in because it affects commercial development, but I think it's clear (from a commercial developer's perspective, and from a KDE developer's perspective) that the licence of Qt is quite acceptable.

by Gaute Lindkvist (not verified)

>You never have to pay for upgrades down the road unless you want new >functionality. Maintenance releases are free upgrades. Generally those upgrades >are worth the money though. They provide real value. The added functionality will >often save development time, once again resulting in cost savings.

I'm not saying there is anything wrong about this kind of licensing, but if a shiny new Qt comes out with a new look and feel, you will have to upgrade to make your application fit in the the desktop, otherwise it will look and feel old and alien. This has already happened once (Qt 1 -> Qt 2).

This does add the insecurity about future licensing costs. GTK+ does not have this insecurity, since it is LGPL-based.

Besides wether or not it is worth it is something that may very well change in the future.

It might be that this is all worth it, but if you are trying to be objective you should mention the downsides as well. Qt does look extremely nice, and this has nothing to do with why I like GNOME better than KDE.

Ximian does have a point when it comes to Star Office/Open Office. What kind, and how many licenses will actually have to be used when cross-licensing a product like this?

Quit apologizing!

Michael Meeks said he wanted to see 5000+ developers join him and implied that Qt (KDE) wasn't up to the task because Qt required those developers to purchase proprietary licenses. He said that KDE was less Free because it uses a GPL library which is in direct and total contradiction to the FSF and is another putrid example of crap that GNOME people will say to disparage KDE. The slide said nothing about cross platfrom OO rather the title of the slide was 'Why GNOME on Unix' and he conveniently concluded that GNOME was the only solution and then he lists his crap FUD about Qt.

We are so worked up because it is just another in a long line of top GNOME developers spreading this ridiculous FUD that they know is patently false and repudiated by the FSF and then GNOME apologists (_you_) come here to our site and apologize for this dung. This is not a legitimate criticism and it is horribly hypocritical. It just shows the ethical lapses among some of the GNOME developers.

by Michele (not verified)

Come on guys... get over it... this is getting really silly and annoying.

by anon (not verified)

Do you have anything to say that's not silly and annoying?

This discussion has raised an interesting point. Is it possible to base community-supported dual-licensed free software, such as Open Office or Mozilla, on QT? Any contributions to these projects would also have to be dual licensed. If the free QT code has to be GPLed, only those who owned the proprietary version of QT could contribute. This would rule out the vast majority of free software coders in the community.

The free code doesn't need to be GPL'ed. It can be almost any open source license.

Can free QT be linked to SISSL, NPL or MPL code? Is there a web page somewhere that spells out what licenses free QT can linked to?

FreeQT can link to any Free or Open Source license. It's spelled out in the QPL wha the requirements are. If you need a list of Free and Open Source licenses, I suggest you look at www.gnu.org and www.opensource.org.

It can't link to "pure" SISSL, because that license is neither Free nor Open. But you CAN link OpenOffice to Qt, since OpenOffice is is not "pure" SISSL.

by Sad Eagle (not verified)

Just want to say that the bomb icon for this story seems appropriate ;-)
Thanks, editors!

by Caleb Tennis (not verified)

As someone who works for a company that owns Qt commercial (for unix), I'd like to offer my point of view.

Management tended to be overly estatic about this Linux development environment because it's "free". So, obviously, there needed to be some justification of making a $2300 purchase in order to support this "free" linux system.

When first learning about what was available a few years ago (GNOME and KDE) I set up machines to evaluate both. We chose KDE, and it was 95% because of Qt; it's API, it's professionalism, the signal/slot idea, etc. All of the software we've developed with it has been proprietary in house stuff; we haven't made any money off of software sales - just off of its use.

But I'm sure other people may feel differently. Obviously if you're a lone consultant, it may be a bit too expensive for you to attempt to spend money up front in order to make money off of software. I suppose that's part of capitalism.

But I am a happy Qt commercial user, and we will continue to support KDE development, and pay for Qt, as long as we're still writing software for Linux.

If a GNOME advocate can point me in the direction of information/screen shots of something that can match the power of Qt/KDE/ and KDE kiosk mode, while providing clean documentation, a quarterly newsletter, and 1 year of e-mail support, I'd be interested in finding out more information.

Until then, KDE and Qt well exceed our needs, and I'm happy to be able to use them.

by Chris (not verified)

If you keep your software in-house, why did you buy a commercial QT licence?

by Caleb Tennis (not verified)

It's a requirement of the license, but also because we are now creating embedded products that will be sold utilizing Qt.

by Chris (not verified)

Is it really a requirement of the licence? I don't think Trolltech forbids the use of the free version for in-house development, in fact even if they wanted to they couldn't since they use the GPL.

by Datschge (not verified)

Just let him be happy that he helped a poor little company whose only product he happens to really like. ;)

by Caleb Tennis (not verified)

See: http://www.trolltech.com/developer/faqs/free.html#q9

Using the Free Edition, can I make software for internal use in my company/organization?

The Qt Free Edition is not intended for such use; it is our policy that when you are using Qt for free, you should in return contribute to the free software community. If you cannot do that, you must get Professional/Enterprise Edition licenses instead.
Note that software developed with Qt Free Edition must be distributed as free/Open Source software; i.e. the receivers must be free to give it to whomever they like. In-house distribution is no exception to this rule, of course.

by GuestX (not verified)

It doesn't matter if they believe that the software is "not intended for such use" - such vague statements don't change the rule that *distribution* invokes the relevant clauses of the GPL. There could be a possibility of differing interpretations of distribution: does internal distribution count as distribution under the GPL? But if you were to provide source code internally in your company, I can't see how there can be any compulsion to buy non-free Qt licences.

Since you're going on to release closed source applications based on Qt, this argument is irrelevant, however.

by KDE User (not verified)

First of all, OpenOffice dosen't even use GTK, it uses it's own custom rendering mechanism. This mechanism inherits the colour scheme from kde! So it looks just like native kde program.

The OpenOffice 1.1 beta is vastly improved and is a lot faster, has anti-aliased fonts and adopts more of the freedesktop standards.

Qt is a much better professional toolkit than gtk. The revenue that trolltech goes into qt development and in turn helps kde. GTK has little support, looks ugly, less portable, less ergonomic and flexible, the "cost" of gtk is ximian/gnome/gtk's only "excuse" for their cruddy software.

Still, the kde peole should make at least the kde core independant from any one toolkit, so people can make wrappers to be able to develop for kde in the toolkit of their choice.

by joe (not verified)

But open office will use Gtk sooner than you think. :)

GTK has plenty of support, is very very portable, and can look like whatever you want. In fact Gtk on my desktop looks absolutely gorgeous.

by anon (not verified)

This will happen as soon as GNOME fullfills its promise of becoming the GNU Network Object Model Environment. Very, very soon. Any day now. Any day now the GIMP will also get a usable interface. Yeup. And you can theme it in all sorts of ways that puts WinAmp to shame!!

by werfu (not verified)

Hey, don't forget that while the license fee of QT is bad for commercial developer, it's still good for OpenSource project. Troll tech is, at the same time, making money (so they continuely ameliorate QT), and stimulating the Open Source movement.

by Eric Laffoon (not verified)

> Hey, don't forget that while the license fee of QT is bad for commercial developer...

Don't be taken in. This is total horse crap. Pick up a copy of Programmers Paradise, the software catalog, and start looking at the prices for programming tools. Just an editor can easily be $400. M$ .NET tool kit was at least in the area of two grand IIRC and I seem to remember something like over $3000 for developer network access. For that matter the enterprise version of Kylix is $2000. A full meal deal copy of IBM Webshere is around $50,000. Do you suppose they price it like this for no reason?

People who complain about the cost of software tools and support are just not grounded in reality. It's dead easy to spend $5,000, $10,000 or more setting up a developer under windoze for commercial application development without ever touching a copy of QT. I think the reason they sell so many copies is that a lot of people tend to agree with me that it's a heck of a deal. If I were not so dedicated to open source software and wanted to develop a commercial cross platform app I'd be buying QT without batting an eye. And the only thing I'd complain about on windoze is the cost of an M$ compiler, mainly because I don't trust their tools. That's why OS/2 ran windoze over 10% faster. They used a Lattice compiler. ;-)

by pnut (not verified)

of course, the argument against qt amounted to only 1 out of 16 slides...
I hope people actually take a look at what has been accomplished with open office--check out the before and after pictures:
http://marketing.openoffice.org/conference/presentations-pdf/fri1200/Gno...

by KDE User (not verified)

Well, basically that is just PR talk.
I guess Ximian try to earn money somehow.

Trolltech on the other hand is earning money,
guess why?

by Simon (not verified)

The price of QT is reasonable for certain types of commercial development. ie if you work full time, or you buy unix servers and SAP, it's cheap.
For a hardware company (like us) that would like to make its programs cross platform, for essentially ideological reasons the cost is prohibitive.

95% of visitors to my pages are windows users. 98% of customers. No customers to date have made anything WORK on linux.
The fact is that the linux version won't make me a cent. Not having it will lose me no sales. On that basis I can never recover the 3 months wages that cross-platform QT costs. Remember that for the price of QT I get the whole RAD development platform on Windows, not just a gui toolkit.

For me Kylix was the answer. It is the RAD tool I want, its cross-platform, and the QT license is bundled in it at the right price.
Unfortunately there seems to be no integration with KDE, and it seems stuck at QT2,

I have no problem with Trolltech setting thier price, they gotta eat. But the present price excludes shareware, small project developers, and those who don't see a commercial return from linux/qt versions of thier software.

Perhaps they should offer a commercial Kdevelop/QT license for $99, or get far more aggressive in partnering deals as they have done with Kompany and Borland, so we can use the tool.

by Ed Moyse (not verified)

Be careful when you quote the stuff like "95% of visitors to my webpages are windows users". If I visited your pages I'd look like a windows user too - I'm definitely not! I haven't used it for years, but to avoid poorly designed webpages I've sent Konqueror to identiify itself as IE5.5 running on win98.

by Navindra Umanee (not verified)

Heheh, I didn't even realise I was surfing as a Windows user until I happened to be checking some logs and got the shock of my life... had changed the User-Agent in Konq some time back!

by Anonymous (not verified)

Look at all the Ximian and Sun speakers here in bold no less:

http://www.realworldlinux.com/jsp/ts/100454/index.jsp?cnt_id=10

KDE was supposed to have a speaker at this show but was silently kicked off when Ximian and Sun joined:

http://lists.kde.org/?l=kde-promo&m=104915592612090&w=2

Now tell me again that Ximian isn't evil? This isn't the first time they have hit at KDE somehow. Who suffers? It's not just KDE who suffers when big corporations act like this. Everybody suffers.

by Thomas (not verified)

Who are we to complain about this? Well _if_ they did so... that's their politics... it's their game and their money... KDE has not made a millions of dollar / euro / pound / whatever deal like Gnome... so let's face the facts: It's just like this now....
Of course every big project must feel a bit jealousy of the Gnome project... hey, KDE could need some millions of dollars, too (who doesn't?)
If the G-team is using its newly gained power (money _is_ power) wisely they can even make KDE looking like a childish project; Competition is not 100% fair every time, you have to use your connections... But so far the Gnomers have been (mostly) fair...

So what? Me thinks KDE is the better desktop and thanks to it's GPL-ness nothing can really prevent further development of KDE. It's just that KDE will be locked out from some important decisions for the coming corporate Linux desktop. Only the future can tell, if this is going to be dangerous for the KDE-project.

I agree. They are acting like Microsoft and trying to create a monopoly.

We should get this news out and organize a boycott of Ximian and Sun.

Yep, this reminds me of when Ximian advertised in google on KDE search. Come on, these low handed blows are not what you would expect from a company that is supposadly friendly towards the free software company.

Of course, I would however, expect this from Sun, who has had a long history of being quite ambivalent of free software.

Sun wants control.. they got that with GNOME. They got that with CDE. They get that with Java. They are just a mini-Microsoft.

by FooBar (not verified)

> We should get this news out and organize a boycott of Ximian and Sun.

And why hasn't this already happened 3 years ago? Back then HelixCode and Eazel were The Ultimate Evil(tm).

There was no evidence presented that Ximian or Sun were responsible. Sounds like pure paranoia to me.

by Chris Spencer (not verified)

1) It always amazes me how so many people that have such "GNOME Superiority" complexes always seem to make their way onto a KDE forum :)

2) Seems to me the main problem is people who want something for nothing. You want to make money off of someone elses hard work - hard work that they donated in the belief that people deserve free software - yet aren't willing to pay for it. If you plan to make commercial software then I don't see anything wrong with charging for a licence. If you don't, then you have no gripe about Qt's prices. It's just like anything else in the world - if you want to make money off of it, you need to pay (i.e. a business licence, various certifications...)

by KDE User (not verified)

You know, some people never needed to lift one finger to get what they want,
that's the truth behind those kind of comments.

by FooBar (not verified)

> 1) It always amazes me how so many people that have such "GNOME Superiority"
> complexes always seem to make their way onto a KDE forum :)

Yeah this forum is flooded with pro-GNOME "GNOME IS SO MUCH BETTER THAN KDE!!!"-posts.
Argh, I must be blind, I can't find them!

> 2)

This is only morally correct. But companies (especially big ones) are more interested in saving money than doing the morally correct thing.

But whatever they do, they are always wrong. Look at these situations:
1) Company doesn't care about morals and seeks profit at all costs. People whine about how that company is evil.
2) Company cares about morals. But because of that they make very little or no profit. People STILL whine about them, but this time about how they don't have a good business model and how they will never make money etc. etc.

You see? Damned if you do, damned if you don't.