<!--{
	"Title": "Go Community Code of Conduct",
	"Path":  "/conduct",
	"Template": true
}-->

<style>
ul {
	max-width: 800px;
}
ul ul {
	margin: 0 0 5px;
}
</style>

<h2 id="about">About</h2>

<p>
Online communities include people from many different backgrounds.
The Go contributors are committed to providing a friendly, safe and welcoming
environment for all, regardless of gender identity and expression, sexual orientation,
disabilities, neurodiversity, physical appearance, body size, ethnicity, nationality,
race, age, religion, or similar personal characteristics.
</p>

<p>
The first goal of the Code of Conduct is to specify a baseline standard
of behavior so that people with different social values and communication
styles can talk about Go effectively, productively, and respectfully.
</p>

<p>
The second goal is to provide a mechanism for resolving conflicts in the
community when they arise.
</p>

<p>
The third goal of the Code of Conduct is to make our community welcoming to
people from different backgrounds.
Diversity is critical to the project; for Go to be successful, it needs
contributors and users from all backgrounds.
(See <a href="https://blog.golang.org/open-source">Go, Open Source, Community</a>.)
</p>

<p>
We believe that healthy debate and disagreement are essential to a healthy project and community.
However, it is never ok to be disrespectful.
We value diverse opinions, but we value respectful behavior more.
</p>

<h2 id="values">Gopher values</h2>

<p>
These are the values to which people in the Go community (“Gophers”) should aspire.
</p>

<ul>
<li>Be friendly and welcoming
<li>Be patient
    <ul>
    <li>Remember that people have varying communication styles and that not
        everyone is using their native language.
        (Meaning and tone can be lost in translation.)
    </ul>
<li>Be thoughtful
    <ul>
    <li>Productive communication requires effort.
        Think about how your words will be interpreted.
    <li>Remember that sometimes it is best to refrain entirely from commenting.
    </ul>
<li>Be respectful
    <ul>
    <li>In particular, respect differences of opinion.
    </ul>
<li>Be charitable
    <ul>
    <li>Interpret the arguments of others in good faith, do not seek to disagree.
    <li>When we do disagree, try to understand why.
    </ul>
<li>Avoid destructive behavior:
    <ul>
    <li>Derailing: stay on topic; if you want to talk about something else,
        start a new conversation.
    <li>Unconstructive criticism: don't merely decry the current state of affairs;
        offer—or at least solicit—suggestions as to how things may be improved.
    <li>Snarking (pithy, unproductive, sniping comments)
    <li>Discussing potentially offensive or sensitive issues;
        this all too often leads to unnecessary conflict.
    <li>Microaggressions: brief and commonplace verbal, behavioral and
        environmental indignities that communicate hostile, derogatory or negative
        slights and insults to a person or group.
    </ul>
</ul>

<p>
People are complicated.
You should expect to be misunderstood and to misunderstand others;
when this inevitably occurs, resist the urge to be defensive or assign blame.
Try not to take offense where no offense was intended.
Give people the benefit of the doubt.
Even if the intent was to provoke, do not rise to it.
It is the responsibility of <i>all parties</i> to de-escalate conflict when it arises.
</p>

<h2 id="code">Code of Conduct</h2>

<h3 id="our-pledge">Our Pledge</h3>

<p>In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, gender identity and expression, level of
experience, education, socio-economic status, nationality, personal appearance,
race, religion, or sexual identity and orientation.</p>

<h3 id="our-standards">Our Standards</h3>

<p>Examples of behavior that contributes to creating a positive environment
include:</p>

<ul>
<li>Using welcoming and inclusive language</li>
<li>Being respectful of differing viewpoints and experiences</li>
<li>Gracefully accepting constructive criticism</li>
<li>Focusing on what is best for the community</li>
<li>Showing empathy towards other community members</li>
</ul>

<p>Examples of unacceptable behavior by participants include:</p>

<ul>
<li>The use of sexualized language or imagery and unwelcome sexual attention or
advances</li>
<li>Trolling, insulting/derogatory comments, and personal or political attacks</li>
<li>Public or private harassment</li>
<li>Publishing others&rsquo; private information, such as a physical or electronic
address, without explicit permission</li>
<li>Other conduct which could reasonably be considered inappropriate in a
professional setting</li>
</ul>

<h3 id="our-responsibilities">Our Responsibilities</h3>

<p>Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.</p>

<p>Project maintainers have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, or to ban temporarily or permanently any
contributor for other behaviors that they deem inappropriate, threatening,
offensive, or harmful.</p>

<h3 id="scope">Scope</h3>

<p>This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.</p>

<p>This Code of Conduct also applies outside the project spaces when the Project
Steward has a reasonable belief that an individual&rsquo;s behavior may have a
negative impact on the project or its community.</p>

<h3 id="conflict-resolution"></a>Conflict Resolution</h3>

<p>We do not believe that all conflict is bad; healthy debate and disagreement
often yield positive results. However, it is never okay to be disrespectful or
to engage in behavior that violates the project’s code of conduct.</p>

<p>If you see someone violating the code of conduct, you are encouraged to address
the behavior directly with those involved. Many issues can be resolved quickly
and easily, and this gives people more control over the outcome of their
dispute. If you are unable to resolve the matter for any reason, or if the
behavior is threatening or harassing, report it. We are dedicated to providing
an environment where participants feel welcome and safe.</p>

<p id="reporting">Reports should be directed to Cassandra Salisbury, the
Go Project Steward, at <i>conduct@golang.org</i>.
It is the Project Steward’s duty to
receive and address reported violations of the code of conduct. They will then
work with a committee consisting of representatives from the Open Source
Programs Office and the Google Open Source Strategy team. If for any reason you
are uncomfortable reaching out the Project Steward, please email
the Google Open Source Programs Office at <i>opensource@google.com</i>.</p>

<p>We will investigate every complaint, but you may not receive a direct response.
We will use our discretion in determining when and how to follow up on reported
incidents, which may range from not taking action to permanent expulsion from
the project and project-sponsored spaces. We will notify the accused of the
report and provide them an opportunity to discuss it before any action is taken.
The identity of the reporter will be omitted from the details of the report
supplied to the accused. In potentially harmful situations, such as ongoing
harassment or threats to anyone&rsquo;s safety, we may take action without notice.</p>

<h3 id="attribution">Attribution</h3>

<p>This Code of Conduct is adapted from the Contributor Covenant, version 1.4,
available at
<a href="https://www.contributor-covenant.org/version/1/4/code-of-conduct.html">https://www.contributor-covenant.org/version/1/4/code-of-conduct.html</a></p>

<h2 id="summary">Summary</h2>

<ul>
<li>Treat everyone with respect and kindness.
<li>Be thoughtful in how you communicate.
<li>Don’t be destructive or inflammatory.
<li>If you encounter an issue, please mail <a href="mailto:conduct@golang.org">conduct@golang.org</a>.
</ul>
