Can RIM's Playbook sustain an Android Parallel Universe?

Can RIM's Playbook sustain an Android Parallel Universe?

Summary: According to a recent video posted on various BlackBerry fan sites, there has been "confirmation" that the RIM PlayBook will be compatible with Google's Android.

SHARE:

According to a recent video posted on various BlackBerry fan sites, there has been "confirmation" from one of RIM's developers that the PlayBook will in fact use a "Dalvik" VM to provide Android application compatibility on the QNX operating system.

Dammit Jim, I'm a technology writer, not a theoretical physicist. This is starting to get way too parallel universe for me.

A couple of weeks ago I postulated on HOW exactly Reseach in Motion might be able to make the PlayBook compatible with Android. It was a "What if" type of scenario. It now appears that it's likely no longer a "What if" or a "How" but a "When" and "Can".

Also Read: RIM's PlayBook: Is it an Android FrankenBerry?

In a video that was posted originally on Crackberry.com, an unnamed RIM developer at a booth at the Mobile World Congress 2011 show in Barcelona states that "... we also support Android Apps, when we release the Dalvik engine on top of QNX" in what appears to be German-accented English spoken by a non-native speaker.

Assuming that this information is true, then what RIM has in fact done is opened up a wormhole into a completely new Android universe. Like the one in the classic Star Trek "Mirror, Mirror" episode, but where Spock has a beard.

The reason why RIM's Android compatibility would exist in a parallel or alternate universe is that it would actually be a different development target for Android developers. Not only would they have to test against Google's Android SDK for specific Android releases such as Gingerbread and Honeycomb, but they would have to test compatibility against the Dalvik JVM running on the BlackBerry PlayBook simulator, which runs as a VMWare virtual machine.

As if testing application compatibility against a completely new flavor of Dalvik wasn't a headache enough, developers are also probably going to have to re-submit their apps to RIM's own BlackBerry App World, because it is highly unlikely that Google is going to allow the PlayBook to run Android Market. It also doesn't make SENSE for the PlayBook to use Android Market, because RIM would want to monetize its own app store as opposed to using Google's.

This is the same exact type of strategy that Amazon is pursuing with the "stealth" Android app store that the company is creating, but as of yet, we don't know what sort of device that new store is being targeted for. I've suggested that it may be for a yet-to-be-released Kindle Android Tablet, but so far, no details have emerged from the online retailer.

On the x86 platform, developing a Java app on one platform and moving it to another is supposed to be painless, particularly if you are using say, Sun's J2SE VM on a Windows PC and you want to run it on Solaris, AIX or Linux. In theory, the Java bytecode for that application is supposed to work exactly the same on all platforms if the VM is coming from the same vendor. That's what the whole beauty of the Java platform was supposed to be about in the first place. The raison de etre, so to speak.

However, the reality of Java is very different. Even between Linux and Solaris on x86, where the platforms have a lot of commonality, Sun's own JVM behaves differently on the two OSes (and also on both Solaris architectures for x86 and SPARC) even though it passes all the Java certification tests. Behavioral differences also occur between dot releases of Sun's Java VM on the same platform.

This gets more interesting when you observe how apps behave on the certified JVMs between different vendors, such as when you run that code on OpenJDK or IBM's J9 used on Websphere on AIX, Linux and Z/OS, HP's implementation for HPUX, or on Unisys's special JVM they use for very large memory systems on their ES7000. Or even on OpenJDK for the Mac.

When it comes to compatibility of application code across different types of JVMs from the various vendors, things can get pretty esoteric.

While in most cases you just copy bytecode over and it just "works", sometimes you do find enterprise J2EE/J2SE apps that need to be tweaked for specific platform differences. And while it might take only a few hours to debug the issue and make the changes needed, it's still not 100 percent "write once, run anywhere".

There's another issue at hand here, and it's that Google isn't Sun/Oracle and Dalvik isn't Java. It's not certified as Java, the bytecode isn't Java compatible, and there's this little lawsuit thing that Google is currently engaged in with Oracle to further complicate matters.

The legalities are out of scope for this particular piece. I suspect that if the PlayBook is in fact using a variant of Dalvik, either running natively on QNX or via some binary emulation layer, then RIM has probably negotiated something with Oracle to indemnify themselves and their enterprise customers which will be using Android apps on their device. If they haven't, well... that's room for another post.

So if we expect that when "pure" Java acts differently between different platforms from different vendors, then we can probably expect that RIM's Dalvik-esque VM is also going to behave differently.

Also Read: Blackberry's Android? (ZDNet Networking)

Assuming RIM is going to be able to get developers to re-validate their apps on their VM, and submit their apps to the RIM App World, there's also the issue if Google's Dalvik is going to stay compatible with RIM's going forward.

I don't see Google as this evil organization that would incorporate code in the future in Dalvik that would inherently break applications that ran on the PlayBook -- and at the end of the day, Dalvik is Apache-licensed and Open Source, so RIM will always have full access to the code.

However, as long as RIM is maintaining a "variant" that is not being developed in cooperation with Google, in a "Parallel Universe" (Dalvik ITSELF exists in a "Mirror, Mirror" of Sun's Java) then there is always the chance that RIM will purposely or inadvertently inject variation or code forking to optimize for their own platform, complicating matters for developers.

And Android NDK apps? As I said in my other article, that's an entirely different ball of wax.

Has your head start to spin yet? Mine surely has. I need to remember not to spike my coffee with Romulan Ale in the morning. Talk Back and Let Me Know.

Topics: BlackBerry, Google, Mobility, Open Source, Software Development

About

Jason Perlow, Sr. Technology Editor at ZDNet, is a technologist with over two decades of experience integrating large heterogeneous multi-vendor computing environments in Fortune 500 companies. Jason is currently a Partner Technology Strategist with Microsoft Corp. His expressed views do not necessarily represent those of his employer.

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

14 comments
Log in or register to join the discussion
  • Developers don't "have" to do anything?

    They can develop for Android, add RIM support or not. What you are saying is similar to saying that if you develop for Android, you must also develop for WP7/iPhone/iPad or whatever.

    If the said developer doesn't want to test on RIM, it would be up to RIM themselves to "certify" any given app.

    TripleII
    TripleII-21189418044173169409978279405827
    • RE: Can RIM's Playbook sustain an Android Parallel Universe?

      @TripleII
      I understand what you are saying, but RIM has to certify the app, otherwise they well could signup with google for full Android and be done with QNX.
      Ram U
      • It depends on launch success.

        @Rama.NET
        When the playbook was announced and since when thinking about RIM, their best interest was, and I believe, is to tap into Android. This would be a good stepping stone. I could see them porting their enterprise layer on top of Android, but this is a good first step, allow for Android Apps.

        If the playbook is a success, then I could see developers taking it into consideration but it really depends on it's success. There is a lot riding on this for RIM, they need to price aggressively.

        TripleII
        TripleII-21189418044173169409978279405827
  • The thing about this plan that worries me most...

    ...is how much it reminds me of the out-of-touch, arguably goofy moves we've seen coming from Nokia, the past 3-4 years. This RIM crossover idea is another classic clusterflop gambit, brought on by a lack of focus (c.f.: 'too many managers spoil the enterprise') in their product planning. Mel Brooks would approve.:

    http://www.youtube.com/watch?v=uTmfwklFM-M
    Justa Notherguy
    • RE: Can RIM's Playbook sustain an Android Parallel Universe?

      @Justa Notherguy Anybody skimming this topic would have thought it was about movies with all the references to dr spock, mel brooks and too many others to mention. It's an interesting concept though but what do you think is the <a href="http://www.bestsatnav.net"><font color="#000000">best sat nav</font></a>.
      whutd
  • RE: Can RIM's Playbook sustain an Android Parallel Universe?

    Couldn't they just mean the PlayBook will be able to install Android APK files and nothing more?
    bradavon
    • RE: Can RIM's Playbook sustain an Android Parallel Universe?

      @bradavon I'm not sure what the utility of that would be without an app ecosystem to connect it to.
      jperlow
      • RE: Can RIM's Playbook sustain an Android Parallel Universe?

        @jperlow Enterprise admins don't need an app ecosystem - they've got BES servers.
        dowlingm
      • RE: Can RIM's Playbook sustain an Android Parallel Universe?

        Couldn't they just mean the PlayBook will be able to install Android APK files and nothing more? <a href="http://www.affordabledegrees.com ">life experience degree</a>
        <a href="http://www.affordabledegrees.com/ADA/bp.asp">bachelor degree program</a>
        <a href="http://www.affordabledegrees.com/ADA/accreditation.asp">online accredited degree </a>
        <a href="http://www.affordabledegrees.com/ADA/associate-program.asp">associates degree</a>
        <a href="http://www.affordabledegrees.com/ADA/degreeprograms.asp">degree programs</a>
        jordanhawk
  • RE: Can RIM's Playbook sustain an Android Parallel Universe?

    Today if you want to target both Android and Blackberry you either need to create a framework that abstracts the differences between Android and Blackberry or create two different apps from scratch. Either way you will need to certify and test your apps across both platforms.

    This is nothing new for Java developers. Most Java developers test across many platforms for desktop and server software. No such thing as write once run everywhere.

    You can hate BB all you want but the truth is that writing apps for BB can be very lucrative. They have a captive business audience that is willing to pay for software. Android is 90% consumers who want free apps.
    sharkboyjohn
    • RE: Can RIM's Playbook sustain an Android Parallel Universe?

      @sharkboyjohn What do you reckon the average developer earnings might be per platform for a 'business utility'-type app? If the scale is iOS=100, what would BB, Android, WP7, WebOS be?
      011010100010100
  • Good for Google; bad for RIM

    So Playbook runs lots of apps out of the gate, but RIM is effectively ceding the app market to Android. What developer is going to develop or port specifically for the Playbook now? I would think you'd also get a lesser experience on the Playbook, but that remains to be seen.
    rynning
    • RE: Can RIM's Playbook sustain an Android Parallel Universe?

      @rynning

      I think the main money-making business apps on the PlayBook will be made by RIM, what the Android compatability gives them is access to the high volume cheap / free apps for any consumers / prosumers who get one.
      OffsideInVancouver
  • RE: Can RIM's Playbook sustain an Android Parallel Universe?

    [b]if[/b] all they do is make it easier to android developers to port to RIM, it gives another possible market to developers. RIM only needs to accept the trustworthy/verified apps. It would not open the doors wide to all android apps.
    As for RIM, allowing this gives them more chances to be attractive. Even if the apps part is not as profitable.

    Isn't better to give another reason to buy a RIM, even if some accessorial market is less profitable then to try sell your own device with barely anything interesting available?

    Remember that for tablets in some enterprises, most makers won't cut it. IT won't allow it. This may open the door to more tablet exposure, that may only be available to RIM if they make themselves more interesting.

    Just a thought!
    mlev2