« Querying aggregated XBRL reports with SPARQL | Main | Querying wiki/dbpedia for presidents' ages at inauguration »

tweet tweet

Joining the twittering classes.

After joining twitter last April, I entered the following as my second entry a month later:

I don't twitter. I barely have time to follow my friends' blogs. I just signed up to grab the name bobdc in case I ever do want to use it.
twitter logo

Daniela Barbosa's posting on Newspapers and Their Use of Twitter prompted me to get to know it better. If publishers ranging from the BBC to The Onion use it, and it's carving out a new role in how people communicate, and it's free, it's kind of silly not to investigate it further.

How do you decide who to follow on twitter? For a start, their server can search an online address book and then tell you which of those people have twitter accounts. I have no online address book, but I do have a gmail account, so I wrote a little XSLT stylesheet to convert my address book to a comma separated value file, uploaded that to gmail, and then pointed twitter to it and picked out some names.

As with other social networks, part of the fun is checking who your friends' friends are, and after finding a few friends to follow and seeing who they follow, I started finding more friends and publishers to add. This leads to a certain hanging-out-with friends aspect to using twitter, and you know that making a little joke as a follow-up to a friend's tweet only makes sense if you have a few mutual followers to see the exchange.

A few random things that I like about twitter: I'm a sucker for anything with a command line interface, even if whois is the only one of these commands that I use. It's good to know it's there. hashtags are a great example of twitter carving out a new role in information distribution; for one example, to quote a Tim Bray tweet about the recent hurricane, "Following Ike on twitter (via #ike at search.twitter.com and @ike) is pretty compelling". It's nice to know that even when people are limited to 140 characters of data at a time, they still find a place for semi-structured metadata.

While the twitter prompt for a tweet is "What are you doing?", I'm less inclined to tell the two dozen people following me "I'm going to empty the dishwasher" than I am to point out something funny I just saw on the web. One wants to be a little entertaining. The Onion is the most entertaining of all, and after hardly reading it for the last few years, twitter has me reading it again. In addition to "here's something funny on the web", another popular topic seems to be "here's something that annoys me". If Lewis Black is the Andy Rooney of the boomer generation, twitter gives the rest of us a modern platform to complain about the annoyances of modern life.

To really get to know twitter better, I've got another account that is only followed by my bobdc account to experiment with some of the features, like the use of a mobile phone to send and receive tweets. It just occurred to me that anyone can find out the name of that account by doing some mouseovers on the "following" section of my twitter page, so if you're really interested in tweets like "Test from my phone", you know where to look.

The twitter API is simple enough to start playing with right away. The following command line (substitute your own username and password and write it all as one line) retrieves an XML version of your followed friends' recent tweets:

wget --http-user=USERNAME --http-passwd=PASSWORD 
  http://twitter.com/statuses/friends_timeline.xmlw

I wrote a simple XSLT 1.0 stylesheet called newtweets.xsl (see also the newtweets.bat.txt batch file, renamed here for easier downloading) to turn the downloaded XML into more readable text, so now I have a simple command-line twitter client that took me one-third the time to write than this this weblog entry did.

Another neat trick is embedding your last few tweets into a web page. A twitter help page shows you the markup necessary to do this dynamically. The wrapper div element has an @id value of "twitter-update-list", so I used that hook to create a a bit of CSS that converts the tweets from a bulleted list to paragraphs separated by a little extra space:

#twitter_div #twitter_update_list, #twitter_div #twitter_update_list li {
  margin-left: 0; padding-left: 0;
}

#twitter_div #twitter_update_list li {
  margin-bottom: 6pt;
}

You'll see it on the right hand side of my weblog's main page.

The experiments continue...