One of the most frustrating things about mobile computing is that although the hardware is highly portable, the data isnt. ThinAirApps Inc.s Identicon DB 1.0 server and client libraries, released last month, help database data stay as mobile as corporate users are.
In eWeek Labs tests, we were able to build and deploy real client/server database applications to Palm OS-based personal digital assistants that provided the same kind of real-time access employees are used to on desktop systems.
The main negative we found—that the software has poor support for users out of the coverage range—suggests that its best fit would be for workers who stay in or around the corporate campus.
The high cost of cellular data connectivity might also be an issue because Identicon DB-based software requires nearly constant network connectivity. However, this program makes possible a new kind of well-connected mobile application that many will find compelling.
The problem is that mobile employees carrying corporate applications around on their waists often have to make do with stale data stored locally, getting an up-to-date picture of key information only when they synchronize data using a hardware cradle at their desks.
For some types of applications, such as a product catalog, drug reference database or phone list, occasional data updates are fine. However, applications such as online ordering or system monitoring need to be much more tightly coupled to the data on back-end servers so they dont provide wrong information. Of course, real-time access is best and is what people get when using their desktop PCs.
Identicon DB will initially be available only in a Visual Basic version (its designed to be used with AppForge Inc.s slick AppForge Visual Basic-based Palm development tool), although versions for Windows CE, Java2 Mobile Edition and Research In Motion Ltd. pager systems are planned for later this year. The software costs start at a fairly high $25,000, and the software has client and server components. Unfortunately, there are no server administration tools.
The client components communicate with the server using either HTTP or HTTP with Secure Sockets Layer support. The server itself acts as a database access proxy for the client and can access all the main databases using its included Java Database Connectivity drivers.
After installing AppForge and Identicon DB components on a server, we could write normal AppForge programs that called Identicon DB components. Identicon DB provides three basic sets of functions that initialize database connections, submit queries and updates, and retrieve data from data result sets. It can submit queries in normal SQL syntax or call stored procedures.
Using the libraries to query data in a Microsoft Corp. SQL Server 2000 database and displaying those results using AppForges graphical controls was straightforward, and the Identicon DB programming interfaces will be easy to learn for anyone who is used to Visual Basic.
We did our testing using a Handspring Inc. Visor Deluxe and a Xircom Inc. SpringPort 802.11b wireless Ethernet card (as well as just enough of Palms emulator to get a picture of the software; see screen, Page 46). Wireless LANs are a perfect match for Identicon DB because they are fast and free and users are likely to always be within range.
Identicon DB lacks any built-in support for result-set caching, so users are out of luck when out of range. A sample program does demonstrate how to cache database data to a local Palm database, but it would be great if, in a future release, ThinAirApps provided a local mini-database object that either passed queries through or responded to them itself using its local cache, depending on whether or not the user had network connectivity. Sybase Inc., IBM, Microsoft and Oracle Corp. all make synchronization-oriented databases that run on PDAs.