You Are Here:

Community: Blogs

Kate Alhola's Forum Nokia Blog

Some thoughs about maemo animated UI technologies

kate.alhola | 11 April, 2009 06:31

ELC&LF-co-op

After having several questions and face to face discussions in Linux Foundation Collaboration Summit I think that I should tell to wider audience what I had in my mind. I had a presentation titled Animated UI technologies in maeemo 5 "animated_ui_elc_2009.pdf" and I have been talking about Maemo Qt since last summer. Once again I needed to answer questions about what Nokia will do with Gnome.

I remember when I saw first Clutter demo in Guadec 2007, my immediate reaction was that I want this to maemo. We hacked internally Clutter to work in N810 but due legal reasons we were unable to release needed OpenGL-ES drivers for N810.
I also did experimental Qt port for maemo based Qt 3.3.4 but once again it was depending some non public files in these days. Then pieces started to get together.

Summer 2008 we Hired Antonio Aloisio for doing Qt maemo port  and in Maemo Summit  September 2008 Nokia announced that Next generation maemo device will have OpenGL-ES2.0 support. When Maemo 5 Alpha SDK was released in March 2 2009, we released same day Qt 4.5 with OpenGL-ES2.0 support for Maemo. Same Qt 4.5 port will also run in maemo Diablo but without hardware acceleration. Now we were in situation where all pieces were in their places and developers could start developing animated UI for maemo.

We saw quickly results like Kaj Grönholm's http://kgronholm.blogspot.com/2009/04/qt-animation-framework.html animation example or morpheuz animated layouts example http://labs.morpheuz.eng.br/blog/04/04/2009/more-update-about-animated-layouts. The nice thing is that in Kai's example Qt4.5 performs well in N810 even without hardware acceleration.

In my opinion, the future in mobile platforms belongs to the animated UI, it is not just for wow effect, but more importantly, it also it allows to improved usability in small screen mobile devices that are mainly used with finger.

I try strongly emphasize that developers should give up in their mindset about old static 2D widget UI model. Time is to innovate new better ways to build user interfaces. The animated UI toolkits like Clutter or Qt GraphicsView/Kinetic are no longer same thing than old GTK+ and UI design simply has to be done differently than thinking about boxes, what is stored in the box, menu items and the like.  It may be hard to some to give up in their minds their old comfortable GTK+ or Qtopia and learn to think the new way.

The animation toolkits are not the only new thing to learn. We can do scriptable UI where actual user interface look and feel is defined by Javascript and XML files or use embedded browser technology to build user interface.

The legacy GTK+ applications will still run in maemo 5 and most of applications still are made with GTK+ but I just would like to advice developers of new applications to check out the Animated UI technologies and the vast possibilities for usability they offer. I also remind that Gnome  and Qt are still based on same Free desktop foundation layer technologies like Dbus, Gstreamer, Telepathy, Pulse audio etc. They remain same even if we do user interface by new way.

 


Comment to about consistency.

The stupid Blog tol did't allow me to comment my own posts :(

Now is time for innovate, time to get ideas to converging consistent UI comes afterwards.

We have realized this issue and we are working on it. But we need to proceed step by step.
We have taken lot of steps to release Fremantle Alpha SDK, Qt 4.5 for Maemo. Also in Qt SW the QT-Kinetic is still in Qt-Labs. Next steps will follow but i think that also developers should prepare their way of thinking to this new technology and not be stuck in old world.     

 

 


 

Consistency  continued

I did not say that we are not working for consistent animated UI, I said
that we must proceed step by step, building stone by stone.

I did not say that consistent UI is not required. Don't even
think that Alpha-SDK pre-pre releases of software are ones
that we are going to release as final product.

There is two choices, we can release code and SDK step by step so that
developers can make them familiar with new features or we can keep
everything closed until in some day we have all consistent new UI.

If you like to use animated UI when we have all consistent UI, you simply
can ignore all our alpha SDK's and wait until we have final version out.

I think that majority of developers rather see open development model
from Nokia when we release lot of development versions before final product.

 

RSSComments

Consistency

liquidfoo | 12/04/2009, 11:19

While I totally agree, that old fashioned widgets are not the best solution, the main problem I see is UI consistency.
When every developer uses his own ideas on how to implement a "flashy" interface, a user will have to re-learn concepts for every application he uses.

Apple did it right, by providing a set of great widgets and most importantly a strict Human Interface Guideline.

For some applications new interface approaches might be good, especially since there is a lot of room to innovate.
But I guess for most applications it would be better to have guidelines and some ready made widgets targeted at small-screen devices. Here something like the Qt Embedded Widgets comes to mind http://labs.trolltech.com/blogs/2009/03/23/embedded-widgets-source-code-released/ ...
Maybe even some abstraction that uses Kinetic or Clutter to provide a basic set of preferred animations and ways to interact.

That said, I hope Nokia and the Maemo SW team realizes the urgent need for some strict and thorough User Interface Guidelines that are available to the public. Especially when written with animated UIs in mind.

NOW is the time for a consistent UI

MilhouseVH | 13/04/2009, 03:14

> Now is time for innovate, time to get ideas to
> converging consistent UI comes afterwards.

I'm really saddened to see you make this point - if this is what you (and, presumably, others in Nokia) believe then there really is no hope for the Maemo platform, the competition will make your next attempt at an inconsistent UI look amateurish without even trying. The competition have got UI consistency nailed down, they even wrote a book on UI consistency. And they gave that book to their developers. What are Nokia doing? Telling us to roll our own?? Where is your book on UI design for the Maemo platform?

A usable, consistent mobile UI is what Maemo and Nokia tablets have been crying out for since their inception, that's 3+ years ago and here we are, today in early 2009, with a senior Nokia developer suggesting that a consistent UI isn't required? Ye Gods! I don't mean to offend you Kate but please, get a clue - UI consistency is everything! :(

I really couldn't care less about animated widgets and OpenGL-ES2 when the fundamentals of the Maemo UI are badly thought through, it's a mess.

Personally, I'm tired of the outdated, slip-shod, incosistent and frankly cr@p UI that has been provided in Maemo 1 through 4, and would be overjoyed to see Nokia deliver a coherent, consistent and usable user interface along with a well specified interface guide.

The widgets, animation and eye-candy can come LATER - let's just get the basics right first!

Demand for HIGs

liquidfoo | 13/04/2009, 15:02

I think most of us appreciate the early release of the snapshot of the SDK.
I also agree that there are many steps to take to get to a good and consistent and yet modern UI.

Still I believe it is crucial to have User (Human) Interface Guidelines laid out in a very early phase of the project. For one, this makes it possible to discuss potential problems and on the other hand allows developers to prepare their applications to adhere these guidelines.

I am quite sure that many parts of the upcoming Clutter interfaces have already been defined as they are most likely in advanced development already.
However I wonder if there is a common UI concept behind all of them and if so, how thorough such specification is laid out.

It is clear that there are disclosure concerns but given the demand for a good and consistent interface in todays market it would be wise for Nokia to be as open as possible about it.
We should also keep in mind, that not only developers (even to a less extend) are designing interfaces. Andrew Zhilin for example had some excellent ideas on his blog. Still there is basically no feedback from Nokia on how those ideas match the concepts and plans of the upcoming Maemo interface.

Providing Clutter and Kinetic only helps developers for now to get used to the concepts and APIs behind it. Having an open HIG would allow people like Andrew to contribute to the concepts and innovate in this field.

I hope I made my point clear, that there is a synergetic demand for such documents, as Nokia (Maemo SW), developers and usability experts would benefit from it.

Demand for HIGs

kate.alhola | 13/04/2009, 19:04

kate.alhola

I agree about demand of HIGs.

I just would like to remind that in Fremantle, there is Hildon desktop composite window manager that makes animated the desktop efects. There are also Clutter and Qt toolkits that provide animation toolkit for applications. There will not be animated widget library yet. And because the animated widget library does not exist, but the abstraction level is plain Clutter or OpenGL, there will not be HIG for it.

OpenGL and animation toolkits were one of most wanted features add to maemo and now we have them. Next step is to have more.

You must login to post comments. Login
 

Rate This

 
 
Bookmark this page: DeliciousDiggFacebookGoogleYahooStumbleUponRedditDiigoTechnocratiTwitter  Share this page Share this page Print this Page Print this page Invite a friend Invite a friend
京ICP备05048969号    Email Newsletters Press Terms & Conditions Privacy Policy Sitemap Contact Us © 2009 Nokia 
RDF Facets: qdcZdescriptionQSxkateE2ealholaE20E7cE2021E20JanuaryE2cE202008E2019E3a47E20Ea0TheE20newE20NokiaE20N810E20internetE20tabletE20supportsE20aE20featureE20calledE20USBE2dOnE2dTheE2dGoE2cE20orE20shorterE20USBE2dOTGE2eE20TheE20OTGE20meansE20thatE20N810E20canE20actE20inE20bothE20USBE20rolesE2cE20slaveE20andE20masterE2eE20YouE20canE20findE20moreE20aboutE20USBE2dOTGE20fromE20httpE3aE2fE2fwwwE2eusbE2eorgE2fdevelopersE2fonthegoE2fE20E2eE20InE20SlaveE20roleE20N810E20actsE20asE20aE20FATE2dformatE20memoryE20cardE20orE20withE20gE5fetherE20driverE20asE20aE20USBE20networkingE20cardE2eE20InE20SlaveE20modeE20youE20canE20connectE20yourE20tabletE20toE20yourE20PCE20andE20itE20showsE20upE20byE20defaultE20asE20eE78ternalE20memoryE20cardE2eE20UsingE20USE2eE2eE2eX qdcZidentifierQSxhttpE3aE2fE2fblogsE2eforumE2enokiaE2ecomE2fblogE2fkateE2dalholasE2dforumE2dnokiaE2dblogE2f2008E2f01E2f21E2fusbE2donE2dtheE2dgoX qdcZpublisherQUxhttpE3aE2fE2fswE2enokiaE2ecomE2fidE2fc764fd1cE2d8b06E2d499aE2d9a6aE2d17c3903d5a65E2fforumE5fnokiaE5fcrawlerE5fagentX qdcZtitleQSxKateE20AlholaE27sE20ForumE20NokiaE20BlogE20E7cE20USBE20OnE2dTheE2dGoX qdcZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qdcZtypeQUqfntypeZBlogContentQ qdcZtypeQUqfntypeZBlogE45ntryQ qdcZtypeQUqfntypeZCommunityContentQ qdcZtypeQUqfntypeZE52esourceQ qdcZtypeQUqfntypeZWebpageQ qdcZtypeQUqmarsZManagedE52esourceQ qdcZtypeQUqwebZInformationE52esourceQ qdcZtypeQUqwebZPageQ qdcZtypeQUqwebZE52esourceQ qdcZtypeQUqrdfsZE52esourceQ qrssZdescriptionQSxkateE2ealholaE20E7cE2021E20JanuaryE2cE202008E2019E3a47E20Ea0TheE20newE20NokiaE20N810E20internetE20tabletE20supportsE20aE20featureE20calledE20USBE2dOnE2dTheE2dGoE2cE20orE20shorterE20USBE2dOTGE2eE20TheE20OTGE20meansE20thatE20N810E20canE20actE20inE20bothE20USBE20rolesE2cE20slaveE20andE20masterE2eE20YouE20canE20findE20moreE20aboutE20USBE2dOTGE20fromE20httpE3aE2fE2fwwwE2eusbE2eorgE2fdevelopersE2fonthegoE2fE20E2eE20InE20SlaveE20roleE20N810E20actsE20asE20aE20FATE2dformatE20memoryE20cardE20orE20withE20gE5fetherE20driverE20asE20aE20USBE20networkingE20cardE2eE20InE20SlaveE20modeE20youE20canE20connectE20yourE20tabletE20toE20yourE20PCE20andE20itE20showsE20upE20byE20defaultE20asE20eE78ternalE20memoryE20cardE2eE20UsingE20USE2eE2eE2eX qfnZdistributionQUxhttpE3aE2fE2fblogsE2eforumE2enokiaE2ecomE2fX qfnZtopicQUqfnTopicZmaemoQRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZtypeQUqfntypeZBlogContentQ qfnZtypeQUqfntypeZBlogE45ntryQ qfnZtypeQUqfntypeZCommunityContentQ qfnZtypeQUqfntypeZE52esourceQ qfnZtypeQUqfntypeZWebpageQ qfnZupdatedQDx2008E2d10E2d02X qfnZuserE5ftagQSxmaemoX qmarsZdescriptionQSxkateE2ealholaE20E7cE2021E20JanuaryE2cE202008E2019E3a47E20Ea0TheE20newE20NokiaE20N810E20internetE20tabletE20supportsE20aE20featureE20calledE20USBE2dOnE2dTheE2dGoE2cE20orE20shorterE20USBE2dOTGE2eE20TheE20OTGE20meansE20thatE20N810E20canE20actE20inE20bothE20USBE20rolesE2cE20slaveE20andE20masterE2eE20YouE20canE20findE20moreE20aboutE20USBE2dOTGE20fromE20httpE3aE2fE2fwwwE2eusbE2eorgE2fdevelopersE2fonthegoE2fE20E2eE20InE20SlaveE20roleE20N810E20actsE20asE20aE20FATE2dformatE20memoryE20cardE20orE20withE20gE5fetherE20driverE20asE20aE20USBE20networkingE20cardE2eE20InE20SlaveE20modeE20youE20canE20connectE20yourE20tabletE20toE20yourE20PCE20andE20itE20showsE20upE20byE20defaultE20asE20eE78ternalE20memoryE20cardE2eE20UsingE20USE2eE2eE2eX qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX qrdfZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qrdfZtypeQUqfntypeZBlogContentQ qrdfZtypeQUqfntypeZBlogE45ntryQ qrdfZtypeQUqfntypeZCommunityContentQ qrdfZtypeQUqfntypeZE52esourceQ qrdfZtypeQUqfntypeZWebpageQ qrdfZtypeQUqmarsZManagedE52esourceQ qrdfZtypeQUqwebZInformationE52esourceQ qrdfZtypeQUqwebZPageQ qrdfZtypeQUqwebZE52esourceQ qrdfZtypeQUqrdfsZE52esourceQ
User Rating: qfnZuserE5FratingQNx5E2E0000X
RDF Facets: qfnZuserE5FtagQSxdevelopmentE2DprocessX qfnZuserE5FtagQSxgoodE20phoneX