So there are specific contexts in which taking people's expressed gender identity at face value would work badly. Fair enough. But as the saying goes, "hard cases make bad law"; the question "are there contexts where doing X works badly?" may be less appropriate than "in most contexts, does doing X work better than not doing X?".
Except similar logic applies in every case where gender actually matters, e.g., which bathroom to use, can they participate in women's sports, etc. And in all other cases, the benefits are along the lines of, the deluded person feels better if everyone plays along with his delusion.
similar logic applies
The logic here takes the form: If we treat this person as female, then such-and-such danger arises that wouldn't if we treated them as male; here's a course of action that attempts to balance mitigating the danger to others against the interests of the person in question.
The appropriate conclusion depends on how real and how severe the danger is. (Of course it needn't be danger as such, and I take it you wouldn't claim there's danger associated with letting male-anatomy people compete in nominally-all-female sporting competitions.)
C...
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.