Scaling the Walled Gardens

Apple, RIM, and wireless carriers have created highly functional and popular walled gardens. Each garden has its own beauty and idiosyncrasies. Your customers are split among those walled gardens. How many of those walled gardens are you willing to tend to?

The iPhone vs. BlackBerry vs. Android battle is far more complex than the IE vs. FireFox spat. It is much more like the Mac vs. PC rift that no DHTML toolkit or Content Management System could bridge. Each of these three walled gardens requires:

  • Programming in a different programming language using radically different widget sets and UI guidelines.
  • Fundamentally different ways of dealing with background tasks and push notifications.
  • Proprietary APIs for accessing device specifics (e.g., persistent store/database, camera, maps, gps, voice).
  • An approval process for publishing and updating the App in the App Store, and fundamentally different payment options.

At ARW, we routinely develop applications for each of these three smartphones.1 We know the capabilities and weaknesses of each phone OS. We can implement on all major phone OS in one project.2 We write code the old-fashioned way: Objective-C for iPhone, BlackBerry-Java for BlackBerry, and Android-Java for Android. The result is 100% native UI, with full access to all platform features on every platform. Over time, we have built up a library of reusable code for each of these three smartphone platforms that provides us with a comparable set of functionality on each.

Let ARW deal with these walled gardens so that you are free to concentrate on your core business.

  1. 1. Plus Nokia/Ovi and Windows Mobile
  2. 2. No, we have not discovered a silver bullet. We do not have portable JavaScript or Ruby or J2ME interpreter that lets us run the same code on all three. In fact, we fail to see why you would want your iPhone app to behave like your BlackBerry app or vice-versa.