3 ms·
I've spent over a year maintaining a BlackBerry app, and while I've only been dabbling in Android, what I find in the docs and tools from Google is several step
by spacemanaki 15y ago
I've spent over a year maintaining a BlackBerry app, and while I've only been dabbling in Android, what I find in the docs and tools from Google is several steps above the BlackBerry equivalent. Anyone complaining about how Android development is painful should spend a month or two working on BlackBerry apps.
Have fun fighting a terrible, custom Swing IDE that RIM wrote, because debugging via their buggy Eclipse plugin (which is downloadable as an entire Eclipse install, so you have to reinstall all your customizations and other plugins) doesn't always work (forget the actual step debugger, which doesn't work at all, I'm talking about getting the output from System.out.println). Cross-platform development is pretty weak: there's no official support for Linux, and there are no simulators and no support for older devices on OS X (50% or more of the BB subscriber base).
Enjoy the need for a round-trip to a RIM server which has a habit of being down (it's been better recently, I admit) just to put your app on a device during development. Users can change the permissions on a per-application basis, and can install and run apps without the required permissions enabled, so you need to manually check the permissions you need every time the app starts. API calls that need this care aren't documented, so you have to do basic science on the device to figure it out.
Want to make an HTTP connection? Great, here's a giant ball of accumulated wisdom on how to tiptoe around APNs and other transport-level bullshit. Or you can pay $2000/yr for access to an undocumented BIS string that might work a bit better.
Programming is hard. Some tools are shitty, but there's often someone on the other side of the fence who has it worse or better. There are a few senior devs here who have horrifying war stories about J2ME and Brew. It seems that even Blackberry development is a bit smoother than other mobile platforms. And I'm sure embedded programmers have even scarier tales of low-level Heisenbugs.
Edited to add: Oh yeah, BB is also all based on J2ME, which means Java 1.3. No collections, no generics, no auto-boxing, no for-each loop, no reflection. Yes, even on the new BlackBerry 7 devices, Java 1.3.
- aberkowitz 15y agoI have spent a short period of time dealing with Blackberry, and I can do nothing but echo your sentiments. Would you mind sending me an email (in profile), so I could pick your brain about Blackberry?