A Palm Introduction
Pages: 1, 2

Palm software

A key feature of the Palm design is that new software can be uploaded to the devices, supplementing or completely replacing the pre-installed software. The devices come with date book, address book, to-do list, memo pad, e-mail, and expense applications built in, with each application reading and writing well-documented database files. Enhancing a Palm simply involves finding an application you want to run and uploading it. There are lots of applications available -- some commercial but also a great many that are free.

Palm devices don't have a hard drive, so everything is stored in a nonvolatile RAM drive. Palm applications are simply files in this file system, ending in .prc, and sit alongside any database files they create, usually ending in .pdb. The "Applications Launcher" presents the user with a list of all the .prc files on the Palm, with applications optionally categorized to the user's preferences.

This means that managing software is quite easy, since each application usually involves uploading just one file to the Palm, plus one or more database files. Backing up the device involves copying and saving these same files. On the Internet, Palm software is often distributed either packed into an archive format, or simply as an uncompressed .prc. Installing new software can be as easy as downloading from the Web with a browser and then uploading to the device.

There are many sources for software to run on the Palm OS. The first stop should probably be the Palm Software Connection at, which links to a great many applications, most of which can be downloaded, installed, and run immediately. Some are designed for use with particular software on the desktop, but most are stand-alone or use a standard data-interchange format through a "conduit," so different Palm and desktop apps can inter-operate.

Another interesting source of Palm apps is the RedHat "Powertools" directories since version 6.0, available from most RedHat FTP mirrors. Contained within are several categories of applications, some quite useful. Other sources include PalmGear at, Tucows PDA site at, and Handango! at There are certainly others; these are simply my most commonly frequented.

As with all software decisions, evaluation of many solutions is often the best way to find the perfect fit. A large amount of free software is available, all the way up to free GPL programs, and these are worth hunting down and trying. As with any system, it's a really good idea to back up before installing a new application or, at least, before launching it for the first time.

The quality of the software available ranges from absolutely amazing to rather underwhelming. And often this doesn't correlate with price -- some of the apps I personally use the most are GPL, like DiddleBug and CSpotRun, while one app I paid $30 for always crashes on me.

The Palm and its competitors

Microsoft just recently announced their (lucky?) third attempt at getting Windows CE working correctly and accepted by users. Now called Pocket PCs and Windows-enabled, the devices continue to rely on power-consuming high-speed processors, large memory arrays and color displays to deliver multi-media ability on devices that really aren't ready for it. Until Microsoft realizes that functionality, not creeping featurism, is what's needed in handheld devices, I don't think Palm has much to worry about from Pocket PCs.

An area where I think Palm will soon have some competition is in handheld and embedded Linux devices. As it's taking time for Linux to gain desktop market-share, it will similarly take a while for it to get a strong foothold in the PDA market as well. Also, Palm Computing isn't standing still, with new devices and wireless features announced just recently.

For end-users, right now, PalmOS-based devices are probably the best choice of PDA, especially for Linux/Unix users. The software selection simply cannot be matched by any other PDA solution, with a developer base similarly large. No Palm is complete with only the software included, though, so be sure to spend some time downloading and experimenting with some of the available extra tools.

For developers, the PalmOS is a good platform to start on since it's free to develop for and has a large user base to market to. Those interested in catching the handheld Linux wave might find advantage in developing Palm versions as well, if the application allows it. And since Palm devices are available off the shelf immediately, prototyping and testing can be done while the Linux devices come to market.

I personally don't know anyone who's used a Palm for a week, and was then willing to give it up. Within a few weeks of buying my first Palm, a second was purchased for my wife. They are simply too handy not to have. Providing they're used to jot down every appointment and item to be done, nothing will ever slip again. Of course, if you don't tell your Palm, it can't tell you.

Editor's Note: Linux users who want to learn more about using the Palm should take a look at Chris Halsall's companion article, "Using the Palm with Linux." Also, don't miss Derrick Story's report on the YOPY, possibly the first PDA running the Linux operating system being produced by a startup in Korea.

Chris Halsall is the Managing Director of Ideas 4 Lease (Barbados). Chris is a specialist... at automating information gathering and presentation systems.

Discuss this article in the O'Reilly Network General Forum.

Return to the O'Reilly Network Hub.