Dev Days 2011 - Qt 4.8, Qt 5.0 and Raspberry Pi

Posted at 12:58pm on Tuesday November 1st 2011

Graham writes:

I spent the first half of last week in a hotel in the outskirts of Munich for Nokia’s Qt Developer Days 2011. This is an annual gathering of the Qt-enlightened, designed to help attendees refresh their skills, upgrade to new ones and hear the gospel from the people who actually write the toolkit. But it’s also a chance to catchup on all the latest Qt gossip.

Nokia is still committed to Qt, despite this year’s event taking place while Nokia’s new Windows phones were being announced in London. Looking at my notes, Marco Argenti, Nokia SVP Developer Experience and Marketplace, said Qt was “a strategic investment for us - today and in the future” in his keynote, as well as throwing a load of statistics at the audience - the framework is on track to achieve 2,000,000 downloads by the end of the year and there’s a 20x increase in Qt application revenue this year, apparently.

And the proof can be seen in the last 12 months of frenzied activity. There have been dozens of additions and improvements. Furthermore, the recent launch of their Open Governance initiative is something that should help to ensure both its survival and its continued growth, and something like this has been a long time coming to the Qt project - it certainly didn’t happen with Trolltech! Almost every decision is now in the open, and that includes the mailing lists used by the developers. Anyone can get involved - whether that’s submitting a patch or helping on the wiki. As Lars Knoll put it, the motivation is to make the Qt Project “Fair, transparent, inclusive and meritorcratic.“ On the Tuesday morning of the keynote, there had been 270 new accounts created since the previous Friday with 53 external contributions - 33 of which had been merged.

Lars gave the best keynote, mainly because he talked about the roadmap for the next couple of releases - Qt 4.8 and Qt 5.0. 4.8 will be out very soon, and features QtQuick 1.1, performance improvements, HTML5 features in Qt Webkit and better portability. The bad news is that 4.8 will be the final version for Symbian (at least officially), which is a shame because many of the improvements are going to have a big impact on mobiles and smart phones.

Version 5, due out in 1st half of 2012 with a beta available in March, does look exciting. The upgrade won’t break source compatibility with 4.x (Lars was keen to point out they’d learnt from their mistakes with 2.x -> 3.x -> 4/x), and here are my notes on what it’s going to include:

fluid touch based UIs

old widgets may be replaced with QtQuick ones

add a new way to create applications - QtQuick becomes the first point of entry

Qt becomes modular so you won’t need to include the libraries you don’t use

QML OpenGL acceleration currently gives 100 fps with one test, but expect 250 fps in v2

DirectFB backend also created

Feature freeze early 2012

Two feature releases a year

Full desktop support in QtQuick

Integrated software OpenGL renderer

Evolve WebKit2 based Qt WebKit

More processor architectures for JavaScript

QtQuick 2.0 has 10 major new features, including:

all new graphics stack FPS

new structure

all platforms now share more code

plugins for every windowing system

Qt mobility is no more - Qt is now a single package

Linux X11 and Linux Wayland backends as core platforms

Lars also said that Andriod and iOS ports are being actively worked on, but I don’t think these will ever be official.

The most impressive thing for me was seeing how far QtQuick has come. QtQuick is Qt’s UI design language. It’s dynamic, interpreted and closely integrated with Qt Creator. Make a change in the GUI and it’s immediately reflected in the code. I spent the first day on a training course in UI design with QtQuick and Creator, and seeing what you can do with some simple JavaScript and a bit of design nous was inspiring. You can make cross-platform smartphone applications very easily, and I left the conference convinced that QtQuick is the future of Qt. It just needs Nokia to be open minded about which platforms it officially supports (and it’s been very open so far).

Finally, down on the exhibitor’s floor, ICS were showing off a Raspberry Pi unit running their Qt 5 stack. It ran brilliantly, complete with OpenGL 2 ES hardware acceleration and full 1080p output onto a massive screen. It was responsive, powerful and full of potential (it booted to the command prompt in about 2 seconds), and I’m really looking forward to getting hold of one. For the price they’re aiming for, the Raspberry Pi really does look set to become the Arduino of the embedded Linux world.

Qt Dev Days are being repeated in San Fransisco at the end of the month, so if you’re interested in Qt development, I’d highly recommend trying to get along.