It's tough to distinguish between someone dismissing an idea because he sees the inevitable problems that make it unworkable, and someone dismissing an idea that falls outside his comfort zone.
It's tough to distinguish between someone giving an abrupt answer because her time is too valuable to spend on a detailed one, and someone giving an abrupt answer because she doesn't have the understanding to formulate an actual rebuttal.
And of course it's impossible to tell any of the above from a nice guy having a shitty day.
There's a lot of gripe about our shitty community, and I often wonder whether the griping is just a byproduct of having so many conversations in permanently archived public fora, or whether there really is some force at work that makes impolite people choose programming or makes programmers impolite.
A) They politely provide reasons, citations or rational for their opinion and may ask you to address those concerns.
B) If their time is too valuable and mine isn't there had better be a significant actual differential in our importance in the world. I'd take it from my CEO, but I expect explanations from anyone under him. Otherwise the "brusque" answer is like someone who doesn't bother capitalizing and using proper punctuation: a mark of disrespect for my time.
C) The nice guy having a shitty day feels bad when you call him on acting like an asshole.
The difference between: "You cannot use a pointer without previous initialization becuase it may lead to corrupt memory, or some other error".
and
"Nobody with a fking idea of C would dereference a pointer as you have done"
is politeness. And the first one helps, the second one just offends. Both are right, but one is more useful than the other.
Especially in public discussions.
Being polite requires, as any other virtue, habit. And usually, acquiring it requires effort. But we, all of we, expect it from all of us.