Talking about mobile application development, most of us will think about Objective-C for iPhone/iPad and Java for Android devices.
Well, there are at least 2 ways we can produce cross-platform iPhone, iPad and Android mobile applications in Javascript.
One is by using the open source PhoneGap mobile framework by Nitobi Software, which is basically a wrapper that runs your mobile application via the webview browser object and provides some access to native APIs of the mobile platform. The trade-off of using PhoneGap including: slower application runtime, limited access to OS and hardware APIs, web-like user interface (compared with native user interface), etc.
Another way is by using the open source Appcelerator Titanium Mobile development platform, which will compile your Javascript codes into native iPhone, iPad and/or Android mobile application. As a result, the mobile apps developed with Titanium Mobile will have almost the same runtime speed with native apps developed in Objective-C (for iPhone/iPad) and Java (Android SDK).
You will need an Apple Macintosh computer (with Apple iPhone SDK installed) to build iPhone applications with Titanium. You can build Android applications in Apple Mac, Windows or Linux computer, with the Android SDK and emulators installed. This also means that if you are using Titanium in a Mac, it is possible for you to develop cross-platform mobile applications for both iPhone and Android using the same code base.
One of the beauty of Titanium is that it has a rich library of APIs of 30+ modules, 80+ objects, 800+ methods and 2800+ properties (and still expanding) which enables developers to get the most out of the mobile resources, including resources from Internet such as the Facebook APIs, Yahoo APIs, etc. It even made available a Kitchen Sink demo program, which showcases majority of its available APIs.
Mobile apps developed with Titanium including Sugar Mobile by SugarCRM, eBay Corporate by eBay, GetGlue by AdaptiveBlue, etc.
You might probably also be interested to read about: