Have you checked this? (Ubuntu Phone Video)
I watched it earlier today. It is quite impressive. The Ubuntu phone looks promising. I am keen on the swipe gestures because they remind me about MeeGo.
Here is link that explains why we all should be exited: http://developer.ubuntu.com/get-started/gomobile/ - at least I am.
I'm really looking forward to the mobile market in 2013/2014. Finally we will see a bunch of competitive products released, be it Sailfish, Tizen, Firefox OS or now Ubuntu - and competition is always a good thing!
Exciting! And Qt / QtQuick support out of the box is of course the cherry on top of it. ;-)
I wonder why there is no official response from the QtProject. With Ubuntu we have yet another major player heavily investing in Qt / QtQuick and QML as their primary native development platform.
Competition is fine and dandy, but it also leads to fragmentation. With Ubuntu in particular it is not a problem, since you can run native code and just re-target your applications, but for Firefox OS you have to redo everything in HTML/JS.
Ubuntu is actually considering creating its own SDK in the near future, and it is a little sad to see even open source pioneers do the same thing big and greedy companies do - push their own way of doing things, which is not compatible with other platforms. And while it looks like the SDK will be Qt5/QML based, it is not likely that it will be portable to other platforms, much like BB's Cascades. There is, at least IMO, a big difference between using Qt5 as a cross platform tool and using Qt5 to create a platform specific tool that doesn't work on other platforms (unlike vanilla Qt).
I'd rather see different platform vendors converge on a single cross-platform and portable SDK, so that developers have an easy time reaching as many consumers as possible with the same code base, not having to code in a bunch of different languages, targeting a bunch of different frameworks with incompatible APIs. Something like HTML/CSS/JS, only without sucking so bad when it comes to differences in / incomplete implementations, different syntax for doing the same thing and so on.
In this regard, it will be better for Ubuntu to simply adopt Qt instead of creating their own Qt flavor like BB.
[quote author="utcenter" date="1357243283"]
I'd rather see different platform vendors converge on a single cross-platform and portable SDK, so that developers have an easy time reaching as many consumers as possible with the same code base, not having to code in a bunch of different languages, targeting a bunch of different frameworks with incompatible APIs.[/quote]
I think majority of people will agree with you but community attempt has higher chances here. Individual vendors don't want to sacrifice time for interoperability. "native" look might be their other motivation. canny already pointed to potential "community" attempt here: http://kodira.de/2012/12/qt-components-on-blackberry-10/
I personally write pure QML apps but I don't have anything against components if they are going to be cross-platform. BB10 accepts pure QML apps thus non-default components shouldn't be problem either. I don't see why it should be problem on other platforms. Actually good components implementation could handle "Back" button on Android properly, I guess.
bq. Individual vendors don’t want to sacrifice time for interoperability
I know that is the case, and yet it does not make sense. I mean, it is not like different vendors have some fundamentally different platform capabilities, it all boils down to the same stuff - graphics, audio, video, network, sensors - and that's about it! Not to mention it is all well standardized and has been for quite a while...
All in all, I think this is just an excuse, what they really aim is to entrap the developer base, something that is obviously failing, by but still "punishing" developers to go through extra efforts if they want to reach another platform.
Well we don't have problems with graphics, audio, sensors and etc. that's qt mobility part and everything more or less is OK there. We have different Qt components because each vendor has slightly different UI idea: blackberry wants swipe from top show menu (e.g. try swipe in browser in PlayBook or BB10), Ubuntu swipe from top shows system menu, Sailfish swypes show different screens. We have slightly different UI ideas and that's why they make "native" components. As developers we can safely ignore these (like we can ignore "back" button in Android) - users are completely OK if we will give UI components that are intuitive and more or less the same on each platform.
P.S. I actually not sure if there is no more. There is link in comments section of my link there it is explained why Symbian and Meego has different components.
OK, then create a common base/API for those "non problematic" areas - that would be a significant contribution to the world of development. After all, the UI is a small and pretty much insignificant part of an application, and it doesn't present that much of a challenge to port.
And while it is true that C++ is supported almost everywhere, you have the NDK, Apple's SDK supports it, so does MS, but the APIs are completely incompatible (not to mention MS's "brilliant" contributions that break the ISO standard).
Coming from a designer background, I don't find the UI design of any of the major platforms out there to be ground breaking or offer some amazingly innovative and highly productive user experience. If I make a cross platform application, I'd rather have my application provide the same user experience and totally abstract from the underlying "native UI" - for me it is more important that the user feels at home in my application, regardless of the platform it is running on rather than feeling at home on a single platform and lost or inconvenienced everywhere else. And while there are plenty of people who claim that |insert personal allegiance here|'s UI experience is the best UI experience, those are hardly a case of objective professional opinion and pretty much the result of fandom and aggressive marketing strategies that often produce literal cults (like it is with apple).
So I think it will be just to call for unification across those "non-problematic" areas, so that I can create my own components for my own applications and have the same code run everywhere, and for those who want to use platform specific non-portable components - those can still be provided. Hopefully by pledging to officially support Android and iOS, Qt will finally provide me with that unified tool, but still, I'd prefer if this was an industry wide endeavor rather than that of a single company, with lots of extra abstraction on top of the platforms that hurts efficiency, creates dependencies and potential for problems.