Well, lots of stuff. In the last month, Twitter has:

  • Announced an advertising platform, answering the age-old (an age is about 3 or 4 years in this context) of how the company hopes to make money in the long-run
  • Acquired Tweetie—probably the most successful Twitter iPhone client and one of the most most popular iPhone applications generally—with plans to relaunch it (for free) as the official “Twitter of iPhone”
  • Launched their new @anywhere feature, which allows Web sites to integrate Twitter functionality so that visitors can interact with Twitter without leaving that site (a bit like Facebook connect, sort of)
  • Redesigned their homepage (again), introducing a new focus on “top tweets”
  • Been recognized as a critical historical record of our times by the Library of Congress, to which Twitter will be donating the entire archive of public Tweets (on a six month delay, so they’re already worthless for trend-spotting)

It might not quite be a Google-level rate of new feature releases, but it’s a lot. The homepage and Library of Congress things aren’t really big developments, but they contribute to a sense that something is up. The other three, however, are pretty big. Selling ads, maintaining and distributing software, allowing elaborate integration with other sites—these are big decisions. It would be pretty shocking for them not to be made in concert and as part of a broader strategy.

So what is Twitter doing?

Well, at the moment they’re wrapping up Chirp, Twitter’s first official developer conference. One of the things apparently revealed at Chirp is a new feature that Twitter is currently “working on” called “Annotations“. From Marcel Molina, of the Twitter API team at the Twitter API Google Group:

One of the things we talked about at Chirp is the new Annotations feature we’re working on. In short, it allows you to annotate a tweet with structured metadata. We’re still working on Annotations, but I wanted to share with a wider audience beyond those I was able to talk to in person at Chirp about how we’re thinking of doing Annotations.

First off let’s be clearer about what an annotation is. An annotation is a namespace, key, value triple. A tweet can have one or more annotations. Namespaces can have one or more key/value pairs.

I cannot emphasize enough how much less boring this is than it sounds from that description.

It’s also a lot simpler than it might sound. A namespace is just a category of information, a key is the name for a particular piece of information, and a value is that bit of information in a particular case. Think of a form you might fill out: The namespaces are the headers that label different sections (”personal information”, “contact information”, “billing address”, etc.), the keys are the individual items in each section (”first name”, “last name”, “email address”, etc.), and the values are the, well, values you enter for each item.

Tweets already have a few keys and values. From: [user who sent it], time: [time it was sent], content: [those 140 characters]. Those are sort of the big ones, but there are more. The application used to send it, whether it is an official retweet (as opposed to an unofficial/”old school” copy/paste one preceded by an “RT”), and recently optional location information.

Now developers can make Tweets carry more information. Any sort of information. Like what you ask? From the same post quoted above:

Ok, great. What should I use annotations for though?

We don’t know! That’s the cool thing. Annotations are a blank slate that
lend themselves to myriad divergent use cases. We want to provide open-ended
utility for all the developers to innovate on top of. Some of us have
initial ideas of cool potential uses cases that I’m sure we’ll start to
share just to seed the conversation as we get closer to launch. Developers
will experiment with annotations. Certain ideas and approaches will catch
on. Certain annotations will become standards democratically because
everyone agrees. Some might have diverging opinions. It’s something that we
hope will grow organically and be driven by sociological and cultural
forces.

This is sort of elegant. Twitter’s success owes a lot to the vibrant developer community they have facilitates. Twitter really set the standard for providing a comprehensive, well-documented API for a social Web service. That’s why I was initially taken aback by the announcement of the Tweetie acquisition. It seemed absolutely antithetical to everything that made Twitter what it is—I’d always used the diverse, competitive, and profitable market for Twitter client applications as an example of a company fostering a developer ecosystem. Suddenly it looked like a significant part of it would be squashed by the presence of an “official” client for one of the most popular devices.

But now there’s a whole lot more to do with Twitter than making a slightly different client application or another wacky visualization or mashup out of the public Tweet timeline.

Incidentally I happen to have gone on at some length almost this exact capability in my last post here:

Sharing information about location (or anything else) isn’t what’s new or interesting. What’s new and interesting is sharing that information in a well-structured fashion that facilitates new applications and experiences.[...]

[T]he goal is to combine the ease of sharing relevant social information through a simple status updating tool with the power of doing so in a structured way that can be usefully processed by computers for new applications.

This is what Twitter is making possible—sending new sorts of useful information along with your Tweets. One of the examples I used in the post quote above is a recently-launched service called Miso:

Miso is an extremely Foursquare-like application, it even has its own set of badges, for checking in to share what TV show or movie one is watching rather than where one happens to be in the world. Badges reflect number of shows or films watching in a particular genre, completing a particular series, watching enough things about vampires, etc. There are many.

A little message can be included upon checkin (”checkin” is their own word choice), so it’s like sending a Tweet about what one happens to be watching. Except this way the watcher can see who else is watching the same thing, or what their friends are or have recently watched. And like Foursquare there’s an option to send one’s Miso update to Twitter and Facebook, meaning there’s no loss to using Miso in applicable cases.

With annotations an appropriate client application can send a Tweet that includes the same sort of structured data Miso generates. That means that Miso could run entirely on Twitter. The Miso server would just analyze the data from Miso users’ Tweets and then respond to requests from client applications with information about who is watching what. A Miso annotation capable Twitter client could also parse any Miso annotations on incoming Tweets, so it could display information about shows currently being watched next to messages from any user including that data in their outbound message.

Foursquare could do the same thing. Twitter can include location information but the important thing about foursquare is the identification of particular venues (rather than latitude and longitude). Using annotations one could create an application that “annotated” outbound Tweets with a chosen nearby foursquare venue (identified by pinging the foursquare server for a list of the closest ones). That Tweet would constitute the checkin to foursquare, which is possible because the data payload is a hidden bit of well-structured key/value action tagged onto the human-readable primary Tweet content. It could also still be interpreted by a client application capable of doing so and displayed when available.

At this point it’s probably worth pointing out that Tweetie last made the tech blog headlines just over a month ago when it released Tweetie 2 with native foursquare support. The scenario I described above is not very far at all from being a reality.

There’s more to say about this, mostly in the form of speculation about possible ways to use this capability. And that’s exactly what Twitter wants people to be thinking and talking about. The end of Molina’s post:

We’re really excited about Annotations. Annotations mark one of our first of
many departures from keeping in lock step with features on the web site. To
truly be a platform, we want to expose high-leverage general purpose utility
for the developer community to innovate on top of. Annotations is just the
first of several high-leverage-general-purpose-utlity features we’re hoping
to get to after Annotations.

Think big. Blow our minds.

“What is Twitter” has never had a really great answer. It looks like if they have their way, the answer will be something like “a universal and extensible platform for realtime communication and social interaction on the Web”.

So that’s what they’re up to (or at least part of it).