I think that the reason people are racist is because of, stereotypical enough, insecurity. People are drawn to forming groups that they identify with and bash on other groups (countries having stupid wars for no reason, shia vs sunni muslims, white vs black, white vs Asian, white vs Arabic. The list goes on. Blacks, Arabic and Asians aren't any better of course.) The easiest way of doing that is going by differences in looks, language, nationality,sexual preferences religion, or culture. It kinda goes like this: "I know I'm not perfect, but at least I'm better than the *insert demographic here*.