# Code of Conduct

Please act in the spirit of respect for others, whether you are asking
questions, providing feedback, or answering questions. Volunteers power much of
the open source available for you to use, and they have real emotional states
that can be affected by your interactions.

Specific Considerations
-----------------------

- **Asking Questions**: Follow the [Stack Overflow guidelines on how to ask a
  good question](https://stackoverflow.com/help/how-to-ask).

- **Answering Questions**: Follow the [Stack Overflow guidelines on how to
  write a good answer](https://stackoverflow.com/help/how-to-answer). However,
  avoid responses like “don’t do that,” as they can be perceived as
  condescending. Recommend rather than command.

- **No Egotism**: Argue by facts and reason, not by appeals to authority or
  perceived popular opinion.

- **Differences of Opinion**: Understand that people will have differences of
  opinion and that every design or implementation choice carries trade-offs and
  costs. There is seldom a right answer.

- **Constructive Critique**: Keep unstructured critique to a minimum. If you
  have solid ideas, experiment with them in a fork.

- **No Disruptive Behavior**: Any spamming, trolling, flaming, baiting, or
  other attention-stealing behavior is not welcome.

- **Avoid Sensitive Issues**: Do not engage in offensive or sensitive topics,
  particularly if they are off-topic. This can lead to unnecessary fights, hurt
  feelings, and damaged trust.

- **Avoid Noise**: Do not create noise with “+1” or “me too” comments. Add only
  substantive comments that advance the understanding of an issue. Use
  appropriate reaction mechanisms to upvote comments.

Inspirations
------------

This code of conduct is inspired, in part, by the following sources, which are
worth reading:

- [Python Software Foundation Code of Conduct](https://policies.python.org/python.org/code-of-conduct/)
  (in particular, the “Our Community” and “Our Standards: Inappropriate
  Behavior” sections)
- [Rust Code of Conduct](https://www.rust-lang.org/policies/code-of-conduct)
- [How to Ask Questions the Smart Way](http://www.catb.org/~esr/faqs/smart-questions.html)
  (note that some of the showcased responses to “stupid questions” may not be
  acceptable)

> Please do not contact the authors of the above documents for anything related
> to this project.
