I find the Palm platform convenient for programming. You can build something using the latest and greatest Palm 5 based SDK and then run it on the oldest cruddiest palm you have. As long as you make sure to not use unsupported APIs your program just works. It’s like static linking under Unix/Linux – all you need to make sure is that the underlying system calls are there (or in this case entries in the trap table.