4 ms·
These days it's fashionable to say that your database is not an app integration interface, but imo Palm OS did this right. Having a single, omnipresent DB with
by sirtaj 2y ago
These days it's fashionable to say that your database is not an app integration interface, but imo Palm OS did this right. Having a single, omnipresent DB with published schema for important PIM databases was a pretty great thing for apps operating on common data, or just structured data in general.
It's taken sqlite's ubiquity for the benefits of an always-available platform DBMS to become well-known again, but the common tables paradigm has only come back in an ad-hoc way (eg addressbook and calendar in Android).
- Apocryphon 2y agoI'm a bit disappointed that this discussion thread has mostly been about nostalgia (which is great) and not the technical details TFA brings up. Really curious about the "everything is a database" concept and how it contrasts with other operating systems. Based on the article it sounds like the choice to design Palm OS like that was because of "strongly influenced by the classic Mac OS," and for "computing memory consumption"?
- sirtaj 2y agoThe "everything is a database" took two forms. First, apps had no filesystem available, only a database which they could use as a datastore. It was not a particularly powerful or fancy database, everything had to be done via the C++ API rather than a query language IIRC. But it simplified app development quite a bit and made the apps smaller and more robust. Second, there was a set of common tables available to all apps that provided the basic PIM data, including addresses, calendar, todo, email and notes. This meant that third party apps could safely interoperate with this data alongside the builtin apps and extend functionality.
- kalleboo 2y agoIt was also pretty cool how they included the original versions of all the built-in PIM apps as sample code in their SDK. It meant that there was a huge amount of "Datebook+" or "Memos+" type apps that was just the built-in app plus some handy features the developer wanted themselves, without the developer having to re-invent the wheel (culminating in some fantastic advanced apps like Datebk4)