The rumour, reported first by BGR and also covered by BlackBerry Cool, that the Playbook (and presumably future QNX-based devices) could use the Dalvik Java VM to support Java applications and games, is very intriguing. Ultimately, this could mean that Android applications could be run on BlackBerry devices without much (if any) work. On the face of it, this sounds far-fetched, but when you look deeper, this might actually make sense and align with RIM‘s recent moves.
Briefly, for the lay-person, Java programs are written and then compiled into binary code. The code is understood by the virtual machine, and each virtual machine is a little different. Kind-of like how two people from China speaking two different dialects of Chinese can have trouble communicating even though they’re both speaking “Chinese”. (techies, don’t kill me for the oversimplification…) BlackBerry programs and Android programs are written in two different dialects of Java and so BlackBerries don’t understand how to run an Android app and Android devices don’t understand how to run a BlackBerry app.
If RIM switches BlackBerries over to leverage the Dalvik Java VM, they could enable BlackBerries to understand Android apps and run them… without the developer having to make major (or maybe even no minor) changes to their applications.
Why would they do this? Is this admitting that the Android OS is better than the BlackBerry OS? Is this the first step to BlackBerry devices running the Android OS and killing off the BlackBerry OS? No and No.
Actually, this is consistent with RIM’s actions related to the QNX OS so far, and fits perfectly into those plans. With the Playbook, RIM has partnered with Adobe and is allowing, no, encouraging developers to leverage Flash as a development technology to get applications up and running fast on the Playbook. RIM doesn’t control Flash, or Adobe, but has chosen to promote it as the first, and for the moment, only technology to leverage to develop applications on Playbook. This is a departure from their previous actions of controlling the Java APIs and implementation from the ground up on every BlackBerry platform.
There’s many advantages to partnering with Adobe, aside from reducing the cost of development tools support (Adobe’s business is developing and selling developer tools), RIM opens up the development of Playbook applications to a vast group of people who are already familiar with Flash development and can translate those skills over to working on Playbook apps. But even though Flash is supported as a development path for applications, RIM can still control the underlying OS which is critical for thier security team and many of thier corporate customers.
With Android looking like it’s on a path to be a sure-fire market leader in terms of number of devices shipped, RIM can take advantage of all the developers who will be learning Android development, but be hesitant to work on BlackBerry for the fear of the unknown. Will we make money on it? How do I develop a BlackBerry app? Is it a lot of work? Etc. If the barrier to doing BlackBerry work for Android developers is akin to the low barrier for Flash developers on Playbook… Wow, doesn’t that just help drive an explosion of BlackBerry apps to the point where the common complaint “there’s no apps available” just goes away (even though that complaint is the un-informed rant of the media).
RIM’s adoption of Dalvik may or may not happen. There are lots of rumours that turn out to be completely untrue — and this could be one of them. But as crazy as it sounds, allowing Android apps to run on BlackBerry may be one crazy idea that just makes sense.