Note:- Some corrections or clarifications to the post
- The Article is about QT on Symbian. It does not concern other implementations of QT including Meego, Linux, Mac or PC.
- Aron from Nokia clarified that UI designing issues are already being addressed with QT-quick along with QtDesigner so I am striking that off ..
QT is the runtime of choice for Nokia. Considering that Nokia has been consistently losing developer mindshare, one would have expected QT to be somewhat of a game-changer. On current evidence, it’s absolutely not. Here are my thoughts on how Nokia could improve it !
At Mobisy, we have been working on various Mobile Development SDKs for years including Symbian C++, J2ME, Blackberry Java, Android, Windows Mobile and iPhone. The choice of development purely from the developer’s perspective depends on 2 parameters.
- Ease of programming with the native capabilities needed for the app
- Ability to create an awesome interactive app for end consumers without spending an inordinate amount of effort.
As you can see, the Mobile web is extremely easy to develop but with very limited native features. Symbian has all the features/ power a developer needs but is extremely hard to program to. Android seems to have done the balance pretty well, it’s relatively much easier to program and offers access to very powerful features through its SDK. No wonder, it’s the most popular Mobile development SDK !!
Now consider QT for Nokia. It should have been much closer to iPhone / Android in ease of use but it’s closer to older Symbian S60 runtime (which BTW is the toughest Mobile SDK to write to in the world). In terms of capabilities/features, it’s much further than the older Symbian S60 than it should have been.
As you can see, the Blackberry is the toughest to create an engaging user experience for where as iPhone is the easiest one. So if I want to write a cool app, I would go for iPhone as an environment of choice.
Where does QT stand? It’s again closer to Windows Mobile/J2ME rather than Android/iPhone. It’s surely an improvement on Symbian S60 but nothing dramatic.
So where does it leave Nokia now? I had an interesting chat at a developer conference last Saturday on the same topic. Based on that discussion, here are 5 things Nokia can do to improve QT
1. Examples must work
There are some demo examples given with SDK, but some of them do not work at all (OpenGL and QCamera for example). It’s a fairly simple thing even a startup like us knows. If it isn’t working, don’t release it.
2. Installation has to be straightforward
Creating a QT installer to test on your phone has a learning curve and it’s not well documented at least not well enough. Things get more complicated when you want to run your QT app on S60 3rd or 5th edition Nokia phones vs Symbian^3 phones. Developers and users must not find it so hard to install a QT app on their phones.
3. Don’t discriminate between developers
This is the thing developers hate the most. For a long, Nokia had this approach in providing access to ‘private’ APIs to some ‘privileged’ developers and companies. I would recommend they take an ‘Android’ view of things and let users decide if something is going to harm their phones.
4. Involve developers while building SDK.
I do not know if Nokia had developers trying out the SDK. If they did, it does not seem that the feedback has been incorporated. Having a bunch of developers (paid if necessary) trying out your pre-release SDK has a huge advantage. Not only you may get a chance to improve workings, but you may also get a set of libraries which will help other developers build some awesome stuff on it. Nokia themselves executed this very well with their WRT run-time. Some of the things which could come out of such focus groups include
- Working Open GL library for 3D graphics
- Web 2.0 working library (similar to Three20)
- 2d working library(similar to Cocos2D)
- Standard JSON, XML parsers
The list is unlimited.
In theory, Nokia still has a chance to change the future of smartphones only if they can get their act together especially while attracting developers to their ecosystem. It’s extremely frustrating to see a pioneer in smartphones and a Mobile giant fumbling so badly in the world of Mobile apps. Apart from getting the Ovi store in shape, the thing they must focus on is getting QT to work as well as it can !!
p.s.
Check out the Mobile Monday Bangalore discussion on the same topic below(pardon the low volume)