The big software merge : a distributed data and metadata namespace (anything left?)
Nowadays peer to peer applications are powerful from the viewpoint of the 90's we. But I guess that the confluence of p2p with a growing trend of the web is going to make this a killer app that will transform the computing world as we know it. Think AJAX. It is a great technique, and you might think it is a slick and handy presentation. or a bad programming concept. Traditionnal apps present data. AJAX through its slick presentation enables to expose not just data but the data model as well. Think of those Gmail pages where you enter a new contact easily. or that dynamic autocompletion feature you like. The point is, you're not just entering strings, you are entering a contact. that is precisely what is a datamodel. You write an email, that field must be a contact. So those nice gmail guy's help you with entering a contact. Now what is the link with p2p? Well, precisely, the datamodel, or its current lack of it. Currently, raw data is exchanged, with an embryonnic, altavista like, search facility. Beside the technical prowess of distributing download, the p1p story from a functionnal perspective sounds like : Some people have stuff stored. You can download them. Which to me sounds like a very static web era story. Now if you add to this story the trend that I discerned in AJAX, you can replace that story with
- Some people have stuff stored ----> Some namespaces are published, aka "MyNeighbourTom", wich contains stuff "StartrekMovie"
- stuff ---> this stuff is actually object whose data model is transmitted : MyNeighbour.StartrekMovie.BitRate for instance
- I download it ---> I can of course still download it, or perform actions on those like MyNeighbour.ThisDocument.Print.
- Furthermor, as you know the data model of your query, a computer can interpret that itself independantly of the actual action transmitted. for instance building up a common portal between friends exposing all the music we have.