What I want from Twitter is the best tweets.
I don’t know how to define a best tweet, but I retweet or like one when I see it. The assumption is that my tweets are also best tweets to me.
Although the best tweets should be timely, I’m not willing to scan a timeline to find them. I don’t even know who is going to post them, and even if I did, not all of someone’s tweets are among the best tweets. So I thought of narrowing down what I see, and here’s how my algorithmic filtering works.
People who tweeted what I tweeted also tweeted …
1.What I tweeted
Press enter or click to view image in full size
Beyond the 140, a tweet is usually a link to a full story plus context. For now my algorithm only considers these tweets and disregards the rest.
It always takes the latest 30 links that I tweeted. These are my best tweets at the moment, my current interests, a good place to start from.
2. People who tweeted what I tweeted
There are people out there who share my interests. I know few of them mainly because they are popular, but there are many others less famous who are just as interesting to me. I named all these people my fellows.
The algorithm finds my fellows who tweeted some of my latest 30 links, and calculates a score based on how many links we tweeted in common.
3. People who tweeted what I tweeted also tweeted
Press enter or click to view image in full size
Then it takes the top 30 of my fellows with highest scores. Beside the links I tweeted, they also tweeted other links during the past 30 hours.
The algorithm calculates a score for these links by adding up the scores of my fellows who tweeted them. Then it gives me top 30 of these links.
This is basically it.
Both fellows and the other links they tweeted are ordered by their scores.
My algorithm is nothing fancy — just a simple recommendation system.
Many ideas implemented here have been explained better by people like
in What Twitter Can Be, in The network’s the thing, or in If I Ran Product at Twitter.
There’s plenty of room for improvement, but this algorithm works for me.