I’ve blogged about building native mobile device applications using a Web technology-based framework such as PhoneGap from Nitobi in the past. When I first wrote about the open source PhoneGap project in March 2009 I concluded: “If I worked at RIM, I’d take a trip out to Vancouver to talk to the Nitobi dudes. This framework is exactly what RIM needs to counter the trend of developers targeting the iPhone/iPod as the premier environment for mobile device applications”.

Fast forward seven months and RIM announces a beta of the BlackBerry Widget SDK that:

“allows web developers to package up their web assets into BlackBerry Widgets (small, discrete, standalone web applications that use HTML, CSS and JavaScript). A BlackBerry Widget looks, behaves and has the same security mechanisms as a native BlackBerry application. BlackBerry Widgets can be installed on a BlackBerry smartphone like any native application and can be extended to use device-specific information and data using the BlackBerry Widget APIs.”

Wow, sounds like an enhanced PhoneGap tuned for BlackBerry applications. With fingers crossed I pinged Andre & Dave to ask if RIM was using PhoneGap for this SDK. I’d scoured the BlackBerry Widget SDK website and knew the answer before Dave and Andre replied “nope”.

This was absolutely a missed opportunity for RIM to compete versus Apple, Palm and others using open source. No, I’m not going to suggest that RIM open source the BlackBerry Enterprise Server; that would be silly. Rather, I believe RIM could have saved R&D costs, increased the value of its BlackBerry platform and influenced developers building for the iPhone if RIM had built the Widget SDK on top of the open source project like PhoneGap.

RIM should be utilizing R&D investments more effectively by leveraging exiting open source projects. RIM could have built this SDK for a lower investment by staring with PhoneGap, or another equivalent open source framework. Of course there might have been a feature gap between what PhoneGap offers and what RIM wanted to deliver in version 1.0. However, assigning RIM developers to the PhoneGap project to add these features whilst leveraging all the other APIs in PhoneGap would have saved RIM the work of reinventing the wheel for those other APIs.

RIM would have also benefited from new features added by the PhoneGap community. A PhoneGap community member who loves his BlackBerry and wants to “scratch an itch” could contribute a PhoneGap feature that other BlackBerry developers would find extremely useful.

Finally, RIM would be contributing to a framework that developers are already using to develop iPhone applications. RIM needs to figure out a way to entice developers to build BlackBerry applications before iPhone applications. However, RIM should also be working to get developers to port their iPhone apps to the BlackBerry platform. As a PhoneGap contributor, RIM could offer a simple and painless porting option for existing and new PhoneGap-based iPhone applications.

I could come up with additional benefits for RIM, but these three are big enough for RIM to reconsider its strategy for delivering the Widget SDK. RIM could yet contribute all or part of their Widget SDK to an established mobile framework open source community and build its Widget SDK product from the resulting open source community code.

I suggest this strategy because I’ve witnessed IBM using it with great success. In the WebSphere division, we contribute to countless open source projects, including the Apache HTTPD, Dojo Toolkit and Eclipse Equinox projects. We then utilize code from these projects with IBM enhancements inside of WebSphere Application Server. This strategy allows us to, with less, do more.

I hope friends at RIM can learn a lesson from IBM’s use of open source for competitive differentiation. With Dion & Ben at Palm, you can bet that Palm is thinking about using open source more effectively within its strategy.

Follow me on twitter at: SavioRodrigues

PS: I should state: “The postings on this site are my own and don’t necessarily represent IBM’s positions, strategies or opinions.”

Three open source products are aiming to reduce the barrier to entry for customers wishing to build native mobile applications using web development skills alone.  These products are PhoneGap, Rhomobile and Appcelerator’s Titanium Mobile.

I’ve covered PhoneGap in the past.  People’s Choice Winner at Web 2.0 Expo Launch Pad, PhoneGap is targeted at web developers with HTML, JavaScript and CSS skills who want to build device agnostic applications across the iPhone, Android and BlackBerry platforms.  PhoneGap currently supports access to GPS, vibration, accelerometer, sound and contacts.  PhoneGap is licensed under the MIT license.  Developers and companies can use PhoneGap for mobile applications that are free, commercial, open source, or any combination thereof.

Rhomobile, selected Best Startup at INTEROP 2009, lets developers use HTML and Ruby to create native iPhone, BlackBerry, Windows Mobile, Symbian and Android applications.  Rhomobile currently supports GPS, contacts and camera functionality with plans to add SMS, push, audio/video capture and accelerometer support.  Rhomobile is licensed under the GPLv3.  This means you’ll have to open source your mobile application when it’s ready to be distributed, or pay for a commercial Rhomobile license.

Today, Appcelerator announced support for building native iPhone and Android applications using JavaScript, HTML and CSS with its Titanium mobile product.  Titanium mobile provides native access to the device’s storage, multimedia, input, and geo-location APIs.  Titanium is licensed under the Apache Public License V2.  Developers and companies can use Titanium for mobile applications that are free, commercial, open source, or any combination thereof.  BTW, if you’re at WWDC, Appcelerator is hosting a beta launch party from 6 to 9 PM at Jillian’s in San Francisco on Tuesday, June 9, 2009.

Rhomobile is the odd man out with a license that forces developers and companies to pay for a license or open source their own mobile application.  Unless Rhomobile delivers an order of magnitude more productivity than Titanium or PhoneGap, I foresee Rhomobile facing challenges with developer adoption.
The GPL works fine with developers, ISVs and partners when the majority of open source competitors are also using the GPL.  But in the face two competitors using liberal BSD-based licenses, the GPL is definitely a hindrance to developer adoption.  And I’d argue that developer adoption today will differentiate between leaders and also rans in 12 to 18 months.

Have you used any of these products?  What do you think?

Follow me on twitter at: SavioRodrigues

I stumbled upon PhoneGap while exploring twitter this weekend.  PhoneGap is a device independent framework that allows web developers to take advantage of native features (e.g. GPS, accelerometer, sound, vibration) of the iPhone, Android-based devices, and Blackberry devices simply by using JavaScript.  The framework allows web developers to write cross-device applications without having to learn new languages, such as Objective C or Java.

PhoneGap is the brainchild of folks over at Nitobi, a Canadian software firm known for its “Complete UI” platform for building Ajax-powered Web user interfaces.  PhoneGap is an open source project licensed under the MIT license.  The project is looking for help to help mature PhoneGap quickly.

If I worked at RIM, I’d take a trip out to Vancouver to talk to the Nitobi dudes.  This framework is exactly what RIM needs to counter the trend of developers targeting the iPhone/iPod as the premier environment for mobile device applications.  RIM has the brand and market share to persuade developers that writing once and targeting three key mobile platforms is the best use of a mobile developer’s effort. RIM would need to adopt WebKit as the rendering engine for their browser, but that is going to happen anyway ;-)