Wednesday, January 14, 2009

Time to Get Qt?

Now this is interesting. I've mentioned a few times in my blog that the world would be a different place if Qt was given a free commercial friendly license, like LGPL. Of course when Trolltech was an independent company, that would have killed all their revenue. But now that they're owned by Nokia, I guess the time has come for them to make the change.

And I think this will open people's eyes to Qt. It's certainly a very rich framework giving pretty much everything you need to make a truly cross platform application, i.e. #ifdef free. And it's used in some very popular applications like Skype, Google Earth, and the VirtualBox manager. And, of course, it's the foundation of the Linux KDE desktop environment, which has it's devoted fans.

And again, being LGPL, I'd expect to see it used by more commercial applications. Heck, it will now pass my policy and I'll be able to include it in Wascana, and the SWT developers will also be allowed by their lawyers to write the port against it. Who knows...

But as I scout the horizon of desktop and mobile apps, I wonder if the apparent momentum away from C/C++ has become too great for this to make a significant splash, or will it just be a ripple. Maybe my head is too deep in WebKit these days and my view is getting tainted, but the web is slowly taking over. I guess the one thing Qt has going for it is a decent WebKit integration so maybe they can get the best of both worlds. Either way, it's definitely time for me to take a deeper look at Qt (and it's CDT integration, of course ;)).

9 comments:

  1. Will Qt Jambi go LGPL as well ?

    ReplyDelete
  2. That's the rumor in slashdot, but I'm not sure exactly how far the LGPL goes.

    ReplyDelete
  3. Yes, Jambi will be as LGPL as C++ Qt. The C# and ruby bindings for Qt from the KDE project are already LGPL, the python ones are at present still GPL+commercial.

    ReplyDelete
  4. No offense to your Wascana effort, but I've found Trolltech's QtCreator to be all I need on any platform (the big Three anyway). Compiler, linker, debugger, IDE, form development, etc...

    ReplyDelete
  5. Yes, but can you create web pages with it? Can you debug JavaScript with it? Wascana is really about being an entry point into the world of Eclipse for Windows C++ developers.

    BTW, I actually can't see QtCreator mentioned on their web site. I wonder how serious they are about getting into the IDE business, especially given Nokia's participation in Eclipse.

    ReplyDelete
  6. Yeah it's still in Beta so it's in a really weird place. Here's the URL if you want to try it out: http://www.qtsoftware.com/developer/qt-creator

    It's very likely that I don't understand what Wascana is all about. I think QtCreator is a very specific tool: For designing Qt applications in their extended flavor of C++. As a result, of course it can't do everything under the sun, that's what Eclipse is for! :)

    However, if what you want to create are Qt desktop applications on the big three platforms, then it's got all you need and is a very consistent experience across all three. It's also open source so you can see how they did things (of course QtCreator is written in Qt).

    ReplyDelete
  7. Thanks, Jeff, I was wondering what happened to it.

    BTW, I think Wascana with the Qt Eclipse integration might do everything QtCreator can. I need to check it out, though.

    ReplyDelete
  8. Oh, and Wascana is just Eclipse CDT, MinGW toolchain, MSYS shell/build tools, and assorted header files and libraries and Eclipse plug-ins. It should be possible to add the Qt libraries and Qt Eclipse integration plug-ins to Wascana as well.

    ReplyDelete
  9. *Please* look at the Qt integration if you can :-) There are several issues with it right now (like practically not being able to use KDE widgets in the GUI builder).

    Now that the integration is open source though and Qt is commercial-friendly as well I have high hopes that all these "baby diseases" will be overcome soon :-)

    BTW, kdevelop4 's parser/code model can now actually evaluate C++ templates (how cool is that) - e.g., can calculate primes by evaluating a template metaprogram, would it be possible to get such a feature into CDT?

    ReplyDelete