You can rage against the machine (pointless, and overrated imho), or you can understand the reasoning behind this.
I'll point you to a couple specifics behind the ethos of StackOverflow that can be gleaned from the help center:
This site is all about getting answers. It's not a discussion forum. There's no chit-chat.
Trivia questions, while fun (I love trivia, play a lot of Buzztime when I get the opportunity), are definitely chit-chatty. Why someone would use
fred as a variable name is pretty much useless information that won't help you become a better programmer or solve any issue you are currently facing. Speaking of which...
Focus on questions about an actual problem you have faced. Include details about what you have tried and exactly what you are trying to do.
Where's the actual problem you are facing here? Is not knowing the reasoning behind a throwaway variable name a problem? No, performant thread synchronization in collection access is a software problem. This, again, is trivia.
I agree with you that the foo question is a similar example. It should be closed (voted for that) or given a historical lock. It isn't an example of how you are right, but of how "StackOverflow is not a perfect example of itself". You will always find counterexamples for pretty much every rule here, just because SO isn't perfect due to the number of human beings administrating and participating within it.