Most people are familiar with the popular English expression "herding cats." It's true that cats are more independent than our other four-legged house-hold friends - dogs.
I meet quite a lot of people who really don't like cats very much. There is the classic reason - allergies - which no one questions and makes perfect sense. Though I have met people who are allergic to cats and still can't resist them. Then there are people who like cats, but they're just more "dog people." I think this comes down to what you want your animal to do. Most people perceive cats as incapable of following commands, responding to gestures or words, or following you around like many dogs do. Except, this is a myth.
Yes it is true, dogs are more social animals than cats. They were bred from animals that have a pack mentality. It's no wonder that dogs have tendencies towards social interaction - something that has continued to have been bred over generations by humans. Domestic cats on the other hand, came from solitary animals. Domestic cats are very much like their big cousins. They are territorial. They tend to stake out a place and it is theirs, and theirs alone - literally. But just like dogs, or any animal for that matter, each cat has its own personality and each breed has its own set of characteristics.
Some cat breeds are actually very sociable - particularly those from South Asia (think: Bombay, Balinese, Siamese and the like). In fact they are so social, they will respond to commands and bond so strongly to a single person they will follow the person while they go about their daily tasks.
These cats are the easiest to train, because they already have the genetic predisposition to pay attention to what you do. You can train them in a similar way to how you would train a dog - by using consistent gestures and words, as well as appropriate rewards (treats, praise, and petting). Let me give you an example.
My current cat, Java, is an exceptional cat. But the way I taught her to come to her name is the same way you would any cat. Java was a rescue cat, and she had undergone several name changes. When we first got her, I spent two days solidly with her, giving her praise words and pets, but most importantly I said her name over and over again. Sitting a little ways away, I would hold treats in my hand when I said her name. Slowly I would get further and further away from her with fewer treats, until I could say her name and she would come no matter what. Now she understands several basic commands using gestures, words, and combination commands. She also hangs out with me while I exercise, sleeps with me when I sleep, eats from her dish when I eat, and watches me when I cook. The key is consistency and asserting authority.
Just like with dogs, or other animals, you are the top of the pecking order and your voice should let your cat know this. I don't mean you should yell - but rather you need to be firm. Use the same gestures, the same words, every time you want your pet to do a particular thing. If you do different things, your animal will get mixed messages and won't know what they are supposed to do. Before you know it, your cat will come when you call, stop what its doing when you want them to, easily let you brush their teeth and any number of other things. It's a great relationship, and I recommend it to anyone who owns one of our fuzzy four-legged friends.