Half a Baby Step  

By Bill Burcham under First they ignore you.., AJAX, microformats, Web as platform on 02. November 2005

David Janes and friends over at microformats.org have written an inspiring greasemonkey script that will find microformat structures on web pages. They include some links to pages with hCard and xFolk content.

When content in a supported microformat is encountered on a page, the script embeds a visual indicator like this one for hCard David Janes' hCard indicator which when clicked produces a context menu. The functions on on the context menu depend upon the microformat. The menu for an hCard includes an “add to address book” item that will invoke Microsoft Outlook to create a contact.

Perhaps the most interesting thing though, is the menu item to map the vCard address with Google Maps. How many times per week do you grovel around the web for some physical coordinates only to then select-copy-paste into the browser search box, the first line of the address, then select-cut-copy-paste the second line in order to generate a map page? The “show on Google Maps” item does it all in one swell foop, taking you directly to the map!

dschud’s COinS-PMH shares with microformats the ability to embed into a static page, sufficient metadata and structure, to support extended processing without any need to re-invoke the web application that produced the content. But what does “extended processing” mean in this context? It means doing something with that content that the originator could not foresee. In the case of the microformats example it means a greasemonkey script. In the case of COinS-PMH the primary example is a “hacked ‘COinS Details’ sidebar”.

So repurposing content, conveniently, in ways unforeseen by its originator is what its all about. The greasemonkey script and the sidebar provide a glimpse of what’s in store. How much unforeseen functionality do the browser add-ons really provide though? In terms of scalability of functionality, should we expect the plug-ins to keep growing to encompass more functionality? For instance, should the hCard script grow to support mash-ups with more web applications beyond Google Maps? How about adding a function to send hCard holder a gift from Amazon?

The beauty of the hCard-Google-Map-mashup-script is that it didn’t require Google’s web app to understand hCard. The script-mashup did the translation. But that translation is at the heart of the scalability shortcoming. If the script has to contain mappings from each microformat to each way I want to use content conformant to that microformat then the opportunity for explosive functionality growth is missed. If on the other hand, the target web application understood the microformat in question, and we had a way to feed the target app conformant content then the scalability bottleneck would be broken. The wheels would be greased.

In a previous post I proposed the notion of a web app clipboard. The basic idea was that AJAX could be used to request content from a source application. The content would land on the operating system clipboard in a simple format (the web app clipboard format) and could then be transmitted to a destination application. Now I’m thinking that the original proposal was overbold. As Ryan Tomayko intimated, there ought to be a way to marry the microformats approach with the web app clipboard. Perhaps its profitable to think initially in terms of the source content being scraped directly off the page, without requiring the additional request to the sourcing web app. We’ve got that functionality in hand. With that in hand we could focus on the other side of the equation — where to send the content. The effect would be that we would no longer have to create both producing and consuming applications — we could start with just consuming ones. Anything that increases the likelihood that two web apps will communicate is a Good Thing. I’m with Phil Bogle and others who’ve pointed out that we need to bootstrap by finding those first two applications.

If a menu item called “copy” was added to the hCard context menu of the greasemonkey script, and that item caused the hCard to land on the operating system clipboard in a simple standard format, then it would just be a question of where the content could be pasted. Then our task is reduced to inducing a few web apps to support the paste action. A really simple first approach to paste support doesn’t even require XMLHttpRequest at all. A receiving web app could simply provide a text box wired to understand the web app clipboard format wrapping an hCard for instance. Paste into a text box works “out of the box” with all browsers. It’s not all that elegant, but it would work.

Giving microformats a place to go (destination applications) and a simple way to get there (the web app clipboard) will break a key bottleneck hindering broad interoperability.

5 Responses to “Half a Baby Step”

  1. Paul Boddie:

    I’ve been playing with (and packaging for Ubuntu) my brother’s kpartplugins package [1] and have an elementary hCalendar plug-in for Konqueror which scans the current page for events and brings up a list of them for export to a .ics file. All that’s necessary now is to get the PyKDE dependencies sorted out [2] for easy installation and possibly find out why it’s so easy to crash KOrganizer with a seemingly correct .ics file. Sending events directly to KOrganizer would be nice if only it had a decent DCOP interface…

    [1] http://www.boddie.org.uk/david/Projects/Python/KDE/index.html
    [2] http://packages.ubuntu.com/

    comment at 03. November 2005

  2. inkdroid » a citation microformat - when worlds collide:

    […] Tim White has taken the time to prod the microformats list about the citation microformat that’s been floating around for a few months. It’s really encouraging that a developer at Gale is thinking of using a citation microformat. While I also work in the industry I’ve been coming at the citation microformat from a slightly different angle. For the past few months I’ve been monitoring activity in microformat land and also in another group and I’ve been watching them slowly come together. Recently, Bill Burcham’s Baby Steps to Synergistic Web Apps and Half a Baby Step confirmed my hunch that the two communities were converging. […]

    pingback at 03. November 2005

  3. dchud:

    You’re selling the model short to consider the original proposal overbold… it was dead on!

    Fwiw the coins sidebar thingy is now just an HTML sidebar injected via GM, not an extension, and there are working demos of COinS-PMH for Flickr, Amazon, arxiv.org, wordpress, and some American Memory collections from the U.S. Library of Congress referenced from here.

    You’re also right that now it’s time to put this data somewhere interesting. Some folks were discussing connecting from ffx to the OS clipboard in #code4lib today, though I’m not sure how far they got.


    comment at 15. November 2005

  4. Raymond Yee:

    I’m one of those folks (mentioned by Dan in the previous post) who are interested in moving datab between the Firefox browser and the OS clipboard. I’ve made some progress which I’ll document on my blog. Basically, I have Win32 specific code that will copy HTML from the clipboard and send it to my blogs. I’ve been looking for cross-platform approaches for moving data between the browser and the OS clipboard, preferably in Python. My experiments with wxPython (wx.Clipboard) have failed so far. I did manage to write some Java/Jython code that seems to work…again, I post on my blog.

    At any rate, I hope that we can work together to make universal copy and paste (between OS platforms, between web apps and desktop apps) a reality.

    comment at 17. November 2005

  5. Ray Ozzie Got the Memo:

    […] On March 7, in his talk at the O‚ÄôReilly Emerging Technology Conference, Ray Ozzie, CTO Microsoft, demonstrated (short screencasts, live demo page) a method by which users can cut/copy/paste structured content between web applications and between web applications and Windows ones. Alert lesscode readers will notice that Ray’s blog post describing his inspiration and motivation for the idea bears a striking resemblance to my own post from last October.  A deeper look at the screencasts, the live demo and the technical introduction remove any doubt that what Ray demonstrated, and in fact what Microsoft is offering under the Creative Commons Attribution-Share Alike license (you heard me right) is in fact the Web Application Clipboard as described in that original lesscode post and followup. This is in no way meant to diminish the Microsoft folks’ brilliant implementation. The portable trick used to actually hook the browser’s built-in cut/copy/paste functionality is inspired.  The design tradeoff resulting in a visible representation (scissors icon) of every clipboard-capable element is all their own, and quite frankly, is probably a necessary tradeoff if the Web Application Clipboard is to actually get traction.  There’s a more technical analysis posted posted on my personal personal blog, but the executive summary is:Live Clipboard (Microsoft’s name for Web Application Clipboard) is awesome and I believe sites will adopt it. I wish the name weren’t “infected” with the Windows Live brand but that won’t matter a whole lot so long as the specification is good and open. Right now though I can’t find any specification at all but I’m keeping hope alive on that front anyway (you listening Gandi? MLK?)What I find more interesting than that technical stuff though is the amount of mindshare this thing got “all of a sudden”. First off, note that Ray’s March 7 blog post on this subject comprises the only thing he’s blogged since the end of January.  A whole month of the Microsoft CTO’s time — how many dog-years is that?  Now realize that the good guys over at the Gillmor Gang podcast spent a full 48 minutes on this single topic on March 16 (Ozzie Gang I, Ozzie Gang II), most of which was spent interviewing Ray Ozzie himself.  They were downright effusive. From Ozzie Gang II:Mike Arrington 4:45“Does this signify any sort of shift organization where people in microsoft who have ideas that can help the Web … that they can also get things through the politics and through the system fast enough so it doesn’t take and years?”John Udell 17:52“Ray this is great.  I just personally want to thank you for doing it.  I think it’s a tremendous step.”Steve Gillmor 17:57“Yeah, and I think that everybody is knocked out that somebody with your intuition is in such a powerful position at Microsoft.  You know, bringing Microsoft into the community has been very difficult to do and you seem to be doing it.”Dan Farber 18:31“I think as everybody on this call has said, we’re quite impressed with this very simple little notion that seems to be well executed and that it comes from Microsoft now really injecting itself into the big old Web community.  It’s cool!”Dan Farber 19:13“If you go to the desktop and you consider cut and paste, copy and paste, you know it’s everywhere… to be able to do that on the web… it’s like a big gift — it’s a contribution to the Web”Mike Arrington 22:18“I think the big story here is that  we’re starting to see with Ray’s leadership that Microsoft is able to do things that seem selfless and simply good for their own sake and SSE is one example and (Live Clipboard) is another stunning example…”Steve Gillmor 24:05“I think that Microsoft may well be on the threshold, whether they fully realize it or not at all levels of the organization, of winning by accepting a part in the community, and I think that’s a huge story.”Strange and wonderful times indeed. […]

    pingback at 22. March 2006

Leave a Reply

Note: None of this information is required but leaving a Name and URL is much appreciated. You can also register to have this stuff remembered.

Your comment can be previewed here.

Markdown: use the force, Luke.