This is my general observation, but i don't know anyone, which does not have above characteristics, reason I asked it, these characteristics actually have nothing to do with coding.
I think you have a lot more people to meet. Generalising programmers is the same as generalising all other groups of people. It's normally wrong to do so.