I wrote a question a while back that mentioned (in passing) the relative merits of a particular software framework... and wow I got flamed! Someone said I was argumentative, and someone else called me naive. There were several other harsh comments and a number of downvotes... so I deleted my question, cried myself to sleep and regrouped.
I started digging around SO and Meta a bunch to look for similar threads... and began to see that posts comparing frameworks to each other were often closed for being subjective and argumentative:
I realized that there's an unwritten rule to never say anything that might be seen as a slight towards another language or framework... i.e. basically, avoid anything that might trigger a religious war. Ok, makes sense.
So I've learned my lesson.. I shall never again mention a programming framework - or if I do, I will only use the most objective language possible.
I was surprised by the whole experience though, because I had read just about every FAQ on the site before contributing... but didn't realize that there were unwritten rules and policies about how to phrase questions to take into account.
Here are the unwritten rules and policies I've seen so far:
- Be careful about expressing an opinion about frameworks or languages that might trigger a religious war.
- In general, be careful with any opinions - especially on controversial topics. Use objective language and cite stats and sources whenever possible.
- Avoid salutations like "Hi" and farewells like "Thanks! - Username".
- Carefully search for duplicates of your thread before you post. If you find close duplicates, post a link so people know that you are aware of prior discussions on the subject.
- Don't take it personally when people downvote you. It's not personal - it's just meta.
Any other unwritten rules and policies to keep in mind?