Top 4 Ideas for Twitter's New Annotation API

  • strict warning: Non-static method view::load() should not be called statically in /home/sigpboo7/public_html/modules/views/views.module on line 842.
  • strict warning: Declaration of views_handler_field_comment::init() should be compatible with views_handler_field::init(&$view, $options) in /home/sigpboo7/public_html/modules/views/modules/comment/ on line 50.
  • strict warning: Declaration of views_plugin_row::options_validate() should be compatible with views_plugin::options_validate(&$form, &$form_state) in /home/sigpboo7/public_html/modules/views/plugins/ on line 135.
  • strict warning: Declaration of views_plugin_row::options_submit() should be compatible with views_plugin::options_submit(&$form, &$form_state) in /home/sigpboo7/public_html/modules/views/plugins/ on line 135.

Now that I’m fully recovered from Chirp and have had the chance to relax a bit, it’s time to start talking about what’s most important now that Chirp is over:

What the hell are annotations for?

If you weren’t at Chirp (or you were there but weren’t paying attention), the Twitter Annotations API will let you attach arbitrary metadata to tweets. So just as Twitter clients can attach GPS coordinates to tweets, so too will you be able to attach moods, who you were with, or funny pictures of cats to your tweets.

As usual, Twitter has left the use of this new API totally open-ended, preferring to let developers figure out what to do with their new toys rather than to tell developers how Twitter thinks they should be used. (Seems to have worked so far, yeah?) While Twitter’s approach makes getting your head around new APIs a little difficult, especially because the API announcements are usually pretty light on details — for example, how long can annotations be? — it does make the process of imagining what to build a lot more fun.

So, what should us developers build with annotations? Certainly I’m not the first to pose the question, but I don’t really like most of the suggestions so far. So, here are my top 4 picks for the uses of annotations that will change the game:

  1. Event Invites — Twitter has obvious potential for managing events and invitations, but no one’s gotten it right yet. Solutions like TwitCal are basically standalone calendar applications that know how to tweet, which is not interesting. With annotations, though, you can do Twitter invitations right. To invite people to an event, just send a tweet that describes the event and attach a simple iCal invitation to the tweet as an annotation. Bake the ability to send tweets into Gmail or Gcal using Greasemonkey and @Anywhere so you can tweet your invites straight from your calendar interface, and you’re off the to the races.

    @mashable, I expect my invite to your next party to be in this format. I hope you’re paying attention, because I won’t show up otherwise. And then it just wouldn’t be a party.

  2. Tweet Topics — Right now, following people is quite coarse-grained: I either hear everything they have to say, or nothing they have to say. This is a problem because, for example, I generally like what @ebertchicago tweets, but I just don’t care what he has to say about video games. Wouldn’t it be nice if I could decide which tweets from a person I hear by examining their tweets’ topics? It would. So as soon as people start tagging their tweets, you can subscribe to only some of what they have to say, but not all.

    What should the shape of the taxonomy labels be? Well, in a perfect world, people would just give accurate tags to each of their posts. (Heh. Right.) But when we’re talking about tweeting about media, there’s another way we could do it…

  3. Tweet Source — At Chirp, the @Anywhere guys gave a pretty sweet demo integrating Twitter into Amazon so you could tweet directly from Imagine the same thing on, but each tweet you send from there has an annotation denoting which article the tweet was sent from. Now you have essentially a “Referrer:” header for tweets, which will let you not only find conversations related to a particular article better, but also get some really good analytics about which articles are most engaging, which users are most engaged, which authors are best at engaging the audience, and so on.

    But determining which tweets belong to a conversation is a more general problem. That’s why I think the biggest, baddest killer app of them all will be:

  4. Deshortened Link — There’s a big problem with determining reach on Twitter: the shortened link. It’s a necessary evil — you could never write a meaningful tweet if you had to devote 30 of your 140 characters to a link — but the shortened link makes figuring out all the people that have shared a given long link really hard. Services like and TweetMeme help track the number of clicks an article gets, but not the total number of times it’s been shared and who’s shared it. And sure, a simple search can find all the tweets that mention your original shortened link for your article, but it will totally miss any references to your article via a different shortened link, which is a problem because new shortened links for the same article pop up all the time thanks to Twitter clients that autoshorten links.

    But imagine if all those Twitter clients that autoshortened links also included a copy of the link they just shortened in an annotation? Then we could track the real reach of an article on Twitter. And if Twitter clients include long links for pasted short links as annotations, we can do even better.

These are the top 4 game-changing applications of the new Twitter annotation API that I foresee. What do you think of these uses? And what uses can you think of that will change the way people use Twitter?