Accidentally in Code

Vizualising your Twitter Conversations: Rationale

Posted on: October 9, 2009

I’ve frankly been amazed by the number of hits I’ve had on my Twitter Graphs since I put them up yesterday. This is the first phase of something I’m working on, so I’m going to write a little about the logic behind it here. Suggestions or thoughts are very welcome!

There was a time when follower counts meant something on Twitter. But that was probably before spammers, auto-follow (interesting article on how spammers and auto-follow have ruined the “social contract), and Robert Scoble‘s much hated “recommended list” (interesting post listing other people to follow who aren’t on the recommended list here). Now I think that looking at the number of people someone follows is a poor measure of their level of engagement with Twitter. Because I think a lot of what makes Twitter great is conversations it’s more interesting to me to measure those instead.

To clarify – the graphs I’ve done have mostly gone to a depth of 1, which means that it graphs the central user (checks their last 200 tweets for people they’ve mentioned, and the last 100 tweets that have mentioned them), and then does the same thing for everyone they’ve mentioned or who has mentioned them, but goes no further (I am aware of the flaws in this, fix coming soon). This means that there could well be (and likely are) connections between second degree nodes from the center person, which aren’t shown. The application doesn’t use verification, so people with protected tweets will seem to have only one way relationships because any mentions they’ve made will not show up.

Here’s my graph, below:

@kittenthebad's Twitter Conversation Graph

The yellow lines indicate a reciprocal relationship. Purple and red are one way relationships. It’s not always clear which direction it is in, but if you look at the “kittenthebad” node in the center, I mentioned “Zotero” (purple), but “unmasker” mentioned me (pink). If you look above to the left, you see my friends @zara_p and @douglasgresham and we have a little network going on there with a couple of other people we have in common. Below my node, you can see my friends @map_maker and @emdaniels and the people we have in common there too. So I think what my graph shows is that I’m primarily a conversationalist on Twitter and that most of the people I talk about, or to, I have a reciprocal relationship with. The other thing it shows, if you look at the number of people I’m following (57) is that the number of people I’m talking to is large relative to my network, about half.

Now let’s take the last person who auto-followed me based on a keyword (lolcats), (please don’t click on this link if you’re easily offended) Trollcats . As of writing this, Trollcats has 2,660 following and 5,367 followers so you’d expect them to have a huge graph, right? See below:

@Trollcats Twitter Conversation Graph

Their network here is much smaller, they’re having fewer conversations and the people who they’re having conversations with mostly aren’t connected to one another. This suggests that they’re less engaged, and are using Twitter as more of a broadcast medium. However if they were getting ReTweeted a lot, their graph would look different. Remember @snookca (his graph is here). He has around twice as many followers, but his graph is exponentially more crazy – because he’s engaged with Twitter and having conversations.

For a big broadcaster, see @guardiantech below – they’re not having a lot of conversations on Twitter but a lot of people are talking to or about them – likely they’re getting a lot more ReTweets:

@guardiantech's Twitter Conversation Graph

So why is this useful, or interesting? This is fairly new, so I can’t be sure yet but here’s what I think we’ll find. I think that graphs will be different, depending on how people use Twitter. Conversationalists, spammers, the uber-popular will have distinct patterns. I think that visualizing your network will show you sub-networks that may be surprising, and get a measure of how many sub-networks you’re a part of (the next step of this is – what are these subnetworks talking about?), and will also show which of your friends are “Twitter Connectors” (people who are in a lot of sub-networks). And I think as a result of this, visualizing someone who’s followed you will tell you a lot about whether you want to follow them back. Are they a spammer? Are they just broadcasting? How engaged are they relative to the number of people they’re following – if very, they’re likely following you because they want to strike up a conversation. If not much, they may just be following you in the hope you follow them back.

This is written in Java and if you have some knowledge of programming and can run Eclipse it’s relatively easy to set up and run yourself. The source code is still being worked on, but I can make it available as-is to anyone who’s interested in running it.

12 Responses to "Vizualising your Twitter Conversations: Rationale"

[…] Vizualising your Twitter Conversations: Rationale Visualizing Your […]

Definitely would love to play with this in Eclipse, thanks again for hooking me up with my own, I did a small article on it πŸ™‚

How familiar are you with Java? At the moment it’s only usable if you know what you’re doing because I’m still tweaking things. Hopefully by the end of the week I can have a Java application going which if you can install Java on your machine you should be able to run fairly easily.

Ooh node depth coloring is GO. But I’m over the API limit so I can’t get a screen shot for another 20 mins πŸ˜₯

I’m no Java pro that’s for sure! But I am fairly proficient at running and compiling applications, I’ve used Eclipse in the past, run Aptanta for some web app dev-ing, and I’ve forged my way through Apache Nutch source code before. Already got latest Java SDK and Beans.

Its not a prob if you want to wait though, either way I’m totally interested in it, hehe

You could prob figure it out then, there’s just some project dependencies because I haven’t built prefuse. Have to finish my Combinatorial Algorithms assignment πŸ˜₯ then I can tidy it up for you and hopefully get my SVN set up so it’ll be easier to get updates! πŸ™‚

oh don’t be sad about your assignment, once its done its done :p At least its not a comprehensive user manual I have to have turned in, in a few weeks, bleh…I’m so tired of coms.

alright, I look forward to the SVN repo then, or if you want to get crazy and play with voodoo check out or

keep me updated πŸ™‚

Hahaha it’s nearly done now. Visualizations are much more fun though! My friend was telling me about Git last night, he’s a big fan. I should look at it πŸ™‚

[…] I think Haskell is most appropriate in this instance, for example, but I’m using Java for my visualizations. If I need to script something, I’ll probably use Python and I understand why C is still used […]

[…] the vibrant tech scene here! Can’t wait for democamp 13 – wonder if I could present my graphs…? This entry was written by Cate, posted on October 22, 2009 at 4:41 pm, filed under […]

[…] I think Haskell is most appropriate in this instance, for example, but I’m using Java for my visualizations. If I need to script something, I’ll probably use Python and I understand why C is still used […]

[…] UPDATE 9/10: Insight into how this works and the rationale behind this in this post. […]

Wow. I came across this via a retweet of @MarkRaganCEO’s “Don’t be a Twitter train wreck” where he mentions your graphs. These are phenomenal and I think they are *highly* informative visualizations. I am totally in awe. I work at Penn State using social media as one type of educational technology, and I would really love to use one of your visualizations in our work here–and link back to your posts, obviously. Would that be possible? I’m @robin2go on Twitter.

Well done!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s


<span>%d</span> bloggers like this: