The signal-to-noise ratio in Twitter is already low as it is. Most tweets contain links, lots of users are followers but are not followed.
Sure, combining several clever heuristics can reduce spam levels, and no doubt Twitter must attack this aspect if it wants to stay relevant.
But can you put your finger on what exactly constitutes spam in a platform that is so noisy?
Has anyone tried using a Bayesian filter for twitter spam? These have been very successful for email. In fact, I consider email spam a solved problem now (thanks Gmail!)
It's for things like this that I wish I could insert a proxy between my twitter clients and twitter itself and build my own rules/spam filter.
My assertion is that after a certain point (which we are not far from), Twitter as a platform will have a problem making a distinction between "spam" and "legitimate content".
Where you can see the real problem is when there are trending hashtags that spammers get a hold of... spammers grab hold onto a hashtag and keep it artifically trending long past its relevance.
Twitter could easily detect spammers - by their follow history, reputation score (eg a google-rank link like SVD of the follow graph), or simple ratios like follows vs followers. It will inevitably false flag some people but that's not nearly so much of a problem.
That is, they don't have to outright ban these spammers, all they have to do is block these people from search results available for #hashtags or @replies. In the case of genuine people false flagged as spammers, they can still get their message out to genuine followers. It's not too much of a loss to be banned from search results and @reply messaging until you build your karma level a bit.
You're absolutely right twitter should fix this and do it fast. It's a goddamn shame seeing a potentially very useful public resource - like adhoc organising around #hashtags - being destroyed by the actions of a few.
tl;dr Twitter can starve out the spammers just by blocking search results.
It's not an all-or-nothing thing. Excluding suspect accounts from @-replies and hashtag search results is a nice low-key way to keep the majority of conversations going. It's also subtle enough that the spammer might not realise that no one is listening.
--edited to remove quotes around the word rank. Not sure why I put them there.
That said: I agree, banning accounts that tweet nothing but the same link would be a really easy step towards reducing the amount of spam. At the same time - maybe Twitter don't want to auto-ban, as this is a quick and easy way of finding spammers. Tricky :-/
Lots of accounts are set up just to Follow back anyone who Follows them. I've understood for a long time that Follower counts on Twitter are meaningless.
But @-replying or tweeting the same link to different hashtags? Spam, spam, spam!