A brief history of Qt for Symbian - and a look ahead

If you didn't already notice, Qt 4.6.0 is out - including our port to Qt 4.6.0 to Symbian. It's been one and a half year in the making and it's about time we summarize and look back for a bit. But, before we get into details about that, here are some fact about our current releases:

Qt 4.6.0 for Symbian in brief:

  • To test out Qt on your phone simply browse to qt.nokia.com/phonedemos with your phone
  • To develop your own applications, download the installer here
  • To find limitations and notes about this release go here
  • To find the list of public bugs for Qt for Symbian go here
  • And, here is the list of of known issues

And of course, here is a video showing some demos made with Qt 4.6.0 running on Maemo and Symbian phones!
Mobile demos on Symbian and Maemo

Qt 4.6.0 for Symbian development timeline:

March 2008

  • Project starts.
  • I go over to Oulu and visit the guys from Digia who has done som pre-studies and a barebones Qt port to Symbian.
  • Hunting for people inside Qt itself to sign on to the project.

April 2008

  • Got Qt collegues to sign on! And got Digia guys as well. We're now 5 Qt guys and 5 Digia guys.
  • We've had some Symbian training - descriptors are ridicolous!
  • Alessandro arrived from the Berlin office! :D Will stay in Oslo for half a year.
  • Working on qmake bootstrapping and setting up git.

May 2008

  • Working on .mmp generator
  • Working on Qt autotest for QtCore
  • Fiddle with EPOCSTACKSIZE and EPOCHEAPSIZE

June 2008

  • "Lighthouse" released internally in Nokia(QtCore + autotests)
  • "Pyramid" plan created
  • Boating trip!

July 2008

  • Jason gets analog clock running in the emulator!
  • We work on the Qt event loop in a Symbian world
  • We're playing around with Open C

August 2008

  • QtGui compiles and links with RVCT
  • Start working on network module
  • QtGui running on my N95! (picture)

September 2008

  • Learn how to sign .sis files internally in Nokia
  • Merged in the network branch into our S60 mainline
  • Got a new guy from Digia to join!

October 2008

  • FTP example working on an E71 picture
  • "Pyramid" is released! (QtGui + QtNetwork>
  • QtSVG ported (picture)
  • Kristian visits the Boston Webkit team

November 2008

  • We play around with flashing phones
  • We plan how to move from Qt 4.4 to Qt 4.5 for the port
  • WolfenQt (stripped down version) running on the N95 (picture)
  • QDesktopServices gets some loving

December 2008

  • New event dispatcher merged in
  • More work on S60 style
  • "Temple" is released!
  • Moving to Qt 4.5 work started

January 2009

  • Guys from Symbian (Sosco actually) visits and we talked about Out of Memory issues
  • Working on menu integration
  • Input methods work started
  • Better font integration started
  • Add more Symbian specific features to qmake

February 2009

  • Ran lance tests to check graphics quality
  • We get a Symbian guy onboard the project
  • We start looking into shared and native bitmaps

March 2009

  • "Garden" is released!
  • Native S60 style is looking good
  • QtWebkit work is starting to speed up
  • We start looking at OpenVG
  • Qt 4.6 kick-off for Qt Oslo team

April 2009

  • QtWebkit running for the first time! (picture)
  • OpenVG paintengine is drawing something! (picture)
  • Major improvements in keypad navigation
  • Frans joins the project too
  • Raptor support is added to Qt

May 2009

  • Harald helps us with exception handling and OOM code
  • Simon joins a few weeks too for helping with Webkit
  • Maurice helps to make nice Windows installer packages
  • We hold a Qt for S60/Symbian crash course in Oslo for the other devs

June 2009

  • Windows 7 is discovered to be OK as a development platform (my machine crashed!)
  • "Tower" is released!
  • We get Qt running on the Samsung i8910! (picture)

July 2009

  • Espen visits Akademy and GUADEC in Gran Canaria
  • The rest of Qt start reviewing our Symbian branch
  • Another Sosco guy joins our team for Phonon work!

August 2009

  • The Qt dialogs are improved for small screen usage
  • Start experimenting with .DEF files
  • More work on getting automated testing properly working
  • Symbian branch is merged into the Qt mainline! SHA: e190e700d707c3000f813c106c27d8f5aeda44d0

September 2009

  • Start working on getting automatic binary snapshots up and running
  • Exception safety autotests added
  • Focusing on package testing, fixing autotests and killing bugs

October 2009

  • More webkit work
  • Native pixmaps gets some loving
  • Jani shows off a cool homescreen demo based on Qt at DevDays. See video
  • Colossus is released!
  • Alessandro and Espen goes to SEE09

November 2009

  • Performance work and planning starts
  • We learn how to Symbian Sign!
  • Qt 4.6.0 RC1 is released!
  • We fix bugs like crazy
  • We test packages like crazy
  • Qt 4.6.0 final is released!

Qt for Symbian what now?:

It is now the 1st of December and we've just celebrated that we managed to deliver 4.6.0 on time. As much as I'd love to rest on my laurels for a little bit, you're probably asking what is going to happen next now for 4.6.x and a coming 4.7. Here is a short brief of the things we're looking at:

  • Fix deployment for Qt for Symbian (smart installer that downloads dependancies automatically)
    OpenGL ES
  • Heavy performance improvements
  • Drastically improve the install experience
  • Closer integration with Qt Creator
  • Fix bugs.
  • Proper Symbian Signed for Samsung and Sony Ericsson as well

If this happens for 4.6.1, 4.6.2 or later is not settled yet, but if you pay attention to this blog as well as our commits you will stay informed.

Thanks to:

  • My wonderfull co-workers, both in the porting team as well as the rest of Qt
  • Our partners: Digia, Tieto and Sosco (now Accenture) and the great developers they gave us (well, we ARE paying for them)
  • Other developers and managers in Nokia who has helped with autotests, signing Qt, tradeshows and more
  • The early adopters who have tried out Qt and given us feedback!

So, as of today Qt officialy has Symbian support. It took us roughly 20 months. We started with one person, and ended up with 15 fulltime developers. We'll relax for half a day, then take a deep breath and continue on 4.6.1 and more long-term 4.7. But right now, we need another glass of champagne...


Espen is happy Qt 4.6.0 is out

Blog Topics:

Comments