I followed them back after they followed me, so in a way it's my fault... In another it isn't. The whole follow me, and I'll follow you thing is effective from a marketing point of view, which is why the place is filled with useless affiliate spam.
They could stop allowing that sort of behavior, but they know that a large part of their user-base consists of 'self marketers' and other less subtle spam.
Why can't I sort or filter any of my incoming tweets in any meaningful way? I can have favorites. I can make lists. I CAN'T just type in 'Fck', and stop my feed from showing me the tweets with the word 'Fck' in them.
I can search for tweets about 'Ruby On Rails', but I can't just add those people to a list called 'Ruby On Rails' without clicking each one of them... Several times.
To top it off their API is so limited that just retrieving a list of the people I'm following means I get blocked for an hour before I can do anything with it, and bypassing their silly API is against the TOS. So writing my own tool to filter properly is straight out.
I wanted to write a simple naive Bayesian filter app to separate the wheat from the chaff for me, but they make it damned near impossible to do so without being sued.