Doing a bit of C++ recently has exposed me to the C++ community on StackOverflow and, though I might be imagining this, they strike me as being generally a bit more friendly, a bit less spikey (confrontational is too strong a word), a bit more willing to spend a little more time on a really helpful answer, a little less rep-hungry and a bit more mature/tolerant than some of the C# devs I've come across. I stress, this isn't a dig at C# developers, in fact some of the C# developers on SO have re-affirmed my faith in humanity, it's just an observation - has anyone else noticed different personality traits across different language or platform users?
Of course C++ developers are friendly - they're completely and utterly mad! You don't learn a language like C++ and still manage to keep a firm grip on reality, and once free from the shackles of sanity they tend to also leave behind the normal stresses and frustrations that make, say, C programmers such jackasses.
C# and Java programmers are merely beaten down by the world. SO rep is all they have left to hope for, and spending extra time answering follow-up questions doesn't do anything for that. Poor souls; don't be too hard on them, they didn't ask for this lot in life.
I've gotta say though, out of all the programmers in all of the various languages, VB programmers have to be the most friendly. The cheerful smiles on their faces when you lean down to wipe off the drool can just brighten your whole outlook on life...
I haven't seen much unfriendliness in the C# tags, but then maybe what I view as just matter-of-fact answering is what you view as being unfriendly; it's possible I'm part of the problem as you perceive it. In particular, if you do happen to dislike my answering style (which you're perfectly at liberty to do, of course) then that will create a disproportionately poor impression of the C# community. Please don't judge the C# community based on just my contributions! (Or those of other prolific answerers.)
I think it would be worth presenting specific examples of what you mean, so we can discuss them further. For instance, there are certain common mistakes and bad practices people make in C# which the community will vociferously denounce: if you embed values in your SQL, or use binary floating point values for money, or routinely make your variables public then you should expect to be discouraged from doing so in no uncertain terms. This may be seen as unfriendly by some - and I'd certainly encourage anyone writing such an answer to do so politely - but it's part of the learning process. The quality of information is more important than the questioner's ego, in my view.
It's possible this wasn't what you were talking about at all, but my guess is that it's one aspect of the "tolerance" you mention.
In terms of maturity, I really couldn't say - although I would hazard a guess (not backed up by any figures) that the average physical age of C++ respondents is higher than those for C#. While I'm not saying that age and maturity of answers are automatically linked, I think there's a certain amount of correlation.
As for detail of answers: is it possible that C++ is just a more complex language, with more subtle nuances? I'm sure that the longest answers I've written have tended to be on some aspects of C#/.NET which are more obscure than those answering "How do I do X?" questions. Is it possible that C++ questions themselves are of a different nature to the C# ones? Again, I don't have any answers there but it's an aspect I'd encourage you to consider.
None of this is meant to discount the possibility that things really are as you suggest, and the average C++ developer is friendlier than the average C# developer. That would sadden me, but I'm not going to pretend it's impossible.
Completely off topic, but hey, it's friday :-)
Codewise, although I cover a number of areas I don't do much with C/C++, but with my ♦ hat on I also come at this from the opposite side, and I can tell you that there are antisocial goits in all tags. I just hope that they are outnumbered by the more helpful members of the community.
And with my C# hat on - while the numbers might suggest otherwise, I hope that I don't come across as a rep-whore; manic OCD, maybe...
As someone active in the C# and Ruby tags, the Ruby crowd are a lot friendlier. But then again that is what you would expect from a bunch of hippies that do not care about the indisputable fact that Rails does not scale and instead of coding are busy making video clips.
Yes, I definitely notice the tone of answers varies by technology. The friendliest I have found are the Flex people. However there only seem to be about 4 of them, so maybe I know them all in the real world.
Java questions will get downvotes from sniffy purists unless you get every detail exactly right and have examined all possible avenues.
It is also the place where the worst sort of framework fundamentalism occurs. Answer like "don't fix your syntax error, change your entire programming methodology and architecture instead" are not uncommon.
Python Community people don't Upvote. Enough said! (Talking about the behavior of different communities.)
Else, Alex Martelli and S.Lott would have been at par with Jon Skeet in rep.
I kind of try to balance the situation, trying to up vote very often within the python tag.
Maybe a better measure of the friendliness of a community is how they react when you suggest their favourite tool is not the best one for a particular job.
From the small sample I've seen:
- "Don't use regexps" answers tend to have a positive score
- "Don't use Java" answers tend to have a score close to zero (with equal upvotes/downvotes)
- "Don't use .NET" and "Don't use Ruby" answers tend to have a negative score.
I haven't seen any "Don't use LISP" answers but would be interested to see what kind of votes/comments they get.