I have a roo who, although is not always very friendly toward the hand that feeds him, will go after anything that gets in between him and his hens. (Already practiced on a few ducks and some chickens). I'd rather him be a little nicer, but he can be a sweetie when he wants to. I like to feel that my birds are safe. So he's a keeper. Just today I let him free-range (he's a Silkie, and can barely see) and my Sumatra hen came to investigate him, as she's not part of his flock. They've never met. But I know my Sumatra, and she was going to give the newbie hell, as she's a bully. But he was growling up a storm and she didn't listen. When she got close enough, he pounced. She ran away flapping.
Point being, we have threats. I like my boys vocal and steady. I also like them pretty and, if they can manage without feeling imasculated, sweet.
I also agree with the other reasons stated. Roosters aren't for everyone but when you find one that fits your needs, they are most certainly worth their weight in eggs. I like that saying.
Also, this same rooster will stand at the end of the coop every evening, staring out the window. It's very creepy (sometimes I get out locking them up late and when I walk by I'll just see him standing there quietly)
but it's also very nice to see him protecting his family. I've never had a rooster that would guard the hens, and not sleep with them.