Last week, Munich saw the 2009 Edition of the Qt Developer Days. Qt Developer Days is a Qt-focused software conference which is held yearly in Europe and the U.S. The American edition will be held at the start of November in San Francisco. 700 attendants and more than 70 Trolls made this edition the biggest Developer Days to date. Qt Development Frameworks had invited a group of KDE developers to the conference, more well-known heads from the KDE world were sent by their respective employers. The days brought training sessions around Qt and many interesting presentations ranging from higher level topics such as the future roadmap for Qt to topics related to Qt programming with techniques and technologies such as the Model/View Framework, QGraphicsView, WebKit, multithreading and many more. Read on for a more detailed report of what has been revealed and talked about during the three-day conference in Munich's Hilton Park hotel.
The first day was kicked off by KDE and KDAB hackers Till Adam and Mirko Boehm who gave an introduction to programming with Qt. Basic concepts such as signal/slots, QLayouts and widgets passed by. At the end, the audience was well-prepared for more in-depth topics such as multithreading using Qt's tools, QWebKit, model/view programming and QGraphicsView. For the seasoned KDE hackers, not everything revealed new knowledge. Nevertheless, reiterating over those rather basic topics helped to prepare for the Qt certification which Qt Development Frameworks has introduced this year. Qt kindly sponsored certification for KDE hackers, who took the opportunity to prove their expertise. Results are not known yet, most of those your editor talked to were rather confident after the exam. Results will only become available in the coming weeks though. Let's wish all those who took the exam (this includes your editor) good luck.
During his presentation, Qt Development Frameworks' Sebastian Nyström gave some background on the state of the art in the Qt world. Nyström told that the plans to grow the Qt developer base 10-fold are well underway. Adoption has grown to 250% of last year's size, an exponential pattern can be observed. This will further increase with Qt 4.6 which will bring support for a number of new platforms, new APIs and vastly improved performance in some areas. The new platforms Qt 4.6 will officially support are Windows 7, Apple's Snow Leopard, QNX, VxWorks and the port to Nokia's Symbian-driven smartphone OS S60. For developers, Nokia is working on the Qt SDK which is built around tools such as Qt Designer and Qt Creator. This SDK will be complemented by the "Qt Developer Network". The adoption of the LGPL license for Qt and opening of the development process is, according to Nyström, also showing the envisioned effect. The Qt developers have already been able to merge well over 400 contributions from conributors outside of Nokia, Qt Development Frameworks.
KDE hacker extraordinaire Lars Knoll told the audience more about the roadmap for the coming year. In contrast to Qt 4.6 (which is due to be released in December), Qt 4.7 will contain only little new features and focus more on stability and performance. Nokia plans to increase the development budget by 50%.
In his presentation about the Qt Markup Language (QML), the declarative UI technology that will be part of Qt 4.7 (despite Lars' announcement to do "less features" in this version), KDE founder Matthias Ettrich, who is heading the Qt department in Berlin, Germany announced the end of the widgets as we know them today. Static, widget-based UIs will in the future morph into object / state relationships that allow for more fluid, rich and attractive UIs.
QML and the declarative UI concept is part of the Kinetic project in Qt, which will start to materialize in the upcoming Qt 4.6 already. The new APIs developed as part of Kinetic in Qt 4.6 are QGraphicsEffect, a framework that makes it easy to apply visual effects to visual elements, the new animation API (which is already being integrated in KDE's Plasma shell as we speak), an underlying State-Machine framework and support for gestures and multitouch in Qt. A beta version of Qt 4.6 has been released during the DevDays.
In the hallway track, your editor met CMake's Bill Hoffman who attended the conference to evaluate -- together with certain Qt developers -- replacing QMake with CMake in the future. This step would surely be welcomed by many KDE developers since it streamlines both layers even more. It will be interesting to see what the future brings on this front.
During the conference, we spotted many of the new N900 Maemo based devices. Developers were largely happy about this new piece of hardware, and were excited to see good progress on this front. With Maemo having announced official support for Qt on Maemo 5, the Qt ecosystem showed great interest in this new platform. Less than 24 hours after getting their hands on it, the KDE team attending the Maemo summit which was held last weekend in Amsterdam, the hackers around Marijn Kruisselbrink showed Plasma running on the N900. Maemo 6 (Harmattan) is already planned for the fourth quarter of this year, leaving the impression that Maemo's transition to Qt is progressing quickly, opening exciting opportunities for Qt developers to dive into mobile development and open and hackable phones. Lucky guy of the conference was definitely KDE's Sandro Andrade who won two contests in a row. Sandro will be going home with an N900 and a new T-shirt. Daniel Kihlberg who handed over the prizes suggested Sandro should play lotto that same day.
Apparently, videos of many of the presentations held during DevDays in Munich will become available shortly on Qt's web pages.