Qt Goes LGPL
So, Qt has gone LGPL and now people can link proprietary and other non-GPL compatible software with it. Some will say "I told you so", but most of them are from the "develop everything for nothing, developers don't pay for development tools" bedroom programmer brigade. Qt is far superior to any other LGPLed or more liberally licensed cross-platform development toolkit there is, and there's a reason for that - selling commercial licenses and investing in Qt and its future has put it in that position. Using GTK+ as an equivalent example, no one has been willing to put in the gruntwork to really move it forwards versus other platforms beyond bugfixing and deprecation because there was no real incentive. Now Nokia would like to expand the usage of Qt, use Qt to help it sell more products and the licensing revenue is not as vitally important as it once was for Qt's survival. Now the hard work begins.
It has certainly changed the game as far as reliable cross-platform (GUI) development goes, and it is certainly a much more viable option than Java, GTK, wxWidgets or any of the other inferior methods that made the wrong decisions about GUI native look and feel (wxWidgets, SWT) + bugs versus alien look and feel + less bugs (Java). The problem with wxWidgets and SWT is that they have to find some commonality between all the platforms that they want to work on and port to that subset. There's a reason why SWT has a very long bug list and the Win32 version works far better than the GTK or Mac versions. For the bugs that exist developers have to find a way to replicate functionality or even bugs that work natively on all platforms so that code that works in one way on one platform works in the same way on another platform, allowing for any native nuances they can get away with. This is incredibly hard and is never likely to be a winning solution as they always have to provide the lowest common denominator of functionality.
Qt does cross-platform GUI development the correct way that allows things to work, most of the time, and that's GUI emulation. While I'm sure that Qt uses as much of the native platform as it can for native look and feel, the GUI has always been drawn within the toolkit. This enables developers to have more control over what is and isn't available, means they don't have to fight fires trying to achieve the lowest common denominator between platforms and they don't have an open ended bug list.
We will now see whether Nokia actually gets development and whether the Qt people can guide them. Nokia really needs Qt to work to help fend off companies like Microsoft outdoing them through developers and using their current monopoly to do so. What Qt needs is the following:
- A way of breaking out from basic cross-platform and GUI development that encompasses network communication like DCOM and RMI as well as bringing Qt into the web development world. Plasma within KDE has done a great deal on that front. The new licensing additions will really help to remove any licensing questions developers might have had with doing the latter and makes things a lot simpler.
- Head-off one of Microsoft's lock-ins for developers within desktop development. Qt needs a simple set of cross-platform APIs for dealing with Microsoft Office documents, a simple set of cross-platform APIs for dealing with Open Document programmatically and a way of getting the former to the latter programmatically. Do this and you're removing a huge impediment.
- Make installation better. No one, in the Linux distro world certainly, thinks that easy installation of third-party software by users is necessary. It looks as though Qt might have to go alone by allowing Qt software to be easily installed.

0 Comments:
Post a Comment
<< Home