Wednesday, February 10, 2010

Direct UI madness

Last September I blogged about Direct UI, Orbit and Qt. I drew my own conclusions based on the information publicly available and said that Direct UI will be a bridge between Maemo and Symbian. I'm sorry to say I was wrong. Not because of actually being wrong but because this is actually pretty bad news.

To make the story short, Qt alone is not enough for modern mobile user interfaces. New UI paradigms require new widgets to be built. Essentially these could be built in Qt to be fully cross-platform but unfortunately we are not there yet. The way Qt handles look and feel on different platforms nowadays is done via Qt styles and there should be nothing preventing creating a style for both S60 and Maemo. After all, Qt works seamlessly on different desktop operating systems already.

The first problem is that there shouldn't really be need for any framework on top of Qt. Having a new layer on top of it not only breaks the compatibility to every system not supporting the new layer but also feels like a totally unnecessary layer on top of Qt.

The second and the more severe problem is that somewhere in the middle of process of creating this new layer the paths between S60 and Maemo got separated. This shows that building products is more important to Nokia than getting a decent development platform together. Breaking the compatibility to every other platform but S60 and Maemo I could have somehow accepted even though I wouldn't have liked it. However, not taking the full advantage of Qt between S60 and Maemo seems just extremely stupid and shortsighted.

You'll still be able to create plain Qt applications that work between platforms but you won't be able to take advantage of all the widgets available on the platforms. At least not until (if it will ever happen) Qt actually provides the same functionality.

I stand corrected and remain somewhat disappointed.


Teppo said...

Interesting, and I really believed that Qt would have "saved the world".

When you are mentioning widgets, I assume you mean parts of UI, not WRT or other widgets?

I'm not that familiar with Qt, but if I again understood correctly, you are able to make simple cross-platform applications. When you want to make some "hardcore" then you have to do it separately for Symbian and Maemo? Just like in web world today, simple pages work in each device but when you add huge amount of JavaScript and CSS, you are in trouble, so to say.


Hude said...

Yes, widgets refer to UI widgets, not web based widgets. (For some reason people seem to have adopted web based widgets as widgets.)

You could just make Qt applications in both but then you will miss the integration features to either the Maemo Direct UI or the new Symbian UI. The applications would most likely look a little out of place too.