Slashdot Mirror


An Experiment In BlackBerry Development

ballwall writes "We've all read the stories about how lucrative selling apps on the iPhone can be (or not), but what about other platforms? BlackBerry accounts for twice as many handsets shipped as Apple, according to Gartner, so I decided to find out. I wrote about my experiences developing my first BlackBerry application including sales, platform issues, and a bunch of other things I thought new mobile developers might want to know about."

29 of 207 comments (clear)

  1. Sure there are more blackberries by nurb432 · · Score: 5, Informative

    But, there more are corporate users without the right to install anything...

    --
    ---- Booth was a patriot ----
    1. Re:Sure there are more blackberries by almeida · · Score: 5, Informative

      I develop applications for BlackBerry and I've talked to RIM about what restrictions corporate users will see. According to RIM, only 40% of BlackBerry users are on BlackBerry Enterprise Networks (BES) and over 90% of BES installations use the default settings. The default BES settings do not impose any restrictions on the device.

    2. Re:Sure there are more blackberries by Xtravar · · Score: 4, Interesting

      You almost hit the nail on the head. My company decided to go with iPhone development rather than Blackberry development for the simple reason that our target demographic enjoys iPhones for personal use and only carries Blackberries if their management requires/provides them. With that kind of a trend, and with users willing to use their personal devices for work, it makes much more sense to go the Apple route. It didn't really help that RIM's people were aggressive and obnoxious on a conference call with our president, though...

      --
      Buckle your ROFL belt, we're in for some LOLs.
  2. Blackberry's problem by areusche · · Score: 5, Insightful

    RIM needs to open the platform up. Nothing more nothing less.

    1. Re:Blackberry's problem by IANAAC · · Score: 3, Informative

      RIM needs to open the platform up. Nothing more nothing less.

      I thought Java was already quite open.

      Doesn't mean it's easy. But it's open.

    2. Re:Blackberry's problem by Corporate+T00l · · Score: 3, Insightful
      From the article, it seems like the platform already is pretty open:
      • No talk about complexities having to buy an SDK
      • No issues trying to become an "approved" developer
      • No need for an approval committee to decide if your app is worthy for the device

      The main complexities seem to have to do with the sheer diversity related to the multi-carrier and multi-hardware aspects of the BB platform (e.g. the author mentions 10 different ways of getting a network connection and shortcomings of the built-in SDK UI widgets).

    3. Re:Blackberry's problem by ushering05401 · · Score: 4, Informative

      Did you RFTA? RIM doesn't totally open up their API to 3rd party developers.

      You are not communicating that right. The RIM specific API (ie: device specific functionality) is open to developers but different generations of functionality from these APIs are available only on certain devices.

      If you want to access the entire market you have to stay plain vanilla and use straight java.

      The author does a good job explaining it if anyone would care to RTFA.

    4. Re:Blackberry's problem by Anonymous Coward · · Score: 5, Informative

      Just correcting you, i'm a BlackBerry developer so have some insight here. The number of users using pre4.0 is miniscule, v4 OS onwards offers everything you need. The vast majority of developers code using the 4.2.0 API. As more and more users migrate to the newer devices developers change the API they code against accordingly.

      The requirements for AppWorld are 'BlackBerry® Device Software version 4.2 or higher' so this is what most developers code against as it's their primary sales channel.

      Developers are free to code using the more recent API to get the added features and the JDE has PreProcessor definitions for this... The BlackBerry is an old platform, new devices appear and old ones stop being supported. You'd be crazy to still make sure your software works correctly on a 7230.

      'If you want to access the entire market you have to stay plain vanilla and use straight java.' this is complete uninformed nonsense.

  3. Thank you by Naurgrim · · Score: 5, Insightful

    Interesting read, ballwall, and I truly wish you luck with your efforts.

    I'm not much of a programmer, but as a SysAdmin (*nix by preference, win* by necessity) I was struck by some parallels I've observed. I find blackberries to be painful. Making them work as a mobile email device tied to Exchange requires a shiat-ton of ugly third party software.

    If a client bothers to ask, (and they don't), I tell them iPhone first, WinMobile second, blackberry distant third.

    BES is, IMHO, a steaming pile - java, dot.net, 32-bit only. Feh. Recent iPhones handle active sync nicely and don't bitch about self-signed certs. WinMobile is a bit harder, but install your certs and you're done. blackberries (I refuse to capitalize) give me pain.

    My clients pay $$ for BES CALs, the devices get stupid and need to be factory reset often and re-activated, costing my client more $$ for my time.

    A colleague says "blackberries are great, they help me spot THOSE people". I tend to agree. I honestly cannot see the attraction when there are better solutions to talk to an Exchange server - previously mentioned iPhones, WinMobile or a laptop with RPC over HTTP(S) all work more simply and more reliably, and I tell my clients so. Nevertheless, I still hear "but I've got to have a blackberry"!

    --
    .......You Are,
    ...What You Do,
    When It Counts.
    1. Re:Thank you by InlawBiker · · Score: 4, Insightful

      Well, as we are all aware, nobody cares how hard the admin's job is. The Enterprise is BB's target market and they're dug in deep. Just the ability to sync with Exchange calendars, contacts and email is 99% of why Blackberry exists - because BES is great if you're a user. If you're an admin, your job is to support the business and the business wants Exchange sync. Sorry BES admins.

      Blackberry has continued to innovate, their phones are really very easy to use. But the Business will gladly quit paying for BES server and the people to run it the instant something better comes along.

    2. Re:Thank you by gotpaint32 · · Score: 5, Informative

      Blackberries on BES offer enterprise features simply unheard of with Winmobile or iphone devices. Windows mobile only recently got the much needed security features such as remote device deactivation and wiping. Blackberries simply offer more for the enterprise such as a slew of custom encryption features, mds for intranet based apps, web proxy features so you can control user's network browsing, full featured logging (down to the phone calls you make) fully customizable IT and security policies, and I'm sure I'm missing a ton of other features that Blackberry offers that has not even been contemplated for Winmobile much less iphones. Maybe you should be offering your customers reasons to use Blackberries and not reasons to make your job easier. You never know, they may think that one of those features you don't care too much about is pretty nifty...

      --
      Nuclear war would really set back cable. - Ted Turner
    3. Re:Thank you by Anonymous Coward · · Score: 5, Informative

      BES is, IMHO, a steaming pile - java, dot.net,

      Ok, BES does use many technologies. The new BES 5 even requires activeX plugins for some web-based admin tools.

      32-bit only. Feh.

      Ummm, not true. BES has supported 64-bit windows and 64-bit databases for quite a long time.

      Recent iPhones handle active sync nicely and don't bitch about self-signed certs.

      Ummm, that's called a security flaw by most competent admins. Frankly, if you can't afford $12.99/year (with coupon code) to get a godaddy signed certificate, maybe security isn't what you're looking for. Is it possible to install your own certificate authority on iphone (or is it that apple doesn't let you)? You can install your own certificates on blackberry, and even manage them all centrally on the BES. You can even use S/MIME & PGP for additional email encryption.

      My clients pay $$ for BES CALs, the devices get stupid and need to be factory reset often and re-activated, costing my client more $$ for my time.

      Well, then you & your clients don't know how to administer a BES & blackberries. The devices are extremely solid, and almost never need a factory wipe. Of course, most problems will be resolved by a factory wipe & reactivating, but there is almost always a far easier & faster way to resolve the issue, but it seems you don't know that.

      When something goes wrong with a windows pc, do you wipe your hard disk & reinstall every time? That will resolve the issue, but there is almost always a simpler, easier & faster solution.

      Reactivating a blackberry user on a BES is REALLY HARD! How hard is it? On the BES 4 series, you run the BES console, find the user, right-click on the user, and set the activation password to whatever you like. Then, on the blackberry, go to options, advanced options, enterprise activation, enter your email address, enter the activation password you just set, and click activate. Wasn't that hard?

      Frankly, if your clients can't activate a blackberry by themselves, then maybe they aren't smart enough to use email.

      I honestly cannot see the attraction when there are better solutions to talk to an Exchange server

      Better? How many other solutions have real push email? None (windows mobile comes close with their fake push). How many other mobile email solutions have remote lock, remote unlock, remote wipe, solid AES encryption, certification by many governments and other agencies?. Can you force your users to have a password? Can you force your users to always encrypt the blackberry contents? Does your iphone overwrite freed memory so that the contents can't be read by disassembling the device? Nope.

      Do you need to restrict your user from browsing the web? Do you need to centrally track SMS, email & phone calls? All this is easy on the BES.

      iPhones, WinMobile or a laptop with RPC over HTTP(S) all work more simply

      Ok, that's true. The BES platform is complex, but that is because it does so much.

      Look, BES isn't for everyone - there is a lot of complexity & a lot to learn. You may be better off with an outsourced BES provider (there are many). Or choose the Blackberry Professional Software (BPS), which is a simpler, easier to use BES-lite.

    4. Re:Thank you by Naurgrim · · Score: 5, Informative

      OK, fair enough to yours and all of the above replies. I'm replying to yours as it is the harshest, but no hard feelings.

      I should have mentioned that I provide services to small and almost medium-sized businesses and orgs. If I was in an "enterprise" admin role my feelings would be different, and so would the needs and realities my clients face. Picture a law office with 8 users, a business with 20 users, an org with 40 users - that's my space. For this space, licensing and labor cost far more than hardware.

      For this market segment, BES is not, IMHO, the way to go. Licensing and maintenance will bleed my customers dry. Exchange is the cheapest "groupware"-ish solution I can provide for them. For their mobile devices, the same logic applies - keep licensing and maintenance to a minimum. I appreciate that for "enterprise" the added security and logging of BES/blackberry are desirable. Where I live, selling a decent backup solution is a hard task.

      And for those about to suggest it - yes, I have tried the open source route. Hate to say it - they want Office, they want Outlook, they want their calendars/contacts/tasks/etc. That means Exchange. Pains me a bit, but I get over it.

      Yes, the web and email and other internet facing servers are on linux VPSs - not gonna put Exchange or Sharepoint on a public IP, but in the LAN I have to go win*. Don't like it, would prefer otherwise, hope to see the day...

      --
      .......You Are,
      ...What You Do,
      When It Counts.
    5. Re:Thank you by IceCreamGuy · · Score: 3, Informative

      Blackberries on BES offer enterprise features simply unheard of with Winmobile or iphone devices.

      Maybe unheard of to you. http://technet.microsoft.com/en-us/library/bb123484.aspx I count well over 100 group policy settings that can be applied through Activesync to a Windows Mobile 6.1 device. Some of these actually do work on an iPhone as well, such as the password and phone lock policies.

      Windows mobile only recently got the much needed security features such as remote device deactivation and wiping.

      Windows Mobile + Exchange 2003/2007 have had this functionality since 2005 at the release of Exchange 2003 SP2 http://www.microsoft.com/DOWNLOADS/details.aspx?familyid=535BEF85-3096-45F8-AA43-60F1F58B3C40&displaylang=en. It even works on an iPhone. I'd hardly call 2005 "recent" in the IT world.

    6. Re:Thank you by wzinc · · Score: 3, Interesting

      I'm pretty sure iPhones can do all of this... I own one.
      - remote wipe - through exchange and MobileMe
      - full data encryption
      - proxies
      - security policies, including what apps you can / can't have
      - even throw-away phones do "logging," as in recent calls - I'm sure there's some way to save that list - worst case-scenario, look at the itemized bill. The iPhone does log time-usage for sure.

      Although: MDS; I don't know what that is...

      Also, the iPhone does not feature:
      - a Perl trackball or that awful "are you sure?" on every menu option scroll / click wheel on the side
      - the need for an intermediate push server
      - a UI that makes WinMo look good

    7. Re:Thank you by beelsebob · · Score: 3, Informative

      Well, as we are all aware, nobody cares how hard the admin's job is. The Enterprise is BB's target market and they're dug in deep. Just the ability to sync with Exchange calendars, contacts and email is 99% of why Blackberry exists - because BES is great if you're a user. If you're an admin, your job is to support the business and the business wants Exchange sync.

      Read what he said again. The blackberry requires a whole bunch of 3rd party software to do that in a vaguely okay way, all of which is limiting, and a pain in the ass. By contrast, the iPhone does exchange calendar, contact and email syncing straight out the box, with extra faffing about.

    8. Re:Thank you by Poohsticks · · Score: 3, Informative

      Oh I get it! You're considering the BES itself as the third party software. Well sure then, adding third-party software to the Exchange environment must seem foreign. But you get a hell of a lot of functionality that just doesn't exist on a pure Exchange/ActiveSync deployment. Including the ability to push applications to the devices, S/MIME functionality, true AES encryption throughout the whole device... you name it. Yes - BES is a bolt-on to Exchange, but it's a damned useful one in large organizations. I get it if it seems to complicated for your environment or your users, then stick with Exchange/ActiveSync. I've been running it for a long time and one thing stays the same - users are still stupid and training is still required. That goes for WinMo/iPhone and any other mobile email solution you're running too though.

      --
      "The story so far: In the beginning the Universe was created. This has made a lot of people very angry and has been wide
  4. Bad UI library by Jeffrey+Baker · · Score: 4, Interesting

    He's certainly right about one thing: his app has an ass UI. It's RIM's fault, of course. On the Palm, Android, or iPhone platforms even "hello, world!" looks great. On BlackBerry it's impossible to get even a simple app to look good. All apps on BlackBerry that do, in fact, look good are using full-custom drawing engines. See Bloomberg, Facebook, etc. For the small developer, doing your own custom drawing is a huge undertaking assuming you have any visual design talent to speak of.

    1. Re:Bad UI library by mattack2 · · Score: 3, Interesting

      So then it seems like a developer has an opportunity to provide a library/framework/whatever you want to call it to provide a UI as a product.

  5. Re:Total by ballwall · · Score: 4, Informative

    Whoops, oversight on my part. Total sales stand at 2382 copies as of the data in the article (at an average net of $8.50 per sale I've made just over $20k). Thanks for pointing that out. I'd update the site but I'm afraid to break at the moment.

  6. The thing about Blackberry by erroneus · · Score: 5, Insightful

    The thing about Blackberry that the business users love most about it is that it works and does exactly what they want it to do. They have their contacts, their email, their to-do list, their notes and a select few other things. They don't need much else. It's perfect the way it is for most users. Adding new software to it is not an entertaining idea for most users.

    At the most, they want some mapping... google maps works quite nicely for me, but essentially, Blackberry already does what it needs to do and while some will, most users don't want anything more.

    1. Re:The thing about Blackberry by erroneus · · Score: 3, Interesting

      The reason many people, not only IT people, prefer Blackberry is because it is solid and reliable. They don't care if it has access to a software shop online that enables them to buy a zippo lighter simulator or a lightsaber thing. They turn it on, it works. It doesn't nag the user for updates and places the management of the device squarely in the hands of the administrators where it belongs.

      And, oh yeah, I can take out the battery if I want to.

  7. love podtrapper by Mr.+X · · Score: 4, Interesting

    I've been a PodTrapper user since this past January, and I have recently started looking into BlackBerry Development myself. As his write-up makes clear, Marcus at Versatile Monkey has to be one of the best developers I've had the pleasure with interacting with. I really appreciate the 'insider' view of developing for BlackBerry, and I'm sure his observations will be useful for my own pursuits.

  8. Boil it Down by iluvcapra · · Score: 3, Interesting

    I'm sorta cribbing from his summary, but I did RTFA...

    Pro:

    • Code in Java
    • No App Store
    • Got licensing DRM to work...
    • Web/press reviews were important to success
    • App World is Good Thing

    Con

    • Different platforms/versions
    • Very limited UI toolkit
    • Networking, particularly testing network reachability, seems overly complicated based on his description
    • Many BB devices are very resource constrained, and this a problem for many obvious and obscure reasons
    • Got licensing DRM to work, but is a hack and doesn't allow all the options author wanted
    • Not all retailers as good as App World

    Most important lesson IMHO: "Everything is marketing."

    His issues with the platform and the resources available on a BB really bring the differences with iPhone OSX and BB into relief. An iPhone is guaranteed to have a particular hardware config, and be very capacious in RAM and drive space, and has very teh shiny widgets and will always have the latest APIs; it also provides a brainless e-commerce platform to sell and install your app, to the point where buying a mobile app could be considered impulsive. You pay for all this with the fact that the Apple overmind decides if you can sell your app or not and takes its cut.

    --
    Don't blame me, I voted for Baltar.
  9. Re:So by ushering05401 · · Score: 5, Informative

    A lot about it. That is a pretty long posting with some insight for people completely unfamiliar with the world of blackberry development.

    The story gets an upmod for that, though I suppose it could be seen as a really long plug for the guy's product. He mentions the surge from advertising on blogs and even includes graphs showing his trials vs. sales over time with some bumps pointed out.

    A decent read overall.

  10. Re:Total by ballwall · · Score: 5, Interesting

    Much more on the "This will be fun... Oooh, money" side.

    Well, and a lot of "#@$&* why is there no app to do podcasts on BlackBerry?". (Commuting sucks without podcasts, imo).

    The interesting part is most of the costs are up front. I took two weeks off of work to write the initial version, and after that I've been tweaking it nights and one or two weekend days (two at first, maybe half of one now).

    In hindsight I should have tracked my time better, but I'd estimate I spent just over 250 hours in code, and I probably spend about 6 hours a week doing support these days (much less earlier), so about 400-450 hours to this point. That works out to be somewhere between $45-50/hour.

    But... the majority of the work is done at this point and I'm still bringing in an additional $1k/week with the ongoing sales, so the picture is getting continually better. It'll be interesting to see how long it keeps up. This slashdot article (and the waves it makes) will likely be the last bit of marketing hoorah I can get out of this app, so while I'm hopeful, I'm not optimistic. As I said in the article, marketing is really really important. (Well, until the App World gets some marketing of its own, I suppose).

    Regardless of how it turns out, it was still a lot of fun. And my users seriously rock.

    -Marcus

  11. My experiences developing on the BlackBerry. by rgelb1 · · Score: 3, Informative

    I actually have a free application on the BlackBerry App World called HP Printer Fun, which lets users mess with the LED screens on the HP Laser Jet printers (plus some inkjet ones too) for fun.

    I've written some other apps as well and the experience is not so great. My gripes are as follows:

    • Java is limited to an ancient version (e.g. no generics or other recent goodness)
    • Very weak debugging support (compared to say, Android)
    • When the emulator is running, your app is basically locked. In other words, you have to restart the emulator each time you make a change to the code - which takes 1-3 minutes depending on your config.
    • The looks of the IDE make Windows 3.1 seem modern.
    • No support for modern programming fonts, for instance Consolas

    On the other hand, the docs are pretty good. The support group at BlackBerry dev site is simple superb. Examples are plenty and the API just freaking makes a massive amount of sense. And for the adventurous, you could use a beta version (might be released by now) of an Eclipse plugin.

  12. Re:You forgot the most important thing... by unfasten · · Score: 4, Informative

    I demand a free SSH client now

    Alright, here you go: http://www.xk72.com/midpssh/

    Oh, it's open source too (GPL). Here's the code: http://www.xk72.com/midpssh/v1.7.3/midpssh.zip

    Oh, it's J2ME too, so it can run on any phone that has java.

  13. Re:You forgot the most important thing... by vux984 · · Score: 3, Insightful

    Why, is a SSH client particularly easy to write?

    Not so much that its easy to write one, but that several free ones already exist for the platform.

    I demand a free SSH client now, who do I speak to?

    Speak to Apple.

    Snap to it, it's my right to have a free SSH client on platform ${FOOBAR}

    In this case ${FOOBAR} is BSD. Its not a new platform, and it already has numerous free and open sourced options for ssh clients.

    Only Apple could give you a device with BSD Unix on it, and then block and make you pay extra money to run things like ssh, telnet, ftp, bash, perl, etc...