- People get initiated into programmer culture pretty young, before they learn to stop being pretentious. They really like how meritocratic programmer culture is, but they get carried away with it the same way that people who say "gays should go to hell" or "the weak have no place in society" get carried away. And maybe some people never grow out of it because we've reached asshole critical mass and they find themselves surrounded by like-minded people; and because they're rewarded for technical merit even when they behave badly. The result is your typical Dickensian villainy.
- The meanest IRC channel that I know of, #C, is full of people who are honestly not very smart. Every time that I've patiently and kindly tried to teach someone - while the rest of the channel was busy being huge dicks to that person - I've regretted it because the person just wasn't able to absorb and synthesize information. I'd argue that you can't give a $5 dollars to every beggar, and some people should be firmly kept out of the community until they get better, so as to avoid harming the community in the long run. It's a tough situation, and handling it well is tough even for mature people. Being rude isn't an unreasonable tool if your goal is specifically to scare people away (and hopefully towards a more productive endeavor for them).
The point is that there are imperfect people on both sides of our social boundaries. But note that this is a very specific point, and rarely justifies the vitriol that comes out of people in #C.