HomeBlogPalm Pre Development Issues - Part 1

Palm Pre Development Issues - Part 1

Published August 20, 2009

Over the last few weeks I have spent a fair amount of time developing an application for the Palm Pre. I have been spending time working on developing for the iPhone, and there are a ton of differences between the two, most negative for the Palm.

The first and most obvious difference is the programming language. When developing for the iPhone you use Cocoa, defined by Wikipedia: Cocoa is one of Apple Inc.'s native object-oriented application program environments for the Mac OS X operating system. Apple also provides tools specifically to develop Cocoa applications, XCode and Interface builder. XCode is a nice programming tool, but Interface builder is what really puts iPhone development miles ahead of Palm Pre development. Interface builder allows you to visually set up all the screens of your application and easily link them to your code, and while it may still take a while to set up all your screens, it is certaintly much easier than what you have to do with the Pre...

When developing for the Palm Pre you get to use the exciting combination of..... HTML and JavaScript!!! Yea, I wasn't that excited either. Palm does provide a very full featured SDK and once you start to get the hang of it the Object Oriented JavaScript gets a lot easier and you can do some nice things with it. Without a tool like Interface Builder, you are forced to make HTML templates, and use CSS to control the look and feel of all your screens. Since HTML and CSS are widely used by web developers, it really isn't a problem, but anyone who has spent a lot of time with CSS knows that a lot of it is trial and error until it looks the way you want it. So you have to change the CSS, re-package the application, re-install the application, and re-launch the application to see if it looks the way you want... a few pixels off, all over again.

While it would be nice to have a visual editor to help you out, it really isn't a deal breaker, and I have a much bigger and more annoying issue... call backs. Call backs are often necessary, and in certain situations work really well, but when they are the only thing you have to control the flow of your application, things quickly get messy. Let me give you an example:

Palm provides functionality for GPS and Reverse GPS (based off of GPS coordinates) but their function doesn't just directly give you the information and continue to let you use it in the flow of your code, it requires a call back function which can then do something with the code. So to get the reverse location info, you have to call the gps, have it return the coordinates to another function, have that function then call the reverse function and have it pass the results to a third function, which can then try to do what you wanted to do with the information. Very quickly your code gets stringy, hard to follow, and more difficult to do things that should be a lot more simple.

So while Palm provides a lot of functionality to get information from the phone, the only way to get it is with call backs, which makes dealing with the data you get back much more annoying than it needs to be...

 

 

blog comments powered by Disqus

1 COMMENT

Jimmy graduated from YCP & spent several years developing business applications. Since joining RustyBrick in 2007, he has managed & developed several E-Commerce sites, business applications, iPhone, & Palm Pre applications.

This article is under Programming

There is 1 comment for this post

Connect With Us

Send Us a Message

Do you wish to give us feedback on one of our apps, send us a message or explore a proposal? Fill out the form below and we'll get back to you pronto!

Visit Us

250 West Nyack Road, Suite #200 West Nyack, NY 10994
Get Directions

Call Us Toll Free

877-GO-RUSTY
877-467-8789

Telephone

845-369-6869

Fax

845-228-8177