SAN FRANCISCO -- At the BlackBerry Developer Conference 2010 this week, Research In Motion (RIM) announced a set of new features aimed directly at application developers. Some of these help the platform catch up, while others are unique offerings that help distinguish the BlackBerry Platform from other mobile platforms. Developers should be aware of these capabilities as they enhance their current BlackBerry applications and plan new ones.
As is often the case, certain features are available now or will become available very shortly, while others are scheduled further in the future. Certain items have been announced previously and have not yet launched; as such, you should avoid starting development on any apps that require features that have not yet entered beta.
BlackBerry Development Goes Open Source
RIM is kicking off a new period of openness by open sourcing their Web app framework. Previously referred to as BlackBerry Widgets, this framework is being rebranded as "WebWorks", and will be available on GitHub. Alan Brenner, RIM's senior vice president of the BlackBerry Platform, said "We're very excited to be joining the open source community."
RIM isn't just releasing their source code; they're also working with popular Web technology frameworks, such as JQuery, in order to promote sharing and integration between these platforms. This should ultimately result in a greater number of powerful tools being available to develop rich Web apps.
RIM is also expanding its openness by turning BlackBerry Messenger into a framework. Messenger is built on top of the existing PIN messaging system. While developers have been able to send PIN messages directly, they have not been able to integrate with the Messenger application. In the future, social apps and other applications will be able to plug in as extensions. For example, you could use Messenger to schedule times for online gaming. Apps can also use Messenger as a data channel for peer-to-peer communication, using a suite of APIs and services. RIM says that this SDK will be available in the spring of 2011.
Finally, many developers will rejoice to hear that RIM is opening its development platform outside of Windows. Even though the BlackBerry toolchain is Java-based, it has been supported only on Windows boxes. RIM will be porting the BlackBerry Eclipse Plug-in to Mac OS X. It will be available to all registered developers, and should be available within a month. There's no word yet on support for Linux, but hopefully RIM's increasing engagement with open source will make this available soon.
Easier BlackBerry Development
RIM has a powerful platform that allows integration with most device features. Writing applications is complex, though, and in recent years they have sought to simplify development. The widgets/WebWorks initiative is one way, by allowing developers to use simpler Web technologies to quickly build user interfaces.
Enterprise applications have historically been among the most challenging apps to write, as they require close coordination between specialized networking components on the backend, communications libraries on the device, and a presentation layer. RIM also announced a new enterprise app middleware service at DevCon. Enterprise App middleware will offer an end-to-end communications channel that should abstract many of these difficulties from developers. You'll be able to focus on modifying and customizing the UI, rather than handling the network integration. A closed beta is scheduled for later this year, with additional public libraries released in 2011.
Most significantly, this middleware layer should greatly improve handling push technology, which traditionally has been challenging and time-consuming to integrate. Another library will support file transfer between the backend and the device. For example, a service company could transfer field manuals to devices on demand. Another library will support sending device information back to the backend; this would allow use cases such as a fleet management company keeping track of its drivers' locations, current calendar schedules, and so on.
Many enterprise applications have also tried to support analytics, a method of tracking how customers are using their apps. This can provide very useful information to developers of all apps, but adding analytics requires either a large investment of time or licensing software from a third-party provider. In early 2011, RIM will make freely available WebTrends software that will allow developers to easily gain insight into how their apps are being used. Developers can use this information to determine how frequently people are using their apps, which screens they spend the most time in, and so on. In turn, you can use this data when prioritizing which aspects of your app to enhance.