There continues to be an interest in synchronizing the HP Appointment Book, ToDo list, PhoneBook, and NoteTaker files with the corresponding applications in Microsoft's Outlook 97/98. Although some Palmtop users decry the use of Windows PIMs, others do not have that option. Their company mandates that they use MS Outlook for all appointments, tasks and contacts. For these people synchronization means they can keep their Palmtops and not have to switch to a WinCE machine.
What Most Users Want
Here are the specifications for a program to synchronize data between the Palmtop and MS Outlook.
The output for the ideal synchronizing program will be two sets of files: one for the Palmtop and the other for use with MS Outlook. Both sets of files will have the same number of records. The records in the MS Outlook files will contain all the fields while the records for the Palmtop files will have far fewer fields. The input for the program will consist of one or more data files from the Palmtop and the corresponding data files from Outlook. The program should allow the user to select whether to synchronize all files at once or to use only an Appointment Book and/or PhoneBook file now and other files later.
The synchronizing program should be a stand-alone program that does not require the use of other data conversion programs. It should be a Windows program that runs on a desktop or laptop computer.
Complete synchronization involves solving two classic computing problems, namely, data-conversion and record-conflict-resolution. Here are the specifications for each of these problems.
Data-Conversion
Given that the number of fields in an Outlook application exceeds those in an HP application and given that the fields may also have different names and different formats, the data-conversion program should provide a default mapping of fields from MS Outlook to the Palmtop's applications. The program should also let the user override the default. Extra fields from the MS Outlook data should be retained.
Ideally the field mapping should be done in the computer's memory and should not require the use of intermediate files. However, handling records with large Notes fields may require the use of intermediate files on disk.
Record-Conflict-Resolution
Once the data has been converted to a common data structure it can be processed to prepare it for the next step: record-conflict resolution. The program should detect records that have no conflict and those that do.
No-conflict (identical) records will consist of those in which all fields, common to both the Palmtop and Outlook, match perfectly. These records will be written to the two sets of master files.
No-conflict (new) records will be those in which no fields match. These records will be sent to the two sets of master files. For the case in which a record has been deleted on one platform but not the other, there must be some way to detect and deal with this.
Conflicting records will be those in which some fields match and some fields do not. For example two appointment records may have the same date and time but different descriptions. To further refine the matching of time fields, the program should detect overlapping time fields. Thus two appointment records would conflict if a second appointment appears to start while a first appointment is still in progress.
The user should be presented with the two conflicting records and asked to decide which one to keep and which one to discard. A further refinement would be to allow the user to edit individual fields in the final record before it is written to the set of new master files.
Admittedly, the user will spend a lot of time dealing with conflict resolution the first time he or she runs the program. Subsequent, daily running of the program will be less of a hassle.
The complete synchronization program continues to elude programmers who have tackled the problem.