2006-02-08

coComment: a new contender in the two-way web

The two way conversation web just got a new player, after the ad hoc comment blogging hack piggybacking atop Del.icio.us as a public data repository backend, Commentosphere doing the same with a more custom crafted Ning playground backend and allowing for a bit more semantical data stored about comment threading.

Where these hacks have largely been a manual business for the end user, but which works across the entire web, coComment has gone the other way about it, and covers only a select few blogging platforms, presumably growing over time.

My own approach landed somewhere in the middle ground between these routes, starting from the manual though deadly precise Del.icio.us comment blogging style, partially automating the process for Blogger blogs with a Greasemonkey hack of mine. I did not move on to cover other platforms, largely due to a lack of ambition combined with my high expectations about getting good permalinks, to the very anchor of my comments -- so I can easily find and link to the spot on a page where I wrote something.

In this respect, coComment does not go as far -- it presently only picks up the comments you write and tie them to you, integrating the data with a few services for syndication and the like from their own site, where you can also track conversations by other members running the same system, and blogs where the blog owner has crafted his comment form to also run incoming messages by the coComment repository. There are lots of plans and high hopes about the kind of things we will be able to do with the coComment site and it's data, though, and they seem set on extending their coverage to a larger platform set, and involving external contributors who want to take part in helping this thing fly. An excellent combination.

At the coComment base site, the service is rather similar to off-site comment layering frameworks such as Hoodwink (where comments never actually touch a destination blog, though, but rather hang somewhere on a side server for people who opt in on the comment network's data only). Members may browse the site, fetch RSS feeds for their comments or those of other members. At present, these feeds are not as customizable as those of i e Hoodwink, though, where you may browse by any combination of blog, comment author and discussions where a particular author has taken part. They unfortunately only store (or present, at least) comment text though, so any links and similar HTML features of your comments are shaved off at the moment. I suppose it's time I head over to their feedback pages to share some user input.

To become a member in the beta program, you need to ask for a code to be let in, but said code is at least now sent out within a few days of your asking for it, so the hurdle isn't very high to leap.

Technically, the coComment implement their service using the cross browser, though laborious way of the browser bookmarklet. Brian Benzinger, apparently sharing my belief in automation through user scripts, made a Greasemonkey script for automatically injecting the coComment hookup code on blogs supported by coComment at the time. Not quite happy about a script I'd have to update (and find out when to update) manually as soon as coComment added another service (in the short time since he wrote it, they seem to have covered Flickr too), I cooked my own, which updates itself daily from coComment (userscripts.org entry).

It detects injectable pages the same way the bookmarklet injection code does (using the same ruleset as found in today's version of the injected code), but it appears it might need tightening up a bit not to inject on all pages matching those criterias -- the common Blogger post editor seems to be recognized as a comment posting facility, too. It will be interesting to see whether this post shows up in the system or not.

I just tailored my user script to exclude the blog editor from processing, just to be on the safe side, even though coComment did not actually seem to pick up anything on my posting this entry. Feel free to give a shout if there are any other pages on other blogging systems where I ought to do the same thing, by the way. Don't forget to include the full URL(s), so I can update the script accordingly.

And to coComment: feel free to use and promote this script for your user base. It works with Firefox, does not work with Opera (since Opera does not implement any persistent user script storage such as that offered by Greasemonkey's GM_setValue / GM_getValue), and it might work with Internet Explorer running Reify Turnabout. Installation is about as easy as the bookmarklet installation, the work on your part is as low, and running it is trivial, beyond even needing documentation.

25 comments:

  1. Yay! I like better scripts! For now I'm dual-posting to coComment and Commentosphere, but hopefully they'll add some of the nicer syndication features soon. They seem to be very open to user input (hey, that's the point of beta, right?).

    It's interesting to note that the coComment people have said they definately plan to make it possible to manually add comments from unsupported services (similar to the way all comments must be added to Commentosphere, I would assume), but again, this could be tomorrow or next year, always hard to tell with these things.

    ReplyDelete
  2. Great idea! thought I can't get it to work with firefox 1.5

    ReplyDelete
  3. It should probably not need stating, but it will hardly work on any pages on which the upstreams bookmarklet does not work, such as Blogger blogs that use the popup comments feature. Otherwise it should work on all Greasemonkey enabled Firefox 1.5+ browsers, after having installed it and verified that it shows up in the Greasemonkey icon context list (named "coComment automatic invocation").

    If you find that is not the case for you, provide specific details (URL, what happens and what you expected should have happened instead), and I will see to what I can do about it.

    ReplyDelete
  4. Thanks for this script, look great.
    We might even have a way to make the script even more useful. We are currently working on some way to more easily manage such things.
    I don't know the capabilities of Greasemonkey, thus I might be wrong. Would you be able to store our script for use in several pages without having it to reload each time? If this is the case, we could use our existing method (cocomment_detectBlog) to check if this is a page with a cocomment supported blog. Currently this would have undesired side effects (login screen, alerts stating that the page is not supported and the like), but we are currently working to suppress that. Would that help you?

    ReplyDelete
  5. Greasemonkey scripts have something in-between page and chrome privileges; you can do XMLHttpRequests to any domain and you can store persistent data in the browser config so it's certainly possible to store the entire script and inject it without fetching it from your servers any more frequently than you would want it to refresh itself. My script uses the same approach your cocomment_detectBlog did, though I cleaned up the code somewhat.

    I believe neither the bookmarklet or user script will reload the script from your servers very often if you put proper HTTP headers for cache control on it stating its cache:ability, so the useragent may keep its cached version rather than refetching it every time it loads a comment page.

    ReplyDelete
  6. Hey, that's very handy, thanks! Now I don't have to remember to click that bookmarklet all the time.

    ReplyDelete
  7. Thanks, I just traded Brian's script for yours. It will probably eliminate the extra click in Flickr, and I hear Serendipity is now supported.

    ReplyDelete
  8. Congrats on the link-love from Solution Watch. Very cool!! Will switch scripts in the morning.

    ReplyDelete
  9. I've lost count of the number of times I've forgotten to click my cocomment button before leaving a comment. I kept thinking there must be a way to automate the thing.

    You're a legend for creating one!

    Rich

    ReplyDelete
  10. Just because of your script I have installed Greasemonkey. I don't know why but I had problems to install scripts through the context menu. I had to click on the link to the js file and then I told GM to install it via the Extras menu. That worked.

    ReplyDelete
  11. I might have opted to do that if it was a tool for a service of my own, and I really really wanted to make it available as easily as possible to as many as possible.

    As this isn't the case and as I believe installing anything but the minimum number of extensions is generally a bad idea, I won't, though. But feel free.

    ReplyDelete
  12. Hey, excellent script, the automating idea is quite innovvative, I must say....

    But one more thing, now that coComment has introduced Tagging, why don't you add an extra box called Tags to this script.

    ReplyDelete
  13. Because it's been available there ever since the coComment people implemented the feature; just click the coComment logo, and the form pops up, Tags field and all.

    (And no, you don't have to update your user scripts; it's the same code that runs this today as the day I wrote it.)

    ReplyDelete
  14. No john you didn't understand.. What I meant was why not edit the GM script to add another text box called Tags, which the user can enter at the time of posting??

    ReplyDelete
  15. Because it is a lot of work and likely to need manual revision as soon as the coComment people change anything at all, shooting us back to awful "manual updates" land again, which to me makes this hack pointless.

    I'm not saying it can't (or won't) be done, just that I won't do it. I would suggest filing such feature requests with the coComment people themselves.

    ReplyDelete
  16. Point Taken!! I guess you are a busy guy. I'm trying to do it myself but I have to study coComment's working a little more I guess.

    ReplyDelete
  17. Hi Johan,

    I love your script. However, for the last few days, it has not been invoking the cocomment bookmarklet. i need to manually click on it now.. I was wondering if there is a problem?

    ReplyDelete
  18. CoComment has had some DNS outages recently (massive distributed denial of service attacks against the joker.com nameservers that provide name resolution for coComment), so it's not the script that is at fault, but the coComment web site that does not resolve when the problem occurs.

    ReplyDelete
  19. The thing is that it doesn't invoke the bookmarklet even if coComment is working at that particular time. I have another script that calls on coComment and that works the same, albeit not as well as yours does. So, does this mean that until the DNS issues are solved, the script won't work? Sorry if I am bothering you, but I'm trying to find out if some of the problem lies on my end with my browser or not too.. Thanks so much!

    ReplyDelete
  20. Fixed -- reinstall to get it up to speed again.

    Thanks for noting that there was more to it than the dns outage. The updated version is more robust, though I hope coComment won't keep renaming the core info like this, or you will have to go back here to reiterate this once in a while. Hopefully they're satisfied now though.

    ReplyDelete
  21. It's an old/trite exression but it's the only one that comes to mind : "You Rock Dude !" I've been blogging for only about two and a half months now and you have managed to tutor me in whole new worlds making this stuff more fun than it has a right to be, thanks, B.

    ReplyDelete
  22. When I use this script, is the little CoComment symbol and tags list supposed to appear by the comment box, just like it does when I use click the bookmark link? Because nothing appears.

    I have the latest Greasemonkey installed and your script activated. I am using Firefox 1.5.0.2

    ReplyDelete
  23. The script doesn't seem to work for me in Blogger but it does on WordPress blogs... Still, this is a great idea!

    ReplyDelete

Limited HTML (such as <b>, <i>, <a>) is supported. (All comments are moderated by me amd rel=nofollow gets added to links -- to deter and weed out monetized spam.)

I would prefer not to have to do this as much as you do. Comments straying too far off the post topic often lost due to attention dilution.

Note: Only a member of this blog may post a comment.