Tidy those Tweets
I’ve been on Twitter a number of years now, and every six months or so, I get fed up with some of the people I follow, and go through a purge, where I crop back a number of people I follow, so my stream becomes more relevant and spam-free for me.
Traditionally, this has taken me a couple of hours, and leaves me annoyed it has taken so long. That is, until I discovered Twit Cleaner.
I spoke to founder, Si Dawson, in this awesome (and free!) tool.
I’ve used Twit Cleaner, and found it really useful. What inspired you to write the app?
I initially got onto Twitter and promptly got confused by it (like most people, it seems). I didn’t really know what I was doing, so I used some auto-follow scripts – to follow people based on keywords, and to follow back anyone that followed me. Suddenly, I was winning! I had huge numbers! I (like everyone) thought this was great.
The problem was, I could no longer see good tweets for all the junk, and my Twitter experience was miserable. So, I wrote Twit Cleaner to help sort it all out. It’s designed to mimic the conclusions I reach when I look at a person’s tweet stream manually.
How long did it take between considering the idea, and actually implementing it? Was it one of those weekend projects, or did you spend months in consideration?
I had an initial proof of concept up and running on my machine at home pretty quickly – maybe a couple of days. To get it to its current state has taken several thousand hours of work, and many, many iterations. This may be version 4, or 5, depending on how you count. I’m certainly rolling out small changes all day every day.
Starting again, what would you do differently?
I’d start in a more appropriate language and a stronger structure. I didn’t realize it was going to take off quite as much as it has, and I didn’t really have (at that point) the skills needed to build a solid website. So, the initial version I wrote using 5 million text files & C#. I’d come from a pretty deep artificial intelligence/finance background, so C# was what I was used to. Then I moved to PHP – which got a public site up quickly, but was otherwise horrible.
Now, finally, it’s all python, with a database backend. It’s taken a long time to get to that. It would have been much, much quicker if I started with what I know today. Of course, it’s not finished, & I have further exciting architectural shifts planned.
Twit Cleaner looks for certain traits in the people you follow, such as repeating the same link, Twitter Bots, unpopular, and my favorite – dormant accounts. How have you found this rating system has evolved over time?
Oh, absolutely. There’s been radical improvements, and a lot of subtleties added.
For example, the high volume tweeters (“All talk, all the time”). Initially I used to look at how quickly people had tweeted their front page of tweets (the last 20). If they’d done 20 in less than an hour, they were high volume. Of course, there’s holes you could drive a truck through with this approach, so I tried two or three other methods until I settled on the current approach – estimate how many public tweets the person has sent per day. That’s pretty good, but still flawed in certain obscure edge cases. People use Twitter so many different ways, analyzing it is definitely an art.
The original version I rolled out publicly had about 10 categories. Now there are 20 (with 2 of the original 10 also obsolete). Every time I have a bright idea – or a user throws a suggestion at me, I code it up, test it & roll it out. I expect it’ll keep growing.
What’s the trick to staying out of reports? What traits do you look for in a great Twitter adopter?
Well, for a start, if you do end up on a report, I wouldn’t worry about it too much. I automatically exclude anybody you have listed, and anyone you’ve interacted with recently. So, if your followers love you, even if you are in a category, you won’t appear on their reports. I do everything I possibly can to avoid showing people you care about on your report.
At the moment, Twit Cleaner is very much geared towards Twitter as an interactive medium. Connecting, communicating, and interacting. So, as long as you’re talking to people (not just at them), you’ll be fine.
That’s the gist of it. I have a blog post up that goes into it in more detail.
It should be pointed out though: there are many Twitter accounts set up for a specific purpose, that will appear on reports. For example the many ‘news bots’. If you want to follow that sort of account though? You can just safely ignore that entire category from the report. I’ll also be rolling out a version soon that allows you to customize your report depending on how you use Twitter. For example, if you use Twitter as an RSS feed, you actually like accounts only posting links.
Access is completely free. Surely there’s got to be a catch? What’s your plan to monetize Twit Cleaner?
No, no catch. The reports will always be free. I plan to add a bunch more functionality to the base system (for example, the ability to whitelist people, and customize your reports, as mentioned, as well as having no limits to how many you can unfollow – versus 500/day for free access), there’ll be a small charge for that.
Other than that, I have a bunch of other super useful tools I plan to roll out soon that I’ll be charging for. In general though, I hate applications where you feel like you’re getting something useless or broken, unless you pay for it. So, there’s no way in hell I’m going to do that to anyone else (particularly not my amazing users, who are just an incredible bunch of people).
I have to pay my rent, obviously (& Twit Cleaner IS what I do), but the key intent is to make Twitter as awesome as possible for as many people as possible. I’d rather have more free users having a better time on Twitter than fewer paying customers and a whole lot more miserable people.
It’s a balancing act, but we’ll get there. My users are super-helpful, so I’m sure they’ll help me figure it all out.
Thanks for the chat, Si, and for the great application. Best of luck with future releases and ongoing success with Twit Cleaner.