Qt Application Development on Harmattan Maemo Summit 2009, Amsterdam 9.10.2009, 1630-1655 Presentation: Ville Lavonius –  [email_address] Demo: Thorbjørn Lindeijer –  [email_address]
One topic – two presentations Qt programming on Harmattan is popular enough topic to require two presentations in the Summit: This is a gentle introduction to the topic. On Sunday @1130 Sergiy Dubovik & Ian Monroe will run a workshop. Other related presentations are noted on the following slides.
2 > 1, even in software development N770 – N800 – N810 Tools with a rough edge. Platform and application development using the same tools.  N900    …  Tools with a lower threshold. Separate toolkits for platform and application development.
Native development for Harmattan SDK for Maemo 6 Lower the barrier of entry for new developers Multiple host environments supported (Linux, Windows, …) Platform SDK for Maemo 6 Preserve current functionality Introduces Scratchbox 2 System QEMU Emulates the entire software stack OpenGL graphics shuttled to the development host GPU Tool to introduce events (posture changes, resource shortfalls, ...) Non-native application  development right after this presentation. Development Nirvana lightning talk on Saturday.
Role of application frameworks Qt turns from an add-on to an integral part of the platform.  Hildon turns from an integral part of the platform to a community-supported alternative.  You can mix and match, the device can contain applications that use different frameworks: Maemo 6 UI Qt Hildon Web runtime (standalone or embedded)  No framework at all / roll-your-own Maemo 5 Maemo 6 Hildon Qt Maemo 6 UI Hildon’s future direction is presented tomorrow evening. Maemo 6 UI framework is  presented tomorrow morning.
Maemo 6 UI Maemo 6 adds a new UI paradigm onto the software stack.  It provides a new widget set for developers. The main element of the new UI style is its directness: data is operated in situ, without need to activate commands from a menu.  The UI is optimized for small, finger-operated screens.  The new hardware is used to the fullest.  Applications can use full screen or be widgets.  The updated Maemo architecture is presented in the very next slot. Maemo 6 UI framework is  presented tomorrow morning.
Qt tools for developers Qt Creator IDE An integrated development environment for coding and debugging.  Wraps tools, both Maemo-specific and generic – all available in IDE-agnostic fashion. Graphical UI designer Qt Designer in Maemo 5 timeframe.  Will evolve for Maemo 6.
Maemo API Futureproof set of programming interfaces.  The goal is to minimize need to create multiple versions of an application.  The API is defined through the development cycle of Maemo 6, and will take into account developer needs as well.  Heavily based on Qt principles, though the existing open source components will not be paved over with new API layers.  Qt Mobility API presentation on Saturday
Best practices – patterns  Familiarize yourself with Qt – it’s the basis for the new UI framework.  Familiarize yourself with Maemo 6 UI – available now, with more information to be released in upcoming months.  Separate UI and logic of the application as much as possible. Participate in the definition of the Maemo API to ensure that the interfaces your application needs will be there.
Best practices – antipatterns  Do not expect a 1:1 correspondence between the frameworks (guidance to be published). Do not expect the entire Hildon widget set to be present (again, guidance to be published).  Do not expect to be able to mechanically port your application (e.g. portrait/landscape mode).
How and when to start First code drop of Maemo 6 right here in the Summit, read-only, enables getting familiar with some of the core UI functionalities. The SDK for Maemo 6 is under development, and the alpha versions will be available early next year.  DON’T WAIT Start developing for Fremantle already today, the SDK is available, and the devices as well. The availability of system QEMU lowers the barrier of entry significantly.
Thank you

Qt Application Development on Harmattan

  • 1.
    Qt Application Developmenton Harmattan Maemo Summit 2009, Amsterdam 9.10.2009, 1630-1655 Presentation: Ville Lavonius – [email_address] Demo: Thorbjørn Lindeijer – [email_address]
  • 2.
    One topic –two presentations Qt programming on Harmattan is popular enough topic to require two presentations in the Summit: This is a gentle introduction to the topic. On Sunday @1130 Sergiy Dubovik & Ian Monroe will run a workshop. Other related presentations are noted on the following slides.
  • 3.
    2 > 1,even in software development N770 – N800 – N810 Tools with a rough edge. Platform and application development using the same tools. N900  … Tools with a lower threshold. Separate toolkits for platform and application development.
  • 4.
    Native development forHarmattan SDK for Maemo 6 Lower the barrier of entry for new developers Multiple host environments supported (Linux, Windows, …) Platform SDK for Maemo 6 Preserve current functionality Introduces Scratchbox 2 System QEMU Emulates the entire software stack OpenGL graphics shuttled to the development host GPU Tool to introduce events (posture changes, resource shortfalls, ...) Non-native application development right after this presentation. Development Nirvana lightning talk on Saturday.
  • 5.
    Role of applicationframeworks Qt turns from an add-on to an integral part of the platform. Hildon turns from an integral part of the platform to a community-supported alternative. You can mix and match, the device can contain applications that use different frameworks: Maemo 6 UI Qt Hildon Web runtime (standalone or embedded) No framework at all / roll-your-own Maemo 5 Maemo 6 Hildon Qt Maemo 6 UI Hildon’s future direction is presented tomorrow evening. Maemo 6 UI framework is presented tomorrow morning.
  • 6.
    Maemo 6 UIMaemo 6 adds a new UI paradigm onto the software stack. It provides a new widget set for developers. The main element of the new UI style is its directness: data is operated in situ, without need to activate commands from a menu. The UI is optimized for small, finger-operated screens. The new hardware is used to the fullest. Applications can use full screen or be widgets. The updated Maemo architecture is presented in the very next slot. Maemo 6 UI framework is presented tomorrow morning.
  • 7.
    Qt tools fordevelopers Qt Creator IDE An integrated development environment for coding and debugging. Wraps tools, both Maemo-specific and generic – all available in IDE-agnostic fashion. Graphical UI designer Qt Designer in Maemo 5 timeframe. Will evolve for Maemo 6.
  • 8.
    Maemo API Futureproofset of programming interfaces. The goal is to minimize need to create multiple versions of an application. The API is defined through the development cycle of Maemo 6, and will take into account developer needs as well. Heavily based on Qt principles, though the existing open source components will not be paved over with new API layers. Qt Mobility API presentation on Saturday
  • 9.
    Best practices –patterns Familiarize yourself with Qt – it’s the basis for the new UI framework. Familiarize yourself with Maemo 6 UI – available now, with more information to be released in upcoming months. Separate UI and logic of the application as much as possible. Participate in the definition of the Maemo API to ensure that the interfaces your application needs will be there.
  • 10.
    Best practices –antipatterns Do not expect a 1:1 correspondence between the frameworks (guidance to be published). Do not expect the entire Hildon widget set to be present (again, guidance to be published). Do not expect to be able to mechanically port your application (e.g. portrait/landscape mode).
  • 11.
    How and whento start First code drop of Maemo 6 right here in the Summit, read-only, enables getting familiar with some of the core UI functionalities. The SDK for Maemo 6 is under development, and the alpha versions will be available early next year. DON’T WAIT Start developing for Fremantle already today, the SDK is available, and the devices as well. The availability of system QEMU lowers the barrier of entry significantly.
  • 12.