There are some long lists of false beliefs that programmers hold. isn't because programmers are especially likely to be more wrong than anyone else, it's just that programming offers a better opportunity than most people get to find out how incomplete their model of the world is.
I'm posting about this here, not just because this information has a decent chance of being both entertaining and useful, but because LWers try to figure things out from relatively simple principles-- who knows what simplifying assumptions might be tripping us up?
The classic (and I think the first) was about names. There have been a few more lists created since then.
Time. And time zones. Crowd-sourced time errors.
Addresses. Possibly more about addresses. I haven't compared the lists.
Gender. This is so short I assume it's seriously incomplete.
Networks. Weirdly, there is no list of falsehoods programmers believe about html (or at least a fast search didn't turn anything up). Don't trust the words in the url.
Distributed computing Build systems.
Poem about character conversion.
I got started on the subject because of this about testing your code, which was posted by Andrew Ducker.
The answer is that the group of things that we typically mean by "are you a chimpanzee" is not the same as the group of things that we typically mean by "are you a woman". The chimpanzee version contains more things that depend on the mind than the woman version.
Imagine a different version where we transplant your brain into the body of someone with red hair. In that case, you would indeed be a redhead.
Also, imagine that (assuming you're not Chinese) we transplanted your body into a Chinese person's body. Are you then Chinese? It is plausible that you aren't Chinese in this situation--but unlike in the woman example, that does not extend to thinking that a "transracial" person in a non-transplant situation is a real thing.