I hate rules in online communities. Across Voat, reddit and a forum I run, I moderate roughly 100,000 users. Most of those communities only have rules related to spam. I'm very proud of that. It was my plan from the start, I've stuck to it and the results have been fantastic.
In two instances, it has been necessary to create rules that improve the quality of content. One of them reads:
If the woman in the photo comes into the sub, can I be a dick to her? Absolutely not. Be respectful.
Without that rule the content would suffer, as those women would leave. Unfortunately the users were not able to realize this on their own, so the rule became necessary.
The only other rule is in poker subs. Here it reads:
If you are an inexperienced poker player, you can't have a know-it-all argumentative attitude toward experienced players in this sub.
I included the background info to make it clear I didn't choose this rule arbitrarily and a great deal of thought went into it. One other relevant piece of background is that I've been a professional poker player for ten years.
Here is why this rule is necessary: /r/poker has demonstrated that know-it-all noobs dominating a sub produces awful poker discussion and drives away good players.
When a pro says something noobs disagree with (an easy example would be 'Phil Hellmuth is terrible'), the impression to others will be that he is wrong (and possibly even a troll), if a bunch of people are dismissing him with a know-it-all attitude. Given that pros here will be in the minority, the environment needs to be one that respects what they say and encourages them to share their knowledge, so we can all learn from it.
Enforcement: I've found giving public warnings for this rule just intensifies the behavior and is not effective. So my default is to quickly ban people and tell them they can be unbanned by sending me a message indicating they understand the rule and intend to follow it.
Feedback and questions are welcome but I'll tell you my conviction is absolute. The rule would only change if the experienced players told me to change it. I realize the inexperienced players are going to hate this rule but whether they realize it or not, the rule is for their own good -- if they are here to improve at poker.