With all this talk about cloud computing and data in the cloud, I find it interesting that one of the most advanced implementations of data handling seen on a mobile device seems to have been left as a footnote in a technological dead end (or at least it will be a dead end until a certain event this Wednesday...) Apple's Newton Messaging Pad, launched to the public in 1993, dispensed with a traditional file system and went with a massive bundle of flat file databases to store information.
Any application could access these databases, and each app had different permissions to this information (read/write or read only), but what was common was that all the data was pooled, it was communal, and it created a holistic view of your information. Your info was your info, no matter what application made it, or edited it, or needed it. There was no need to link a birthday in the diary app to a name in the contacts app to an attachment in a to-do list – it was all in the soup. Yes, you had to add the info yourself, but once added, each app took what it needed.
Plus it was open to third party applications as well.
Apple Newton 120, pic by Jared Earle.
At the time, this was a different way of storing data, and was part of Apple's goal of re-inventing computing with the Newton. While it didn't catch on, I've been wondering just how useful it would be in a modern operating system... perhaps even in a later version of Symbian?
From a practical point of view, it would mean re-writing a lot of code. Applications already have well established stores of information and paradigms on how they read and write to the disk; these would have to be changed at a fundamental level, and there would be some pain both in the underlying OS re-coding, but also in third party applications.
Now hold on, do we need all this? Should you be getting misty eyed over soup? Well no, because we have this little trick called the API.
One program can already talk to another program through code – the use of Application Programming Interfaces has been something that the modern web has brought to the fore. The idea that an app on your phone can ask Facebook (for example) for the data that would normally be shown on your profile screen, and then show you that data in the application is incredibly powerful. Gravity, the Twitter client so beloved by many S60 users, is built around interacting with Twitter's database through their API.
Not only is this functionality identical to the 'soup' in the Newton, it goes much further in terms of implementation and impact. You don't need to stick to a common format flat field database as the soups did, you can access data at a granular level, you can pass it round into apps and areas the original designers never intended, and, most importantly, the API allows the data to flow not just around your computer, but to and from your computer to the internet.
Pick up a modern handset and you can see the effects of this. The Lifecasting add-on to Ovi Maps is built around an API to Facebook. Ovi Maps itself has an API and the idea of a huge number of innovative “Apps on Maps” is something this can deliver; your contacts app has a tab for Ovi Contacts; the Nokia Music Store lets you download on a handset, but in addition the PC version knows this and can also download (or sync) the music back to your desktop; dig just a little and you can see data being shared around applications wherever you look.
More and more applications on the handset are going to blur the line between a standalone app and a view on your (online and offline) data. Palm's Web OS touted their address book as being social, as it pulled in information on your contacts from a variety of online sources – expect this 'unified address book' to be something that appears on most mobiles over the next year or so, but realise that this is only the first step.
Our data is becoming increasingly de-coupled from applications and the restrictions placed upon them when left in a single device. It's starting to work for us, making connections, and continues to place the smartphone at the centre of your world. And this has grown organically over the years to the point where it is expected of any new web service or device SDK. It wasn't one company cheerleading the idea, it was the entire industry (users and developers) moving forward that made this happen. Revolutionary ideas are all well and good, but you need an army to back it up.
-- Ewan Spence, Jan 2010.