The challenge for mobile application developers is being able to make their apps available for a multitude of platforms, each of which have different development environments that require writing separate applications. A small developer may have to choose to only write their app for only one platform because that is all they can afford to support, or at the very least pick one first and then develop for other platforms later. PhoneGap is a HTML5 app platform that allows developers to write apps in one development environment and deploy it to multiple smartphone platforms.
If you are interested in seeing what an app developed with PhoneGap looks like, check out Diary Mobile, a free app in the Android Market and iTunes App Store. You see in the screenshot below that the app looks like on Android, and it performs the same although it seems to run a little faster on my iPod Touch than the Nexus S. Notice the dock of buttons at the bottom of the screen, which is an iOS convention rather than Android, which utilizes a hardware button called the Menu button. Pressing the Menu button on the Nexus S activates the Settings item on the dock.
The Diary Mobile app highlights yet another challenge with developing cross platform apps in that while PhoneGap enables one to write and compile the same app for multiple mobile devices, the native user interface of those devices is noticeably different, and developing for one convention is going to cause the app to be awkward on other platforms. On the other hand, if you a small developer, PhoneGap provides the easiest way to get your on multiple mobile devices, and the tool is freely available.