RIM CTO: 10 Tips for Creating Great BlackBerry Applications

22.10.2008
's (RIM) CTO David Yach addressed a crowd of roughly 700 mobile application developers and others at RIM's first in Silicon Valley on Tuesday, offering up a list of 10 tips to help those developers create valuable applications.

Here are Yach's tips, in reverse order:

10) Device Specific Features: Yach says applications that offer functionality that's specific to a user's device model are usually more attractive than applications that provide few or no custom features. For example, a local search application that can employ the device's native GPS features to determine a user's location is quicker and easier to use than a search app that requires a user to submit a zip code or the name of a city to find local results.

9) Responsive User Interface: Great BlackBerry applications have users interfaces (UI) that are speedy and responsive to user commands, Yach says. For example, an alarm app that displays a confirmation dialogue window after settings are modified is more effective than one that simply saves changes without notifying the user, because there's no question as to whether or not the modifications were made.

8) Available Offline: BlackBerry applications that use "push" functionality to draw information from the Web or other sources and then save that data whenever the app updates are significantly more valuable than apps that need wireless connectivity to function, Yach says.

"Wireless is inherently an unreliable medium," he says.

Inevitably, users will find themselves in situations in which they want to employ a specific application in an area with little or no wireless coverage; in a basement or concrete building, for example. Unfortunately, they'll be out of luck unless the applications updates themselves and store those updates on BlackBerrys, even if users aren't employing them.

, the mobile RSS reader for BlackBerry, is a great example of an app that stores updates on users' devices, so content can be accessed without wireless coverage.

7) Use Network Judiciously: Yach stresses the word "judiciously" here, because he says proper use of wireless networks isn't just about efficiently compressing data before sending it back and forth between BlackBerrys and the Web. Rather, the concept involves considering whether or not that data really needs to be sent at all, as well as how frequently.

For example, a mobile weather application may update itself every hour, even if the current conditions haven't changed in days. This represents inefficient use of the wireless network, since there's really no need for that data to be sent. An app that judiciously employs wireless resources will frequently provide a better overall experience without putting as much strain on the network, Yach says.

6) Leverage Push: RIM was the very first company to employ the now-industry-standard push technology that enables BlackBerry users to retrieve e-mail and other data without ever having to physical "fetch" it from the Web.

"Push is everything, and push changes everything," Yach says.

Push means that BlackBerry users never have to go looking for new information; it comes to them, he says. Such functionality completely changes the way users interact with their mobile devices by reducing the frequently with which they need to physically seek out new information.

A quality push application also uses the wireless network judiciously, only delivering information when necessary or when users call for it, he says.

5) Preserves Battery Life: Great BlackBerry applications don't degrade the overall performance of the device, and that calls for effective use of the battery, according to Yach. No matter how valuable an application may be, if it reduces BlackBerry battery life to only a couple of hours, it'll probably hurt users more in the long run that it will help them.

"The best wireless apps use wireless the least," Yach says.

4) Integrate with "BlackBerry Experience:" The best BlackBerry applications take advantage of the standard features and default applications that ship with the devices, according to Yach. For instance, a mobile social networking app that can invoke the BlackBerry camera, snap an image and then tag it with location information based on the device's GPS is a much more valuable piece of software than an app that doesn't utilize any of the built-in BlackBerry tools.

3) Anticipate User Actions: This tip relates to how developers create the UI for their applications. Yach says that apps with clean layouts and intuitive icon placement make it simpler and faster for users to employ them. Users shouldn't even have to think about what they're doing when using the application; it should come naturally, he says.

2) "One Minute Work Items:" Yach referred to this tip as his "red light test." Users should be able to employ some an app's features in the time it takes for a red light to turn green again -- though he cautions that driving and using a BlackBerry simultaneously is never a good idea.

As an example, Yach cites the default BlackBerry messaging application. He says he can scan at least a few short messages and even type a quick response if necessary in a matter of minutes.

1) It Just Works: Even if applications are complex and their performance is dependent upon a variety of technologies, users shouldn't ever have to deal with those intricacies. Great BlackBerry applications "just work" the way they're supposed to, Yach says. If fact, users should be able to open an application and employ the basic functionality without ever having to open a manual or check a user forum.

Bonus Tip: Make the App FREE

This tip doesn't come from Yach; it comes directly from me. If developers really want to expose their applications to a wide variety of BlackBerry users--and they have some sort of revenue stream to support the apps--disturbing the software free of charge is a great way to start. Loyal users will likely dole out the cash for a paid version of the app in the future if the developer decides to go that route.