Posted by Adam Linford on May 08, 2012
The key message from Orlando at this years BBWorld conference? BlackBerry 10 is real. It's coming soon. And over the course of the 3-day event, they unveiled the specifics of what it is. At Tru, we've been working with this new platform and the pre-alpha devices for a few weeks now, so I thought it'd be useful for some of you out there if we shared our experiences.
There are a bunch of questions about market, product positioning, and the developer ecosystem that I'll hold off talking about for now. I'll keep this post focussed at the technical level, because that is where it needs to start for BlackBerry 10. If it is not a platform that engages the engineers, then it falls at the first hurdle, in my opinion.
BlackBerry 10 is an evolution of the software that runs on the PlayBook product that has now been out for over a year. The core OS that underpins BB10, and the PlayBook OS, is QNX. This is a Unix variant that was originally built specifically to deliver highly efficient real-time systems. It is widely used in embedded systems, and runs on cars, oil tankers, and plenty of other places. My point here is that it is not untried or new to market.
Because this system is a POSIX compliant unix-like system, its actually pretty easy to get the majority of open source applications out there running on BB10, which is a huge deal. QCC, the QNX compiler, actually has a GCC-compliant mode. Think about that for a moment. All innovation these days is about building on the shoulders of giants, right? I'm sure you've all heard the statement that "there would be no Google without Linux". The fact that this platform has this level of compatibility, means you can really move quickly on this platform, unlike BlackBerry OS predecessors.
There also seems to have been a decision taken pretty early on in the design of BB10: If the OS has an API, the developers have access to it. No hidden APIs, giving the developer complete control. You can think of it as Android without the Dalvik runtime. The main difference being that BB10 OS has a micro-kernel architecture, which in theory offers some advantages in being able to dynamically change the OS without recompiling the kernel. Throw in the pure SMP design and you've got a platform here that gives you the most important ingredient that developers need in order to innovate: Control.
If I could pick one single thing that makes a system attractive to innovative software developers, it's control. Whether it's control over hardware, control in providing quality UIs, or anything in between, you don't want the OS to get in the way of what you're trying to do. At Tru, we've always had to wrestle with previous versions of BB OS, and so when we discovered that we can potentially put our full set of services out for the new platform and have a fairly easy time in porting it, we got really excited.
My background is in network and transport layer communications services, so I'll be the first to admit that I'm not the most qualified person to comment on UI frameworks, but for the proof-of-concept application we built for the BlackBerry World conference, I had to roll my sleeves up and get involved.
We worked with the new Cascades framework, and I must say it's an interesting choice from RIM. Cascades has merits in that it leverages common paradigms like C++ and the Qt/QML languages and frameworks, so developers will be fairly comfortable adapting to the platform, but its a big jump for some developers to move from the J2ME platform of previous versions of BB OS, and requires the highest cost of all the adoption pain-points in offering a service on BB10 that currently runs on existing versions of the platform.
RIM have also added a WebWorks toolkit for the platform however, so you don't need to step down to C++ if you don't need to, and shows the company are embracing HTML5 and associated standards to allow application development to be high quality, rich in features, and quick to develop on. With these Web technologies, on top of the OS-layer compatibility, you are also closer than ever to being able to maintain a single codebase across multiple platforms in your mobile offerings.
As for Tru, we're delighted to be able to offer a complete feature set on BlackBerry for the first time, and we're committed to delivering a 1.0 application ready in time for the official BlackBerry 10 launch which, according to Thorsten Heins at BlackBerry World, is going to be sometime later this year.