LiveClipboard: Wiring web and desktop apps together
Ray Ozzie is doing some thinking on how to wire services together on the web. His post has a bunch of screencasts (beware of the boring pace and marketing babble ;-) and an online prototype. He also talked about it in his presentation at ETech: "Simple Bridge Building" (transcript).
He has an interesting take on the problem I explored in my "Open-ended links, link re-writing, and rich but loose service integration" post.
The key insight of his approach is to let the users themselves do the wiring between services, thru the copy&paste operation. He uses the clipboard as an intermediary and standard microformats as a shared language.
He calls it the "Live Clipboard".
In comparison, the "open-ended links" concept also relied on sending a structured piece of data between services, but it required the browser to handle and route the data to the right service.
The clipboard user model is interesting because it makes the connection explicit. The user copies a blob in one page, from one service, and pastes it in a specific location in a page from another service.
One-click subscription:Ray spends some time on the clicksub problem. He screencasts how the Live Clipboard could be used as an "Improved Weblog Subscription Method", but it's not very convincing. It has usability issues, simply requiring too many clicks, just like the original orange XML button did. It's like having to do a copy and paste to start an email from a mailto: link (but then again, mailto: links don't work too well with online email services neither).
Copying and pasting blobs of data between pages definitely offers more power and added flexibility, but in some scenarios that should be super simple, it's too tedious.
In the feed subscription user case, it makes more sense to let the browser do some of the wiring.
The context menu on a "subscription" blob, could list some actions already understood by the browser, in addition to the copy and paste operation.
One of the actions for a blob of this format would be "subscribe with
RSS for live updates:Also worth noticing in the demos is the use of RSS references as part of some microformats. Such pieces of data can be copied by value, but the feed can be used as a reference to pull the latest update for that value.
Bridging the web and the desktop:The last concept that is demonstrated is that of a desktop service that would monitor the clipboard, convert any recognized microformat into formats understandable by desktop applications.
For example, one screencast shows how you could copy an hCal blob on a web page, let the application transform it into an iCal format, and paste it in Outlook (which understand iCal but not hCal).
Closing thoughts:The Live Clipboard is just an additional way of passing microformatted data around, although not the most usable way in some scenarios (clicksub).
Compared to the open-ended links approach, the clipboard approach has the advantage of probably not requiring any browser change and solving some authentication issues (some security concerns remain). On the other hand, it requires more code on the pages that can handle these operations.
The common infrastructure is what is really important here: microformats.
Like David Janes, I hope that Ray and his team will give the credits due to the microformats community.
In any case, I'm curious to see where this goes. And I certainly hope that a microformat is created to identify locations of a page that support this functionality, so that we can hook and extend these easily with Greasemonkey scripts ;-)