Nokia today announced that it would acquire Trolltech a company which provides software development platforms and frameworks. Trolltech is best known for its Qt product, a multi-platform graphical user-interface framework. Qt is used in KDE, the web browser Opera, Skype and Google Earth applications. Nokia intends to use Qt to enable cross platform development environments.
Read on in the full article.
The slide shows QT on top of S60. As QT provides a complete set of functionality and a suitable virtual machine* it means Nokia will reduce their dependence on Symbian. QT can run on anything so for now run it on top of S60, then eventually you can drop S60...
*virtual machine in the traditional sense - code portability with no reliance on the underlying hardware / os / other machine.
Sorry, I must correct you. QT is no virtual machine. QT (read: [cute]) is a frame work, that enables you to port your app to many different platforms. You can take the same code, but you have to recompile it for every platform. E.g. once you finished your app using cute on windows, you can take the same code, but have to compile it with the QT libraries for the respective platform.
So QT combines the advantage of easy portability (in contrast to JAVA you have to recompile it, but in most cases that's it) with the performance of C++ code (the framework only adds a small overhead).
But QT is dependend on the underlying hardware, so you to port QT to any platform you want to run QT based apps.
Somewhere in the bowels of Nokia Labs will be an effort to port the S60 (+Symbian) APIs to a Linux base, with a view to having one OS across all handsets from the lowest end to the highest. This makes sense on multiple levels - the OS becomes a commodity. They can still differentiate in the handset from one extreme to the other, but this would have great advantages for cost reduction in the handset, and standardisation on one OS. Yes, I know what's invested in Symbian, it's growth, etc etc. I am not slagging Symbian at all, just looking at long term economic reality. As we all know from Krisse's legendary The Last Smarthpone 😊 - mass market low end commoditisation of previously high end features is where it's at. And I'm talking about software, not hardware.
I am curious about the impact of buying Qt/Qtopia will have on Nokia's S60 platform. In programming terms, Qt is aimed the the same level as S60, i.e providing windows, buttons, scrollbars and all the other usual UI thingies. There also appears to be a lot of middleware in it. Details on the Trolltech site are vague and the site is rather busy, so I cannot be more specific.
But, I would say that Nokia now has two competing smartphone platforms, S60 on Symbian OS, and Qt/Qtopia on Embedded Linux.
It certainly seems technically possible to port Qt to Symbian OS, and this would give the cross-platform possibilities mentioned. Problem is, if Qt/Symbian OS is as powerfull as S60/Symbian OS, why would anyone bother writing native S60 apps? Using Qt your target market will be lots bigger, especially for apps that can usefully run on both smartphones and PC's.
OTOH, limit Qt/Symbian OS in some way, and there is no cross-platform synergy.
Nokia has put a lot of effort in creating S60 and *licensing* it, so abandoning S60 appears to me not likely. They could have bought Qt to take down a competitor, but this doesn't seem likely either (the more Mobile Linuxen, the happier the competition). Or, Nokia is just buying things because that's what all companies with lots of money do nowadays.
Sander van der Wal
mBrain Software
I'd be wary of reading too much into the acquisition at this stage beyond what has been said in the press release.
There's all sorts of stuff you might connect together e.g. if Open C does the application logic and Qt does the UI might you not have a 'potentially' highly portable software developer environment.
Just as an aside - I read that Motorola's next generation software platform, MOTOMAGX, sits on top of Qt(opia). I dare say Motorola wont be partying away at Nokia's latest acquisition (bit like kicking them when they're down!).
svdwal wrote:I am curious about the impact of buying Qt/Qtopia will have on Nokia's S60 platform. In programming terms, Qt is aimed the the same level as S60, i.e providing windows, buttons, scrollbars and all the other usual UI thingies.
I think there's a number of things at work here. Writing C++/QT code is easier than diving into the hellish-swamp-from-which-there-is-no-return that is S60 development. Dumping S60 for a QT+Symbian base would... well, make a whole lot of sense and get a lot more developers on board.
Dropping S60 isn't going to be an overnight move, and probably would have been avoidable had Nokia given it more love (read: development time/effort) over the years, but most of that has gone into the Symbian kernel, and not the UI presentation layer. And the Nokia Music Store (codename: moneysink). And the revival of the N-Gage platform. And so on.
svdwal wrote:
Nokia has put a lot of effort in creating S60 and *licensing* it, so abandoning S60 appears to me not likely.
Has anyone really licensed S60? Other than a few oddball licenses here and there, I think licensing S60 has been a spectacular failure.
QT provides a virtual machine in the same was Windows provides a virtual machine. The programmer targets not the underlying x86 processor and it's BIOS, but machine presented to you by the OS - the win32 API. Sure windows can and has been ported to different achitectures, and when this happens you need to recompile. But you as a programmer see only the machine presented by windows. You don't have to worry about the hardware upon which your running.
In the same way QT provies a virtual machine, it's API provides all the functionality required to write an application. The developer would not need to see nor the S60 / Symbian API's.
See the traditional Comp/Sci def of a Virtual Machine.
Can we please stop this 'virtual machine' nonsense.
QT is not a virtual machine. QT is a cross platform development toolkit (widgets and utility classes). You almost always end up targeting the processor and operating system a little bit (configure, makefiles)... but it's relatively OS/Platform/CPU agnostic.
QT is to an operating system what S60/S80 is to Symbian.
In the picture, Qt sits on top of S60, if I read it correctly. Putting a UI framework on top of another is silly. Wonder what they are really up to? Are they trying to say that they will try to create a common runtime environment on top of S40/S60/Qt-based devices/etc, which will provide a basis for software developers to write stuff with python-javascript-perl-xhtml-kind-of-soup? Or are they just trying to lure folks on these platforms by pretending to show some kind of a coherent roadmap for the future, which will never exist, to sell more devices and trap more developers?
Hi,
I remember Symbian started in 1998 but it was not until end of 2001 when Nokia presented their first Symbian handset (7650) - as everybody here probably would remember. Qt over realtime Linux might be better long-term platform then S60 over Symbian but the change will not happen in 2008 and probably not in 2009 either. These things are very long-term, esp. at Nokia 😉 And by that time Nokia will surely port S60 look-and-feel and most applications to Qt so we will not loose much if anything at all. Eg who is really missing S80/S90 these days? Esp. if we can have next communicator with native KOffice shall we complain? 😉
I would not expect Nokia to support Maemo much longer, that's for sure. But what I'm not sure of is evolution of current S60 - Nokia might decide all this TS/animation/sensor stuff might be better done in Qt (where it might already work for all I know - Qtopia had TS support for a long time). And then we are stuck with current S60 without major changes for a very long time and all the revolutionary stuff Nokia promises will be available in one hard-to-get device in alpha-quality (like these N7710, N770 etc)
I'd see Nokia produce an S60/Symbian & QT handset in 3 years. QT is more than just a UI frame work / Tool Kit. It contains a lot of wrappers around threads etc. It's much more of a platform. So then I could see Nokia produce QT API's for each of their Phone Centric API's not covered by QT, thus removing their depdenance on S60 / Symbian. Arriving at a QT/Symbian device with the only real Symbian bit being a kernel - ala MOAP / FOMA. Eventually getting to a QT/Linux or QT/Anything situation.
And Symbian goes the way of the Dodo. Prob in the next 6/8 years. I'm off to Amazon for a book on QT development.
The Zoo of Nokia platforms have grown!
Rafe wrote:I'd be wary of reading too much into the acquisition at this stage beyond what has been said in the press release.
True, but there's no doubt this acquisition can have implications regarding Nokia's smartphone OS strategy.
There's all sorts of stuff you might connect together e.g. if Open C does the application logic and Qt does the UI might you not have a 'potentially' highly portable software developer environment.
Yes, with the same, or reasonably slightly adjusted code you will reach as an ISV a much larger audience. But that's also part the problem, at least for Nokia.
1) having functionally identical, but programmatically different UI's on a single device takes up ROM space. Why not devote that same space to improvements in the apps, and use a single UI?
2) by having a single platform, Nokia will commoditize their hardware, and everybody else's hardware too. Nokia wants to be a software and service company, so this might be deliberate. OTOH, will they make as much money by selling services and software, as they will by selling phones? I don't think so. People don't mind paying for hardware, see the success of TomTom selling boxes with the same software you can install on a phone. Selling only the software however is much more difficult, and you have a lot more competition.
3) Nokia starts to invade on Microsoft's territory, the desktop.
4) Nokia also offers an Open Source alternative to Google's Android. Divide and conquer?
Yes, lots of questions, and I hope Nokia will answer some of them.
Just as an aside - I read that Motorola's next generation software platform, MOTOMAGX, sits on top of Qt(opia). I dare say Motorola wont be partying away at Nokia's latest acquisition (bit like kicking them when they're down!).
That's it, it's a ploy to seriously inconvenience a competitor 😉
Sander van der Wal
mBrain Software
I'm not sure this is good news. Nokia, like most mobile phone manufacturers, has *zero* interest in hobbyist developers. At least on S40 phones there is no SDK, and MIDP (which they had a large part in designing) is horribly designed and crippled. I seriously doubt S40 will ever support Qt.
No good will come of this.