Well, I know I said I was gonna write some posts on the Playbook as I begin developing for it. Unfortunately, there are a number of things which have deeply turned me off of the prospect…
Yes, I understand the device isn’t ready yet. I understand the simulators are in beta, and the SDKs are being completed. But the startling omissions in the current APIs make me seriously wonder about the device and the BB developers:
- No text box control. There’s a text field, but no multi-line control. So much for a note taking application or anything similar.
- No date picker. Seriously. Wow.
- No localization support. This is supposed to be an enterprise-level device, and it doesn’t have a localization API yet??
- No rotation support. Just… unbelievable. This is a tablet, ffs. How can they not have landscape/portrait mode available? Hell, apparently no one has even seen a sample Blackberry app that does portrait mode.
- No webkit engine API. They’re “working on it”, apparently. The device is supposed to be out in a month. I mean, really…
Meanwhile, the simulator doesn’t support things like:
- The camera API
- The multimedia API (you know, the thing that, to quote, is supposed to “differentiate” this device from others on the market).
It’s really quite stunning to me, and makes me wonder what other omissions there are in the application stack.
App World Application Blackholed
I applied for App World three weeks ago. And nothing. Apparently my application is being “reviewed”. Well, I ain’t spending time writing code if I’m not even sure I’ll be able to submit the thing.
Ridiculous App World Fees
Yes, the current submission fees have been waived, but it’ll be $20 per submission to App World once the promotion is over. That means every failed submission, every update, is gonna cost $20. It’s ridiculous.
The webinars BB posted were, frankly, terrible. The BB consultant running them is brutal, the material is superficial at best, his delivery is moronic, repetative, and frankly, boring… they’re just bad. Meanwhile, they’re full of glaring holes, bad examples, and don’t get me started on the marketspeak.
Meanwhile, every other question seems to highlight another gap in the SDK or simulator… the number of times I heard “we’re still working on a story for that” was impressive, to say the least.
Everything I’ve seen suggests this device is half-baked at best. Incomplete APIs, crappy presentations, an application process that seems to have stalled out on me, and a fee structure that seems designed to turn away smaller developers… for a $500 device, it really doesn’t seem to be worth the aggravation.
Unlike previous Blackberry hardware, which has traditionally run their custom embedded Blackberry OS, the PlayBook is the first BB device to run their new OS based on QNX, a realtime Unix variant that’s been around for nearly 30 years, now. My guess, based on various reading, is that Blackberry feels this new platform will scale better on the new embedded hardware that’s hitting the market, particularly the multicore devices everyone is anticipating.
As such, they plan to offer three different SDKs:
- A Java SDK, which I presume will offer compatibility with their existing Java kit on BBOS.
- A native QNX SDK, so you can write bare metal applications, such as games.
- An Adobe AIR SDK.
As of this writing, the AIR SDK is the only platform available, a move that, I suspect, reflects a desire, by Blackberry, to migrate developers to that environment (and more importantly, reflects Adobe’s goal of becoming the application development platform for the mobile space).
On Linux, the kit comes as a number of parts:
- Flex Mobile, a cross-platform kit for developing Flex applications running on the AIR runtime.
- Blackberry’s Flex kit, which contains the various Flex libraries needed to build PlayBook applications.
- A simulator, which comes in the form of an ISO which is meant to be coupled with VMWare Player.
Of course, if you live in a Windows or MacOS platform, you also get to take advantage of Flex Builder, but alas, it isn’t available for Linux. That said, since the GUI designer tools in Flex Builder don’t work with the PlayBook GUI elements, it’s utility is far more limited, mainly to providing integrated help, code completion, and so forth, none of which is strictly necessary to developing for the PlayBook.
As for Flex/AIR itself, the language is ECMAScript, which is compiled down to SWF’s, which are then packaged up by the Blackberry toolchain, and can then be installed on the simulator.
In my next post, I’ll cover compiling the venerable HelloWorld sample on Linux, and getting it running on the PlayBook; while this is actually quite easy to do with the command-line tools, it took a little bit of hunting around to find the proper incantations to make it happen.
After that, I’ll do a little work to dissect the HelloWorld app and write a bit about my first impressions on the kit.
Interesting Stuff! Stay tuned for more Tales Of Interest!
Yes, believe it or not, I have a hopper. I never empty the hopper, but the hopper exists, and there are items in it. Usually the hopper is overridden with work concerns, be it actual, day-job work, or the consulting stuff I do on the side. Or it may be overriden by more immediate, viceral concerns: sleeping, eating, and so forth. But given it’s the Christmas season and things are slowing down a bit, it’s possible… just possible… I might be able to work on some items from the hopper.
First on the list? Earn myself a Blackberry PlayBook. They currently have a very simple developer contest: Get an application approved and published in their app store by February first, and you get a free PlayBook. A free $500 tablet? Sounds good to me! I’ve already got the SDK installed (the first SDK released is based on Adobe’s AIR platform), and the simulator up and running, so now I just need to start coding. The current plan is a recipe manager application… ‘course, I just need to decide how to present such an application on a tablet device. Fun!
And the second item? Update savsender to build against the latest devkitarm. And while I’m at it, get the code up on github. This was triggered by an email I received back at the end of October asking for an update, and given how simple the codebase is, it’s a request I should be able to fulfill during my spare time.
So, here’s hoping this is a productive Christmas! Assuming I don’t just sleep my way through it…