Palm vs. Pocket PC – comparison of features and usability



Introduction *

What’s in this document *

Different looks of Microsoft’s PDA OS *

Stars *

Niche *
Concepts behind the two platforms *

Approach *

Instantly available *

Starting applications *

Working with applications *

Synchronization concept *

Palm Conduits *

Applications structure *

Hardware & Architectural Features *

Architecture *

Battery & power features *

OS upgrades *

OS features & Performance *

Memory usage *

CPU usage *

Applications *

Built-in applications *

Built-in versus third-party *

PalmOS applications *

PocketPC applications *

Information services *

Palm’s Web Clipping applications *

Applications developed by community *

Usability *

Navigation, orientation *

Screen zoning *

Usability of the sync process *

Starting & Performing Sync *

Setting up Sync & Desktop Software *

Intuitiveness *

Software development *
On the market *

Major Players *

Cost of ownership *

Tips for choosing device *


What’s in this document

This document is a comparison of two platforms of handheld computing – PalmOS and PocketPC. I compare different features of their hardware and software features, trying to understand concepts behind each of them and trying to decide which platform is better suited for which kind of applications.

These two platforms currently dominate the market of handhelds.

More veteran PalmOS passed through several stages of development after its successful debut in PalmPilot. It is perceived greatly by customers and currently nine manufacturers produce PalmOS-based devices.

Young and ambitious PocketPC is a Microsoft’s response to Palm. The platform is adopted by several computer manufacturers and is aggressively promoted.

Different looks of Microsoft’s PDA OS

There are, in fact, two PDA operating systems from Microsoft:

These systems look differently and behave sometimes differently, too. The name "Windows CE" is sometimes used to name both systems collectively, meaning "embedded Windows".

In this document I bring different screenshots for them, where available, to see the differences. Hope not to cause too much confusion. Our principal interest in this report is the PocketPC, as the competitor to Palm.


I put a "stars" section in the end of each topic, where I briefly summarize benefits and flaws in each platform.

In comparisons, I avoid using "double jeu" – I never display the positive feature of one platform as a negative feature of another one. If I wrote, for example, "xyz feature is great" as a benefit of one platform, I will not write, "lack of xyz" as a disadvantage of the second one.


Products we’re trying to compare belong to the class of PDA’s – Personal Data Assistants, a kind of "electronic synchronized organizers". The main features of such devices are

This niche is very sensitive and requires very careful design of the device. Putting too few features makes the device less useful.

Putting extra features makes the device too expensive and harder to understand, also causing extra power consumption. Every little flaw in the user interface may block effective use of the device or cause user frustration, which immediately leads to returning the unit (CNET’s site has hundreds of user reports ending by returns).

The lower neighbors of the PDA niche are electronic organizers with fixed software (electronic notebooks). The upper neighbors are handheld PCs with keyboard (partially discussed here) and lightest of the laptops.

In every specific usage case, the user decision between employing a laptop or a handheld PDA highly depends on many factors, discussed in this review. Most important factors are:

Concepts behind the two platforms


The differences between platforms start from different approaches to the development of the user interface:

Instantly available

Both platforms share the wonderful concept of "immediate availability". Because of constantly powered memory, the machine practically never shuts down. It is activated by a single button click and responds immediately. Unlike desktop PCs or digital cameras, the user does not have to wait while the machine "boots".


Starting applications


In PalmOS, user starts an application by first clicking the "Home" button and then clicking an icon of the desired application. It is not possible to re-assign the "Home" button. Since the button is in the "silk" area, it cannot be overridden.

Palm’s "Desktop"

Four functional buttons also start applications, namely "Addresses", "Date Book", "To Do" and "Notes". These can be re-assigned to different applications. Except them, application launch may be assigned also to Page Up and Page Down buttons and to the cross-screen movement of the stylus. So, the application start can always be done in either one or two steps.

Windows CE/PocketPC

In both Windows CE and PocketPC, application structure is very similar to desktop editions of Windows. User has several alternatives to start an application:

  • using the start menu;
  • clicking an icon on the desktop;
  • clicking on an application file in explorer;
  • clicking on a document file associated with a program;
  • clicking a functional button on the keyboard or in "silk area".

Windows CE Desktop

In Pocket PC edition of Windows, Start button became smaller and lost its "start" label, only the icon remains. This "Start" icon is now placed in the application header in upper-left corner of the screen, so that the menu opens downward, causing visual confusion with Windows’ drop-down menus. Those for some reason were shifted to the bottom of the screen and are opened upward. Start menu no longer has a tree structure and it merely exchanged functions with the desktop: In Windows CE, the start menu contains all programs, while icons on the desktop duplicate some of them. In Pocket PC edition, all programs present on the "desktop", while only some of them appear in the menu. Icons of several recently used programs are displayed in the first line of the start menu without labels.

Pocket PC Desktop and Start Menu

HP Jornada Pocket PC that I tested has a special program called "HP Home" that also starts applications. I suppose it was added because running programs always obscure the "desktop" of the Pocket PC. Also, when associated with "Home" button, this app gives a feel of Palm OS.

Working with applications


User doesn’t explicitly quit an application - (s)he just starts another one or switches the screen off. When starting an application again, it either returns to the state where it was previously left, or starts from the initial screen – this is per application.

In PalmOS ideology, there is no explicit "file system" and users normally don’t need to "save" changes. Each application maintains its own set of information objects. Such a set usually is presented to user as a list. Clicking a list item opens a "screen form", consisting of controls similar to Windows. There are, however, fewer screen controls than in Windows: text box, list box, check box or a choice of pre-defined values. There also push buttons, traditionally placed at the bottom of the screen. Radio buttons, tabs are not used. Application sometimes displays a "dialog box" which is recognized by border and header, similar to Windows 3.1. Clicking a button in a dialog box returns the user to a form.

Instead of putting "documents" into "folders", user can "categorize" application’s information objects by using categories list (where applicable). Current version of OS supports no more than 15 categories. Category lists are separate for each application.

An application normally has a drop-down menu invoked by a special button. For space saving on a small screen, the menu appears on the place of application header.


Palm’s application form (address book) with categories list open and with menu open

Windows CE/PocketPC

Windows CE application look and feel is exactly the same as one of desktop Windows. Observable differences are:

In Windows CE:

  • application header is removed for screen space considerations. Menu bar and toolbar of an application are displayed in a single row on the top of the screen;
  • OK button in dialog boxes moved to the top-right corner of the dialog, saving some space, too;

In PocketPC:

  • application header came back, but menu moved to the bottom of the screen. Unlike Palm, menu bar is always visible;
  • No taskbar. Start button and clock are inserted into the application header, where Start icon visually resembles app icon and does not encourage to click on it;
  • OK button of dialog boxes moved from the dialog box header to upper-right corner of the screen;
  • There is a certain shift toward visual similarity with PalmOS:
  • Programs are no longer closed, constantly obscuring the desktop;
  • Second launch of a program does not open a second instance, like in Windows, but rather activates a running instance, if exists, which gives "a feel" of Palm;
  • "Contacts" and "Calendar" applications slightly changed to resemble Palm’s "Address" and "Date Book";
  • Repetitive clicking on functional buttons on HP Jornada causes sequential categories change, like in Palm OS.

As mentioned above, file system concept did not change. User can create folders and place different documents in them. Usual Windows explorer is used.

Explorer. Windows CE.

Stars: User Interface Concept

PalmOS Windows CE/PocketPC
  - Pocket PC Desktop obscured by applications

- Big differences between editions

Synchronization concept

The core requirement to the handheld computing is to provide the same information on PC and the handheld. This requires the data to be automatically updated on the PC when they’re changed on the handheld and vice versa. Synchronization concept directly influences application design, because each application’s features and design depend on how the data will be obtained from the desktop PC.

Both platforms offer built-in instant synchronization of e-mail, contacts (phone book), appointments and notes. As per other applications users may want to have, the approach is different between PalmOS and Windows CE.

Palm Conduits

"Conduit" is an intermediate application that works on the desktop PC. It processes the data on their way from desktop to Palm and versa.

The data flow looks like this:

It is up to conduit to decide which data to transfer and how to present them. PalmOS just throws the data to the desktop and calls the conduit to process them.

Sometimes conduits may be transparent to users (like in built-in mail application), but in many cases the user must be aware of conduit’s presence and function.

Designing a good conduit can be a real art.

Just for example, MiniOffice offers a conduit that presents Excel workbooks on a Palm as MiniCalc tables. The special macro on PC side extracts data from the Excel sheet and prepares the data files for the Palm. The conduit remembers which excel file should be synchronized with which Palm file. When a table is modified in MiniCalc application on the Palm, the conduit tracks the changes and invokes the macro to reflect those changes in the original Excel sheet.

What’s important, is that Excel objects that cannot be viewed on the Palm (like drawings, OLE objects, etc.) are left intact and are NOT lost. The conduit is intelligent enough not to touch them even when the changes are transferred from the Palm.


In contrary, Windows CE / PocketPC tries to make the things invisible to the user and therefore it hides conduit-like activity, doing it "under cover". In the example above, when the user wants to have an Excel file synchronized with a handheld, it declares that the file as being "synchronized". CE Desktop Service converts the file into the Pocket Excel format and puts it into the "Synchronized files" directory. Objects not supported by Pocket Excel are lost. When the user wants to open a file on PC, the file is instantly converted back to Excel, but obviously without the initial objects.

Same with PowerPoint – a presentation looses all its graphics and animation when transferred to the CE handheld, and of course it does not get them back after being converted from "synchronized file".

Graphically, the process looks like follows:

Conduit technology assumes third-party developers write their conduits and it is up to them how the data are processed. On Windows CE however, there is no standard way to define automatic file conversion on sync. While Mail, Pocket Word, Pocket Excel and Pocket PowerPoint automatically convert their files (with the consequences described above), a third party application is not given a standardized way to do it. All other files are just thrown to the handheld as they are. Of course, a developer may independently place a conversion program on the PC. It is yet not clear to me whether it is possible to "attach" an additional activity to the sync process.

Applications structure


Typical PalmOS application consists of three components:

  • Desktop application (optional);
  • Conduit (optional);
  • PalmOS application.

In the simplest case, only the PalmOS application is present. This assumes user may only use the app on palm (like calculator, unit converter). If such an application has any data files, they are backed up to the PC with no additional development effort, as a part of automated backup process on each sync.

More serious case is when a PalmOS application requires data updates. For example, this may be a Jewish calendar (updated yearly), currency converter (requires update on conversion rates), medical reference, book reader, etc. In this case, either the update files are given by the application provider in a ready-to-use form and must be just installed to the palm, or a desktop application will be provided that will somehow obtain the data and prepare them for the handheld. Now there are two components involved – Palm OS application and its Desktop partner.

In the most advanced case, data may be edited either on PC or on the handheld and should be synchronized. Examples of such applications are:

  • Document editing, spreadsheets, etc.;
  • Time/Project management;
  • Field activity (medical, logistics, etc.)

This is when Mr. Conduit comes and helps to manage the flow of the information (see above in Synchronization section and in Palm Conduit section).

In some cases, it is possible that an application is delivered with the conduit, but without a desktop partner, assuming already existing desktop application. This is how most Office-like applications are delivered – they just attach themselves to Microsoft’s or other office suite that they find on the desktop PC.

Windows CE/PocketPC

A typical Windows CE application model is closer to its PC analog. Normally, a handheld application for Windows CE is just a "lite" version of the desktop application, which has just fewer functions.

There are no special arrangements for data exchange and/or synchronization. An application works with files, just like its desktop colleague. If a user wants a data exchange, (s)he just drops the necessary file(s) to the handheld. If user needs to synchronize the data constantly, the file may be just put under "synchronized files" folder. Files, however, are entirely replaced according to modification time. Record-level sync is only supported for Contacts, Calendar and mail.

Stars: Application structure and sync

Palm Windows CE/PocketPC
+ Sharper task-oriented application design

+ Standardized way to synchronize data

+ Similar application functions on the desktop and the handheld
- Users should learn and understand how conduits work - Users need to maintain a file system on the handheld

Hardware & Architectural Features

Hardware and architectural features determine how a platform is capable to extend and adapt itself to users needs. Here is a brief comparison of features.


  • All PalmOS machines have exactly the same architecture and use similar Motorola processors;
  • RAM is currently limited to 8 megabytes; While Palm & Motorola work on removing this limitation, some vendors apply different tricks of extending RAM by using flash memory;
  • Typical system has 160x160 monochrome or color screen of either several levels of gray or 256 or more colors; Some systems support higher screen resolution (320x320 in Sony CLIE, 240x320 in HandEra 330);
  • The system has one serial and one Infrared port. Port connectors and cradles are specific to models;
  • The system supports internal beeper. Some models (like Sony CLIE) support MP3 sound;
  • The system synchronizes using either serial or infrared port. Some models support USB sync by using USB to Serial converter. The OS also supports synchronization through
    • modem connected to the serial port;
    • cellular modem via serial adapter or infrared;
    • LAN accessible by dial-up via modem (based on TCP/IP);
    • LAN accessible by serial cable (based on TCP/IP).
  • Special line of Palm machines are equipped with cellular antenna and can access on-line services directly, defining a special class of applications/services (not checked);
  • Only newer generation of Palm machines (505 series) recently started introducing extension modules other than those connected by serial port. Previously, modular extensions were only met at:
    • Sony - Sony PEG, Sony CLIE – memory stick (flash memory) cards;
    • TRG (now Hand Era) – TRGpro, HandEra 330 – CompactFlash industry standard (flash memory, modems, LAN cards, etc); Handera 330 also supports SD memory card;
    • HandSpring – Visor series – have a expansion slot allowing different proprietary cards, including adapter for industry-standard SmartMedia memory cards.

Palm & clones offer different accessories for their PDAs, including:

  • modems;
  • cellular modems;
  • keyboards (useful for meetings);
  • bar-code reader;
  • digital cameras;
  • GPS (geo-positioning systems)

and even printers.

Windows CE / PocketPC devices
  • may be built on several kinds of CPU – StrongARM, RISC
  • may have different screen resolutions and different number of colors
  • normally support PCMCIA expansion standard, either full-size slot or CompactFlash or both. PocketPC usually have only one Compact Flash slot.
  • have serial & infrared ports
  • usually support wav, midi and/or mp3 sound
  • may have USB
  • synchronize through serial port (Windows CE), USB, Infrared or PCMCIA LAN card (though I never succeeded with LAN)

Windows CE devices support wide range of PCMCIA accessories, such as

  • memory cards;
  • modems/GSM cards;
  • LAN cards,


Software architecture details are discussed separately in "Software development".

Battery & power features

Comparing to PocketPC, Palms run on lower CPU frequencies (16, 20 and up 30 MHz versus 100, 120 and up to 200 MHz of PocketPC). Therefore they’re capable of much longer battery life. Some Palms work on single-use alkaline batteries that last up to two months on each set. Other models use rechargeable Li-Ion batteries that are charged automatically while the device is in cradle.

Most PocketPC devices use rechargeable batteries.

In day-to-day business conditions the difference of power consumption is not sensible, because the unit recharges itself each time it is inserted into the cradle. However, in out-of-office conditions, user may sense the difference. Color PocketPC keeps running about 8 hours of continuous work with screen turned on, or a couple of days on so-called "normal usage base", which means, accidentally using it throughout the day. Rechargeable Color Palm may run about twice longer than PocketPC for continuous work and as long as week on "normal usage base". Monochrome Palms consume even less and sometimes reach two weeks on "normal usage base" without recharging.

The concept of recharging battery while in cradle is somewhat problematic. Rechargeable batteries do not like often charges. From the other hand, in order not to put user under the risk, the cradle must charge the battery on each opportunity, causing excessive drain. In a year I’ll have more data about how Palm’s and Jornada’s batteries survived, but I’m afraid they’ll have far less capacity.

OS upgrades

Though first Palms kept the OS in ROM, all current PalmOS devices keep OS in Flash memory. Therefore user can upgrade OS by downloading and installing a module through the Internet. In fact, those updates are released relatively often, several times a year.

Windows CE & PocketPC have OS in ROM. As of now, I did not hear about software upgrades for Windows CE or PocketPC.

Stars: Hardware features

Palm Windows CE/PocketPC
+ Longer battery life + Industry-standard PCMCIA expansion;

+ Support for better screen

+ Support for sound

- 8 MB RAM limit (currently)  

OS features & Performance

Though Microsoft’s platform is evidently stronger from the hardware point of view, software features almost neutralize the differences. Let’s look into some important details:

Memory usage

Windows CE/PocketPC supports from 16 to 64 Mbytes of RAM. Currently most devices come with 32MB, which is 4 times more than Palm’s 8MB limit. However, the usage of memory differs very seriously between opponents:

In other words, we see that typical Palm’s 8 megabytes of RAM can keep approximately the same amount of data as typical Pocket PC’s 32. Observation of memory requirements of comparable applications confirms this conclusion.

CPU usage

PocketPCs run on higher CPU frequencies. However, in a real life PalmOS applications start faster and perform on comparable speed, often faster than PocketPC’s.

The explanation is as follows:

Throughout usual business data flow (document editing, scheduling meetings, maintaining tasks, answering emails), hourglass icon appears on PocketPC more often than on Palm.


Built-in applications

With its seven built-in applications, Palm is merely an organizer. It has a calendar, address book, "to-do" list, memo pad, e-mail, calculator and expense report. Even with these "great seven" only, the device might be very useful when out of office or during a travel/flight. It allows viewing and responding to emails, scheduling events, retrieving addresses, taking notes during meetings, writing down ideas, etc. Of course, everything is transferred to PC on next sync.

PocketPC comes with more applications built-in. In addition to those offered by Palm, PocketPC brings also Pocket versions of Word, Excel and Internet Explorer. Depending on multimedia features of the device, it may also have media player, Microsoft reader for e-books and other.

Here I don’t count programs used to maintain the device itself, like Palm’s HotSync or PocketPC’s File Explorer.

PocketPC vendors tend to add other applications to their devices either to promote the brand or to make their device easier to use. PocketPC’s Windows is in general more customizable, so application set and even look differ between devices.

In Palm, the standard application look is constant on all devices. Vendors may add software to support their hardware extensions. In some cases, vendors can change built-in applications, too. For example, Sony CLIE allows adding a photo to the address book entry.

Important to mention that Palm does not include features which are not likely to be used.

For example, PocketPC has a built-in ability to send and retrieve Internet mail and browse the Web directly through a modem. Until you buy a modem, these features are merely useless and you can’t remove them to free memory. In contrary, Palm bundles those applications with the modem, rather then with the PDA itself.

Mail reader on PocketPC can read formatted reach-text messages and optionally can even get attachments. There is no much use for this in real life, because Word & Excel attachments anyway cannot be viewed on PocketPC without conversion. Palm’s default e-mail application, on contrary, removes any font information and attachments from messages (of course, you can find a replacement for built-in mail application that will not remove attachments). Some may see this as a limitation from Palm’s side, for others it is just a way of doing things "efficiently". As a result of different approaches, PocketPC users normally need additional memory to keep all appointments, addresses and mail while Palm users normally don’t.

Built-in versus third-party

Important feature of a Palm's application is the principle "you don't pay unless you really need something".

Though Palm platform looks ascetic from the beginning, powerful options are widely available. Users may easily find many useful extensions in the market or via the Internet. All the bells and whistles that come included into PocketPC can be found available for Palm community. Moreover, in most chances the user will have a choice of several options for a particular feature and the most comfortable one may be chosen to better fit the specific need. Normally, such "extensions" are very cheap, around several dollars; some of them are free.

For example, the necessity of Office applications (word processor and spreadsheet) on a handheld machine is not an axiom for Palm. Really, how many users will wish to edit formulas in spreadsheets on such a small screen? Those who wish, however, have several options to choose from.

Choosing from a dozen of Office suites or Palm, I can select one basing on my specific criteria: I can either choose the smallest-size program, or the most powerful one, or the fastest one, or the program whose PC conduit is most comfortable or even cheapest one. Anyway, I will find something which suites me best.

In PocketPC I have one specific program built-it, and if it does not suite me, there is probably nothing to do. Some companies may write several extensions, but no vendor will write a replacement for Pocket Word. And, finally, who will buy a replacement for Pocket Word, when you already paid for the built-in version?

Last but not least: even considering the price of the optional Office applications, Palm is still cheaper.


PalmOS applications

PalmOS applications are task-oriented. Developers take a certain part of a workflow and decide where and how a mobile device can help. Therefore, Palm applications are usually smaller and faster. As opposed to PocketPC, a Palm application normally performs a very certain set of a well-determined tasks.

Among most popular Palm applications are:

  • Information assistance: different references, vocabularies, recipe books, etc.; also information assistance for business travelers (hotel guides, etc.);
  • Various text readers and graphics viewers;
  • General and special calculators, useful in particular professional domain, such as pharmaceutical calculators, engineering, scientific, etc.; also unit converters;
  • Navigation and orientation programs used in conjunction with GPS devices (Geo-Positioning Systems).

Information loading into a Palm device assumes conversion and compression done by PC conduit. Data are loaded into Palm in already compressed form.

Some dozens of Office applications are available for Palms, offering spreadsheet, document editor and charting functionality. Usually their conduits connect them to desktop office applications (see above for detailed description of MiniOffice sync process).

Separately from Office applications, there are many database applications, too. This allows creating applications based on data collection in the field, such as

  • Logistics, shipment tracking, stock, inventory;
  • Applications for sales agent, insurance agent, and the like.

There are several big companies in the market who develop custom Palm-based solution for big customers. Among those customers are hospitals, carriers, and quality assurance on big plants (like Volvo).

PocketPC applications

In general, PocketPC platform is younger, and therefore its applications portfolio is smaller. It also has an "experimental" character – the platform is still in phase of finding its typical customer.

Therefore there are no clear leaders between applications.

Among popular Pocket PC software one may find:

  • personal finance assistance;
  • maps, street references;
  • reading, e-books;
  • multimedia, mp3, graphics viewers.

High price of powerful, color device does not allow buying it just to use as a plain organizer. In order to spend serious money, the user needs serious application that will pay for itself. Therefore there is no need in tiny palm-like applications – they will not attract the buyer.

Built-in availability of Office and multimedia applications partially solves the problem. From the other hand, it creates a certain barrier-to-entry for companies that might wish to write software for PocketPC.


Information services

Development of PDAs created a special niche of information services for mobile users.

Most well known example is "AvantGo!" service, which delivers web news to handheld PCs.

AvantGo client is installed both on the PDA and on the PC that PDA is synchronized with. During synchronization, it updates web content on PDA according to user preferences, called ‘channels’. Thus, PDA users can read the updated content off-line. The service is free for customers, though some commercials are shown.

Information services like "AvantGo" are usually available to both Palm and Pocket PC users.


Palm’s Web Clipping applications

Palm separates a sub-class of their applications designed specifically for wireless users. These applications can run on

  • Some series of Palms that have a built-in antenna;
  • Palms equipped with optional wireless modem;
  • Cellular phones with PalmOS.

Data flow in these applications assumes user to download and fill a ‘web form’, which is sent wirelessly to the server. Server processes the form, runs the associated application and returns results to the mobile device. This powerful concept allows creating sophisticated information services, including instant content delivery, paging, instant messaging, on-line access to databases, stock quotes and many, many other interesting applications.


Applications developed by community

There are more community-written applications for Palm than for Pocket PC, and IMHO, that's why:

PocketPC allows faster creation of commercial applications, because it supports converting existing Windows applications to pocket platform. PocketPC development, however, requires Microsoft tools and certain experience in Windows programming and API.

Palm model is proprietary but still easy to learn, thanks to availability of PalmOS SDK and some OS code for free. Many users just create applications for themselves. They happily share those programs either for free or for minimal charge of just few dollars. One can find some brilliant pieces of software among programs written by users. Coded with a real problem in mind, they sometime feature high level of effectiveness and ergonomics.

Another factor is that PocketPC is more expensive in general. Its buyers are among businessmen. Palms sometimes are available to students, who do a lot of experiments and write many programs.


By "Usability" I mean the ease of use of provided features, including ease of understanding and mastering them. I normally compare behavior of each function with my expectation to see whether a particular feature may lead to confusion.

Navigation, orientation


In general, Palm brings a brilliant understandability of all the details of the process. In most cases, it merely behaves exactly as I expect without any need in manual. Pushing a clearly labeled button calls clearly understood function. Just out of the box it immediately starts working as an organizer, offering date book, addresses & to do list. All what you need is just a brief explanation on how to type. Further exploration discovers "Home" button which leads to other applications.

Palm’s "Desktop"

Built around the idea of simplicity, Palm PDA runs with the principle "only one thing happens at a time". User is always given a clear message of what’s going on now. The message of the "Desktop" screen above reads as follows:

"Hi, it is 8:24, my battery is full. Please choose a program to start. You’re currently seeing all programs".

Below are two more examples of screens and their messages.


‘Messages’ of PalmOS screen

Message 1: "You’re looking to addresses. You’re seeing the ‘emergency’ category addresses only. They are…. You can look up for specific address or create a new address.

Message 2: "You’re editing the address in the ‘Emergency’ category. Please type something. Shift is engaged. You can switch to ‘numeric’ or ‘International’ keyboards. Press ‘Done’ when you finish."

By carefully choosing which part of application is overridden by a dialog box, PalmOS ‘sharpens’ the message given to user. This also allows avoiding mess on the screen.


PocketPC usually have higher resolution, allowing finer fonts and more information on the screen. Let’s read two screens from page four, as both of them refer to starting applications.


First page reads like this:

"Hey, it is 2:00pm now. You’re running "Programs" application, however you can click on ‘Start’ icon and run something else, too. Here are the programs you can run: … You’re in the middle of seeing 98% of them (this is what the scroll bar tells). You can click on keyboard and type something, or you can click on the thin arrow button and change the keyboard to handwriting."

It is unclear from the look of the screen what happens if we engage the keyboard or handwriting. Both are currently useless, because we’re merely choosing a program.

The message conveyed by the second screen is:

"Hello, it is two o’clock in the afternoon now. Previously you were running ‘File Explorer’, which was displaying to you a list of something, sorted by name (you can still re-sort that). You still can come back and edit; therefore I left the ‘Edit’ menu for you. But suddenly you decided to start something else, still seeing dates and sizes of something. Recently you used the following apps: <list of icons>. You can run the following programs: <list of icons with names>. Click ‘programs’ icon if you want to use palm-like desktop with icons. Click ‘find’ if you lost something or click ‘help’ if you lost yourself.

Still, do not forget that in some programs you can use a keyboard or handwriting, though currently they’re obviously not available."

The scroll bar on the very default screen is a real shame. Unlike PC, this screen & fonts are not resizable; therefore developers knew from the beginning how the application will lay on it. Despite that, the developer failed to do the calculations and ended up cutting two pixels of Microsoft Word label to the sake of empty menu bar with useless keyboard icon.

Let’s read two more screens similar to those in Palm:


The first screen is not very different from Palm. It just tells we have 5 tasks, all of them presented, sorted by priority, we may create a new task or use some tools to do something else (we should anyway click to know which particular tools we have). We can complete a task immediately by clicking on its checkbox.

Despite the very little differences, the Palm screen still looks better. I doubt that I need to know that tasks are sorted by priority – it is obvious anyway and it does not require further attention after being set once. Palm would replace clock with categories, gaining one string, and would remove "tools", gaining another one. Buttons that call menu and keyboard are out of the screen on Palm, because they’re needed in many applications. And menu appears instead of app header, because I will not forget the name of the application while working with its menus.

The second screen, however, brings some real troubles.

  • The keyboard injects itself between the menu and the tab selector, obscuring half of the page. Unlike program menu, where scroll bar notified us about two missing points, nothing shows here that we only see a part of information;
  • OK button is visually lost in the header, though I believe user may quickly accustom to that;
  • It is not clear whether OK button will close the keyboard or the task;
  • It is not clear whether Edit and Tools button apply to the keyboard or to the task.

I found that overriding information by the keyboard is a real problem in many applications on Jornada 520, not to say "in most of them". In the screen above, if I open a start menu and choose another application, the keyboard will hide a half of it. Even the scroll bar will never bring the missing part to my attention, because the scroll bar relates to the whole content, not taking the keyboard into consideration.

Moreover, in the screen above the tab itself is cut, but tab headers ("Task" and "Notes") are moved upward. Tab headers visually "close" the tab, and user is not reminded that there is another information hidden behind the keyboard.

In general, as it was already mentioned in the "concepts" session, PocketPC interface concentrates on capabilities rather than performance. It constantly reminds the user about different options available. It employs all the available Windows controls, including even tabs and does not trade capabilities to readability, like Palm does.

Microsoft’s PocketPC screen design looks fancier, but consists of smaller, finer objects, that are sometimes difficult to orient in.


Screen zoning


PalmOS "realizes" that its screen is small and adapts itself accordingly. The screen is always zoned in only one dimension, either horizontal or vertical, but never in both of them.

Most of applications divide the screen into horizontal zones. This allows to visually separate header, main information area, and action buttons, usually placed at the bottom. Palm tries to keep no more than three zones simultaneously on the screen, though some applications may require more.


Pocket PC divides the screen into more zones than Palm does. Four zones constantly present on the screen:

  • Start icon/header/clock zone;
  • "Toolbar", showing categories or sort order;
  • Main information zone;
  • Menu/keyboard zone

The upper one is divided vertically into three others – start icon, app title and clock (or four when OK button is there).

When start menu appears, it splits the screen vertically into two parts. The start menu itself is zoned horizontally into four parts:

  • recently used apps (split vertically; up to 6 icons);
  • programs selected by user for display in start menu;
  • Programs/Settings region – constant;
  • Find/Help region – constant.

So many options and levels cumber locating necessary element, diffusing the viewer’s attention to different colorful objects on the screen.

Usability of the sync process

Both devices are usually synchronized using a cradle, which connects to either serial or USB port of the PC. Additional options of synchronization are listed in "Hardware options" section. Implementation of the sync process is different between two platforms.


In PalmOS, sync is based on "users". Each Palm device knows its user’s name, except the case when it was never synchronized before. Palm’s desktop software maintains its own list of users, unrelated to Windows/NT users. During sync process, the provided HotSync software matches username of the device with one of known usernames in its database. There are four cases possible:

  1. User corresponding to Palm device found on the PC (most regular case). In this case, HotSync backs up the device an synchronizes its data with the desktop using conduits that are set up for this user (see "concepts" about what it conduit);
  2. User corresponding to Palm device not found on the PC (for example, a new user with his Palm starts working on PC where he newer worked before). In this case, HotSync creates new "username" in Palm Desktop software and backs up the device. Now the owner can customize sync settings for the newly created user;
  3. Palm device is unnamed (never synchronized before), but PC has some users defined. In this case, HotSync pops up a dialog box asking which user has to be associated with the device. When user is selected, the device is backed up and synchronized with the user chosen. On subsequent syncs, Palm device already knows its name and the dialog no longer appears.
  4. Palm device is unnamed (never synchronized before), but PC has no users defined (for example, when a customer started using Palm device before installing desktop software). In this case, the dialog pops up like in case 3, but the customer has the only option to create a new user. When a new user is created, Palm device is backed up. The customer can customize sync settings for the new user. From now on, the device knows its name.

In any case, the device is backed up.

Palm Sync schema

These four cases are easily understandable and sufficient to cover all necessary operations. If the device must be transferred to different user, it must be

  • first: synchronized with the old user, the data will be automatically backed up;
  • second: re-set (now it forgets its user name and all data);
  • third: synchronized again. Desktop software will ask for a new user name and sync it with a user chosen.

Also, with this data flow there is no big tragedy if the device is lost or broken. All the information up until last sync is preserved. Any new device may replace a lost device after a single sync.

There is a certain risk that, theoretically, one may steal a boss’s info when an empty palm device is sync-ed with boss’s desktop. It is up to boss not to leave his PC logged in.

Palm’s HotSync software creates a directory tree on the disk where all data of all known PalmOS users are stored. This data structure is based only on files (no registry info), and therefore may be shared by several operating systems or even accessed concurrently through the network.


Sync process is implemented on PocketPC basing on "partnerships" rather than Palm’s "users". "Partnership" is an object in Windows’ class hierarchy that represents a link between this specific installation of OS and one given handheld PC.

  1. When a device is inserted into the cradle, ActiveSync first checks whether this device already has a "Partnership" on the desktop; If a partnership is found, it synchronizes the device using its settings;
  2. If a partnership is not found, user is asked whether this device is only "a guest" on this desktop or a partnership must be created;
  3. If user decides to create a partnership, then the device is named, backed up and synchronized with the user currently logged in. Later, the user is given an option to customize sync settings.
  4. Independently whether the device is "a partner" or just "a guest", it is displayed in "Mobile devices" folder. Customer then can "open" the device like any other folder and access its files. When an MS Office file is copied to or from the PocketPC device’s folder, it is automatically converted either to or from PocketPC format. Other files are left intact. User is also given an option to put files into "Synchronized files" folder and then the files will be synchronized automatically basing on modification date.

PocketPC sync schema

Unlike Palm’s "user" which may be represented as "Double-sided" (matching Palm user with desktop user), PocketPC’s "Partnership" is a "single-sided" object, meaning the other side of the sync is always a user currently logged in. This approach is OK in general, but it has one flaw:

  • when a device is inserted and user says this device is not just a guest, but rather wants a partnership, the device first thing synchronizes its data (mail, contacts, appointments) with currently logged in user. If somebody else used this device before, the data on device and on the desktop PC are inevitably mixed.

Of course, in most cases this is what user wants, because in most cases it the same user who used the PocketPC before. But, just for example, when the device is transferred from one employee to another and was not reset, then the data of the two employees are mixed both on the desktop and on the Pocket PC (and that’s what happened to me). With PalmOS, this would never happen, because named device would just create a different "user" on the desktop. Customer may just delete it later.

Starting & Performing Sync


Physically, the sync is performed by running HotSync program on Palm device. HotSync must be set up for the connection mode chosen.

Most cradles, cables and other devices that are used for sync have a special button that automatically invokes HotSync with necessary settings, removing the necessity of setting up the connection. Thus, HotSync button on a cradle automatically starts sync using serial port; HotSync button on a modem automatically synchronizes the device using the modem, etc. For more sophisticated cases like sync using LAN card or infrared, user must invoke HotSync manually.

Windows CE/PocketPC

User has many options for scheduling sync process:

  • User may start sync process manually by running a program either on PC or on Pocket PC side;
  • Sync process may be start automatically when the device is inserted into the cradle;
  • Sync may be done periodically;
  • For Microsoft Office objects (messages, appointments, etc), sync may be done instantly, i.e. when the device is in cradle, the records are synchronized immediately when they are changed. For instance, when you get a new message in the inbox, it is automatically transferred to PocketPC. When you create a new appointment on PocketPC, it is automatically transferred to Outlook.

Setting up Sync & Desktop Software


Setting up HotSync on a desktop PC is relatively simple in most cases. Using serial port (which is genuinely supported by all operating systems) removes any necessity to install drivers, make settings, etc. Customer just needs to plug the cradle cable into PC and install the software.

Some other cases require consciousness and understanding PC. For example,

  • in order to synchronize using Infrared port, user must be able to enable the port in BIOS and activate it in Windows. Windows will assign a serial (COM) port number to Infrared and this number must be entered into HotSync software;
  • USB connection is not supported in Windows NT; In Windows 95, user must install drivers for USB;
  • Infrared sync is currently not supported in Windows 2000, merely because Microsoft changed the Infrared work procedures in this OS comparing to earlier versions. We hope this will be resolved soon.

These two issues, however, deal more with Windows OS rather than with Palm. Some of them influence PocketPC, too.

PocketPC, Windows CE

Microsoft’s software for Windows CE/Pocket PC is currently called "ActiveSync", previously it was known as "Desktop Services for Windows CE". With the name change, the user interface was radically changed, too. "Desktop services" used to work as shell extension, only displaying an icon on systray. Unlike that, "ActiveSync" looks like an application; it opens a window resembling Palm’s HotSync.

"Desktop Services" aka "ActiveSync" uses modified Windows RAS (Remote Access Services) to communicate with the device. Installing this software on Windows NT causes several reboots and requires to re-install service packs.

Unlike Palm or Windows CE that tend to use serial port, most of PocketPCs work through USB interface. Therefore, Windows NT customers cannot use them directly and must upgrade to Windows 2000.

Installing ActiveSync for Jornada PocketPC was somewhat confusing. I did not succeed to install USB driver on Windows 98. I just could not understand what’s wrong, because all the settings looked OK, and I ended up synchronizing through Infrared.

In another case with Windows 2000 and USB, the computer was "frozen" each time the device was inserted into the cradle and required complete system restart. After restart, however, the device was synchronized without problems, until next time removed and re-inserted into the cradle.

I had no problems installing software for older NEC MobilePro 800, based on Windows CE.

I just installed "Desktop Services" version 2.0 on Windows NT and did all the necessary reboots. The device worked in a very stable manner using serial cable. The same device worked with no problems in Windows 98 using either serial cable or infrared.



Though PalmOS has ‘its own’ GUI, it is always easy to predict how the machine will react on certain action. This is what I call "highly intuitive". Normally, it is very easy to understand what a certain application can do and how to do it. The device is used for relatively simple tasks and therefore there are no complicate things in the device. It is always evident what a certain button does. For example, in "Task List" application, the "new" button evidently adds a new task; "details" button obviously shows details of the current task, etc.

Despite the small screen, most used buttons constantly present in the lower part. This is not only to make them more accessible, but also to notify the user about available options. Other options, not used so often, are in the menu, which is always opened by "menu" button. User can press the menu button and see what other options are there.

Frustration level is very low while working with the device. Sometimes a user may see limitations, but there is absolutely no uncertainty.

Windows CE

Windows CE intuitiveness is on a very good level, too. The software visually resembles Windows and this is very consistent throughout the GUI. The minor differences (such as removal of window headers and combining menu with toolbars in the same area) are easily perceived and understood.

There is a certain frustration in seeing Windows CE limitations. A typical Windows CE device has keyboard, PCMCIA slot and Internet Explorer, i.e. feels like any laptop. Despite that, one can’t download software from Internet directly. The software must be first downloaded to the desktop PC and then installed through serial cable using "Desktop Services" now known as "ActiveSync". User cannot exactly understand why did Microsoft made this device to be a "slave" of the desktop PC while it looks so independent.


PocketPC is the youngest OS and its intuitiveness is not as polished as on other platforms mentioned.

The attempt to fit all Windows concepts into tiny screen rises a lot of questions.

Making a button for each possible option would fill the screen with buttons. Therefore, everything on the PocketPC screen is dynamic and collapsible like furniture in a trailer. That’s why the user cannot clearly know what will happen if a certain option is chosen. This can only be understood by choosing each option and observing results.

Such uncertainty is met very often, for example:

  • one can’t know from the beginning, what a small arrow near the keyboard icon does (see screens above);
  • in task list, it is not clear which particular tools are in "tools" menu. It is also not clear whether "new" will act like a button (will create new task immediately) or it will open a menu.

On Palm, most important tools were always on the screen, less important were in menu. In PocketPC, all tools are on the screen (represented by their collapsed names), and therefore it is not clear which of them are important.

The level of frustration is very high throughout the work. This is not only because of uncertainty in menus and buttons. This is mostly because of unstable concept used in GUI design, demonstrated by the following examples:

  • The design is clearly derived from Windows. This is suggested by Start button, windows look, menu bars, etc.
  • However, in more and more places it doesn’t perform like Windows: it has no taskbar showing which applications run, applications can no longer be closed, desktop is only reachable from Start menu, etc.
  • More and more applications begin to visually resemble Palm: they have Palm-like lists, they hide file system activity, they return to same point on subsequent runs, etc.
  • However, they are still far from Palm, and, finally, Palm-like behavior may only help to former Palm users, while other users just get confused.

In other words, when you try to understand PocketPC, there is no strong base to start from. In some cases, neither Windows nor PalmOS experience can help the customer.

Understanding PocketPC requires a lot of experiments. While those experiments are fun for some people, others like strong persistent concept and predictability.

Stars: Usability

PalmOS Windows CE/PocketPC
+ Shorter, sharper messages to user

+ Better readability of the screen

+ Sync process is more understandable, more predictable

+ Finer fonts, more information on the screen

+ Instant sync while in cradle

  - GUI is not consistent; a lot of uncertainty

- Screen design flaws: keyboard overrides info, etc.

- Problems with USB drivers

- Bad support for Windows NT

- Big differences between versions


Software development


Software for PalmOS in most cases must be developed from scratch; rarely an existing application can be easily ported to Palm.

Palm offers the following tools to developers:

  • PalmOS Emulator – free software that emulates Palm hardware on the PC with debug options; Emulator only serves as hardware, while developers still need ROM images for specific OS. Vendors of Palm-compatible devices usually give ROM images for free upon signing an agreement with the developer; Images of beta versions of the OS are available for developers, too.
  • PalmOS SDK and documentation is available for registered developers for free.
  • Developers may get additional support for money. There are several level on partnerships with Palm, depending how strategic the partnership is for both parties;

Except tools and info from Palm & hardware vendors,

  • Free gcc compiler can be used.
  • There are plenty of commercial development tools available, including graphic development environments, application builders, different languages similar to Visual Basic, debuggers, screen form editors, etc.

Of course, Microsoft is the main source of info and tools when developing for PocketPC.

Most important Windows APIs are available for Windows CE/PocketPC, sometimes in limited form.

Regular MSDN library is used for reference. For each API or feature, MSDN articles explain differences or limitations on Windows CE/PocketPC.

Developers must use Windows CE edition of the Visual Studio package. The package allows compiling an application for Windows CE/PocketPC and testing it on PC in emulated environment (it is not an emulation of the device, this is just another compiler for PC with APIs redirected).

I am currently checking which third-party tools are available for Windows CE development and what do they offer.

On the market

Major Players

PalmOS is currently licensed to nine manufacturers:
  • Palm, Inc – a 3Com daughter company producing several lines of ‘genuine’ Palm devices;
  • Handspring – a company created by former Palm workers, who produce a highly popular series of PalmOS-based Visor PDAs; Visors come in different forms and colors, some have expansion slots;
  • IBM;
  • Sony – produces multimedia-enabled CLIE series;
  • HandEra, formerly TRG – privately owned company who made flash memory design for Palm; Currently this company is famous by their PalmOS-based devices with industry-standard Compact Flash slot, formerly only met in PocketPC;

and several mobile phones makers

PocketPC is licensed to four manufacturers; among them are Compaq with its iPaq, HP with Jornada and Casio with Cassiopea.

Also, HP, NEC and IBM produce Windows CE-based devices (with keyboards).

Traditional computer manufacturers naturally tend to PocketPC rather than to Palm. It might be that Microsoft pushes them.

As PocketPC users in most cases need extra memory modules, this might attract hardware manufacturers to support PocketPC, expecting future sales of Compact Flash cards. Built-in multimedia features of PocketPC may stimulate users to exchange audio files on CF cards, too.

Cost of ownership

Quick scanning of the market shows that all in all, PalmOS devices are cheaper in general, though that depends on device’s application and work cycle.

The following table shows number of models and average price of PalmOS and PocketPC devices available at a given day on CNET’s


No. of Models

Average price







This is more or less the reality.

Except the price of the device itself, the following factors influence TCO:

  1. PocketPC will likely require a memory expansion, even though it has more memory from the beginning. An absolute majority of PocketPC users buy a compact flash card to extend the memory of the device;
  2. Proprietary accessories for Palm or Visor cost a little bit more than similar accessories for PocketPC, because latter are industry-standard;
  3. PocketPC applications are normally more expensive than Palm’s. Most of PocketPC applications are commercial, while most Palm’s applications are shareware. Vast majority of Palm applications are below $20; In general (according to my observation), there are more freeware products for Palm than for PocketPC;
  4. PocketPC comes with Office applications (Word, Excel) and has built-in support for synchronization with Outlook. Palm does not have word processor or spreadsheet built in, and has its own desktop organizer. This fact may impact on customer differently:

The initial difference in prices of the device is so big, that even with its more expensive accessories the Palm solution is cheaper than PocketPC.

Tips for choosing device

While browsing many PDA-selling sites in the Internet, I made some observations that might be interesting and even useful when deciding to purchase a PDA. Look for the following simple rules, listed in order of importance:

  1. First decide about the application, then about the platform. Neither Palm’s simplicity nor PocketPC’s power will help you if there is no application that can efficiently do the work for you;
  2. You must know that you most likely will not change the platform. According to user opinions in the web, most cases when users migrated from Palm to PocketPC or vice versa ended in frustration and returns. Once accustomed to one platform, the other one will always seem ‘wrong’ to you. I read some dozens of user stories when a customer changed a platform because of great features of another platform and finally came back, after weeks (days, months) of struggling and frustration. Even lack of a single checkbox may alternate the data flow in such a radical manner that it will no longer be efficient;
  3. Once you know your application and decided about the platform, think about hardware features & accessories. As a rule, a built-in feature is always cheaper than an addition.
  4. Carefully think about battery life. Rechargeable batteries would require charging daily for PocketPC, once in two days for color Palm, once in 4-5 days for monochrome Palm. Alkaline single use batteries may keep monochrome Palm running for several weeks, up to two months. If you plan long travels, this becomes an important factor. Fully charged HP Jornada, for example, does not survive a flight from Tokyo to London.

Most important recommendation: disregard reviews on seller’s sites!

The main goal of those reviews is to evenly sell all the models they have in stock. Therefore they use different tricks to manipulate users opinion, exaggerating importance of some features and hiding others.

Recommended "reading" when choosing a model is as follows:

Do not hesitate to contact users. If a person posts comments about a device and puts his email address on a web site, that means, (s)he anticipates a feedback. I regularly answer dozens of questions regarding D700 digital camera. That’s OK.

Palm-specific notes

Most of Palm devices are essentially the same computer with exactly the same features set and GUI look. Therefore, you cannot make a big error when choosing a Palm device, unless you choose a very old discontinued model.

Differences are usually in body design, screen quality, and battery type. Sometimes vendors make bundled sets of a Palm device with some popular software.

A regular Palm device costs between $200 and $300 and has the latest version of OS and 8 MB of RAM (this is the current maximum).

More expensive devices normally have a certain feature that moves them out of the row, for example:

  • A line of Palm’s handhelds equipped with built-in wireless modem;
  • Palm’s M500 series – for its expansion slot;
  • Sony CLIE (around $300 for monochrome and around $500 for color version) – because of high resolution, Memory Stick support, MP3 sound;
  • Handera 330 (around $350) – for its unique non-square high-resolution screen, CompactFlash and SD card support, sound recording.

Palms that cost far below $200 are usually old models with less memory and older version of OS.

PocketPC-specific notes

PocketPC devices normally cost $500+, mostly because of high-resolution color screen. Some monochrome models, like Casio’s Cassiopeia, are cheaper. PocketPC devices may have different amount of memory and different number of colors shown simultaneously (sometimes called "color depth"). They can also have different body design, and several input options.

What’s also important, is that PocketPC’s Windows is customizable in more directions than Palm. Vendors may change GUI look, add application to Windows itself or even change behavior of some built-in programs. Therefore, choosing a PocketPC requires thorough examination of features and usability of the specific device.


Last modified: Oct 19, 2001.

Copyright 2001 Gennady Meergus