PhoneGap: An All-In-One Solution to Mobile App Development
The other week I finally decided to start having a crack at teaching myself Objective-C, the programming language used to develop iPhone apps. After trawling through the masses of tutorials and having an extremely simplistic app to show for it (to be honest most of the code had been just copied and pasted from the tutorial without a full understanding of it) I was at my wits end and was wondering why I had decided to take this on. Coming from a web development background to then having to deal with issues like memory management was beginning to sound a little too painful.
While discussing this with a developer friend of mine he directed me towards PhoneGap. Not does it only allow you to bypass having to write Objective-C to create iPhone apps but it also makes it possible to build apps for Google Android, Palm, Symbian and Blackberry using the same code. With Windows Phone 7 coming soon.
How is this possible? The developers at PhoneGap have built their own Javascript API which hooks into the APIs for all the different platforms, allowing you to access all the native features of the particular devices but by using the same codebase. You can see a list here of the platforms and features supported by PhoneGap. So essentially you can write your app using HTML, CSS and Javascript, upload it to PhoneGap’s build service then they send you back an app-store ready app for each device.
Although there are some negatives from this approach, such as not having full access to all the native features of the device, in my opinion the positives far outweigh this. You only need to know HTML, CSS and Javascript, which are pretty standard for most developers, and more importantly you don’t have to learn Objective-C or Java. As well as this you don’t have the need to develop for each device and (most importantly to me as a lazy tester) you only have to test once.
This approach won’t be for everyone as for more complex apps 100% access to the devices native API will be required. However, for developers who want an easy way to build cross device applications without having to dig into complicated languages such as Objective-C this seems like the perfect solution.

For people coming from VB, there is NS Basic/App Studio, which allows you to code in BASIC, producing projects that work with PhoneGap. It’s a complete IDE, so it does a lot of other work for you tool.