In association with heise online

The challenges

Development of Qt has not just been about Qt Quick. Top of Nokia's requested feature list is "More performance"; as mobile devices get higher pixel densities, and users demand richer, smoother application experiences, so the need for a faster Qt rendering pipeline has arisen. The Scene Graph Project in development for Qt 4.8 is attempting to address that need for desktop and mobile devices by reducing the current three step rendering process (QGraphicsView, QPainter and the OpenGL 2.0 Paint Engine) into a single scene graph driven step, making better use of OpenGL ES to display an applications interface. A separate project, "Project Lighthouse", plans to offer similar performance improvements in the embedded version of Qt. Another project, Qt / 3D, which is a feature candidate for Qt 4.8, hopes to offer a easy and portable C++ interface and QML bindings for creating 3D graphics, making it easier and quicker for developers to create 3D interfaces.

Zoom Sebastian Nyström introduces the seventeen Qt Mobility APIs
Qt Mobility 1.1 is also a major development project. Already consisting of seventeen APIs, Qt Mobility is building up a library of tools for addressing the needs of mobile platforms, from call management and contacts, to sensors and cameras. Although these APIs are specifically for the Symbian and MeeGo platforms and Nokia don't plan to bring them to the desktop operating system versions of Qt, even though this device segment includes laptop and netbook devices which could potentially make use of them.

There are areas where Qt has deficiencies. Accessibility, for example, was described as "probably not one of our strengths" by Nyström. Though there are some Qt developers working on the problems of making user interfaces more usable by the visually impaired there isn't any strategy for bringing accessibility into the core of the Qt framework.

The company is also still developing it's "open governance" model; so far it has opened up its repositories to allow non-Nokia developers to collaborate on code development, but it is still the dominant force in developing the platform. Nokia is also ahead of the curve in some elements of the way Qt development is run, having abandoned copyright-assignment and moved to just requiring a non-exclusive licence to use contributed code.

Probably drawing on lessons learned in his nineteen years at Sun Microsystems, Green said he hoped to see a move towards more committers from the community and an eventual end to the Nokia controlled gate for community patches, but any new tangible plans on governance are still in development. One community that didn't have much visibility at Qt Dev Days was the KDE community. Although there were apparently a number of KDE developers at the event, there were no sessions related to it and only rare mentions. That said, the KDE developers are already busy bringing QML to the Plasma desktop and are looking forward to reaping the benefits of Qt Quick in eighteen months to two years time.

Another area where Qt is falling short in its cross platform potential is with non-Nokia mobile platforms. The message from Nokia staffers from Green down was no Qt for iPhone or Qt for Android, despite The H having talked to application developers who wanted to see their investment in developing Qt applications be made usable on the competing platforms. In Nokia's view, Qt is the framework for Nokia's mobile platforms and although they see the potential benefits of application developers being able to target other companies phone platforms, Nokia is focussing on delivering what it has promised on its own platforms. This is one of the occasions when the community steps in and, for example, works on a port to Android of their own, without the infrastructure support of Nokia.

It's a lot of infrastructure too; in one of the sessions on Qt's continuous integration process the developers explained how they used over 50 VMWare ESX servers with 250 Linux and Unix virtual machines, a number of Apple XServe's and Windows machines to help keep Qt constantly under test, running several branches of the code to isolate conflicting development work. And again there is a lot of ongoing development work, from the big banner features mentioned earlier to behind the scenes optimisations using projects such as LLVM and Clang to make the tool chain more complete.

Zoom Live tech support at Qt Dev Days
Nokia still have a lot of work to do with Qt, but the enthusiasm and openness, especially with the technical support side who were running a Qt clinic at the Dev Days, places it in a good position to deliver that work. The first Qt oriented device, the Nokia N8, is now arriving in stores and was very visible at Qt Dev Days. Hopefully it'll be the first of many devices that bring the products of the Qt toolkit to the general phone buying public.

Print Version | Permalink:
  • Twitter
  • Facebook
  • submit to slashdot
  • StumbleUpon
  • submit to reddit

  • July's Community Calendar

The H Open

The H Security

The H Developer

The H Internet Toolkit