[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct

Eric Christopher via llvm-dev llvm-dev at lists.llvm.org
Mon Oct 12 21:35:47 PDT 2015

Well said and thank you for writing this up.


On Mon, Oct 12, 2015, 6:43 PM Chandler Carruth via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> Greetings everyone,
> On behalf of the board of the LLVM Foundation, I’d like to start the
> process of introducing a formal code of conduct for the community.
> For a long time, various members of the community have been enforcing
> basic reasonable and respectful behavior, but to an outsider this may not
> be obvious. A public code of conduct advertises the behavior we expect of
> community members and clarifies our stance. Having this is something the
> board feels very strongly about and we know many others in the community do
> as well. We also think it is important that we establish this prior to the
> upcoming developer meeting.
> When researching this for the board, I looked at a large number of example
> codes of conduct from various conferences and communities, and I kept
> coming back to the Django Project’s code of conduct which I think is an
> extremely good fit for the LLVM community (several other open source
> projects have ended up using it as well). I have adapted it for our
> community and our needs, and have a text version below.
> Some important considerations:
> - It covers all of the different ways our community has of interacting,
> not just a mailing list or the conference.
> - It makes very clear the kinds of conduct that are unacceptable, which in
> research has proven to be very important for such codes of conduct to be
> effective in practice.
> - It has specific instructions for reporting violations and gives those
> who report issues reasonable expectations for what the response will be.
> Again, in my research this has been identified as being a very important
> aspect to making a code of conduct effective in practice.
> - It does not try to be pedantic or have an overly complex set of rules.
> We think that this strikes a good balance and would like to propose the
> following document for the LLVM project. Once all the comments are
> addressed, we plan to add it to the LLVM documentation and link to it from
> relevant places. The “Reporting Guidelines” will be a separate (linked)
> document for folks to reference if needed. We will also start the process
> of forming and organizing an advisory committee to handle these kinds of
> issues.
> -Chandler, on behalf of the board
> ----
> # LLVM Community Code of Conduct #
> We want to ensure that the LLVM community, while large and diverse,
> remains welcoming and respectful to all participants. To that end, we have
> a few ground rules that we ask people to adhere to.
> This isn’t an exhaustive list of things that you can’t do. Rather, take it
> in the spirit in which it’s intended - a guide to make it easier to
> communicate and participate in the community.
> This code of conduct applies to all spaces managed by the LLVM project or
> The LLVM Foundation. This includes IRC channels, mailing lists, bug
> trackers, LLVM events such as the developer meetings and socials, and any
> other forums created by the project that the community uses for
> communication. It applies to all of your communication and conduct in these
> spaces, including emails, chats, things you say, slides, videos, posters,
> signs, or even t-shirts you display in these spaces. In addition,
> violations of this code outside these spaces may affect a person's ability
> to participate within them.
> If you believe someone is violating the code of conduct, we ask that you
> report it by emailing conduct at llvm.org. For more details please see our
> Reporting Guidelines.
> - *Be friendly and patient.*
> - *Be welcoming.* We strive to be a community that welcomes and supports
> people of all backgrounds and identities. This includes, but is not limited
> to members of any race, ethnicity, culture, national origin, colour,
> immigration status, social and economic class, educational level, sex,
> sexual orientation, gender identity and expression, age, size, family
> status, political belief, religion, and mental and physical ability.
> - *Be considerate.* Your work will be used by other people, and you in
> turn will depend on the work of others. Any decision you take will affect
> users and colleagues, and you should take those consequences into account
> when making decisions. Remember that we're a world-wide community, so you
> might not be communicating in someone else's primary language.
> - *Be respectful.* Not all of us will agree all the time, but disagreement
> is no excuse for poor behavior and poor manners. We might all experience
> some frustration now and then, but we cannot allow that frustration to turn
> into a personal attack. It’s important to remember that a community where
> people feel uncomfortable or threatened is not a productive one. Members of
> the LLVM community should be respectful when dealing with other members as
> well as with people outside the LLVM community.
> - *Be careful in the words that you choose.* We are a community of
> professionals, and we conduct ourselves professionally. Be kind to others.
> Do not insult or put down other participants. Harassment and other
> exclusionary behavior aren't acceptable. This includes, but is not limited
> to:
>   - Violent threats or language directed against another person.
>   - Discriminatory jokes and language.
>   - Posting sexually explicit or violent material.
>   - Posting (or threatening to post) other people's personally identifying
> information ("doxing").
>   - Personal insults, especially those using racist or sexist terms.
>   - Unwelcome sexual attention.
>   - Advocating for, or encouraging, any of the above behavior.
>   - Repeated harassment of others. In general, if someone asks you to
> stop, then stop.
> - *When we disagree, try to understand why.* Disagreements, both social
> and technical, happen all the time and LLVM is no exception. It is
> important that we resolve disagreements and differing views constructively.
> Remember that we’re different. The strength of LLVM comes from its varied
> community, people from a wide range of backgrounds. Different people have
> different perspectives on issues. Being unable to understand why someone
> holds a viewpoint doesn’t mean that they’re wrong. Don’t forget that it is
> human to err and blaming each other doesn’t get us anywhere. Instead, focus
> on helping to resolve issues and learning from mistakes.
> ## Questions? ##
> If you have questions, please see feel free to contact the LLVM Foundation
> Code of Conduct Advisory Committee by emailing conduct at llvm.org.
> (This text is based on the Django Project Code of Conduct, which is in
> turn based on wording from the Speak Up! project.)
> ----
> # Reporting Guide #
> If you believe someone is violating the code of conduct we ask that you
> report it to the LLVM Foundation by emailing conduct at llvm.org. *All
> reports will be kept confidential.* In some cases we may determine that a
> public statement will need to be made. If that's the case, the identities
> of all victims and reporters will remain confidential unless those
> individuals instruct us otherwise.
> If you believe anyone is in physical danger, please notify appropriate law
> enforcement first. If you are unsure what law enforcement agency is
> appropriate, please include this in your report and we will attempt to
> notify them.
> If the violation occurs at an event such as a Developer Meeting, you can
> also reach out to any of the event organizers or staff to report it. If you
> cannot find one of the organizers, the hotel staff can locate one for you.
> We will also post detailed contact information for specific events as part
> of each events’ information. Event organizers and staff will be prepared to
> handle the incident and able to help. Your report will still be kept
> confidential exactly as above, but also feel free to (anonymously if
> needed) email conduct at llvm.org if needed.
> In your report please include:
> - Your contact info (so we can get in touch with you if we need to follow
> up)
> - Names (real, nicknames, or pseudonyms) of any individuals involved. If
> there were other witnesses besides you, please try to include them as well.
> - When and where the incident occurred. Please be as specific as possible.
> - Your account of what occurred. If there is a publicly available record
> (e.g. a mailing list archive or a public IRC logger) please include a link.
> - Any extra context you believe existed for the incident.
> - If you believe this incident is ongoing.
> - Any other information you believe we should have.
> ## What happens after you file a report? ##
> You will receive an email from the LLVM Foundation Code of Conduct
> Advisory Committee acknowledging receipt within 24 hours (and will aim for
> much quicker than that).
> The Advisory Committee will immediately meet to review the incident and
> determine:
> - What happened.
> - Whether this event constitutes a code of conduct violation.
> - Who the bad actor was.
> - Whether this is an ongoing situation, or if there is a threat to
> anyone's physical safety.
> - If this is determined to be an ongoing incident or a threat to physical
> safety, the committee's immediate priority will be to protect everyone
> involved. This means we may delay an "official" response until we believe
> that the situation has ended and that everyone is physically safe.
> Once the working group has a complete account of the events they will make
> a decision as to how to respond. Responses may include:
> - A private reprimand from the working group to the individual(s) involved.
> - A public reprimand.
> - An imposed vacation (i.e. asking someone to "take a week off" from a
> mailing list or IRC).
> - A permanent or temporary ban from some or all LLVM spaces (mailing
> lists, IRC, etc.)
> - A request for a public or private apology.
> - Nothing (if we determine no violation occurred).
> If not resolved within one week, we'll respond within one week to the
> original reporter with an explanation of why the situation is not yet
> resolved.
> Once we've determined our final action, we'll contact the original
> reporter to let them know what action (if any) we'll be taking. We'll take
> into account feedback from the reporter on the appropriateness of our
> response, but we don't guarantee we'll act on it.
> Finally, the Advisory Committee will make a report on the situation to the
> LLVM Foundation board. The board may choose to make a public statement
> about the incident.
> ## Appealing ##
> Only permanent resolutions (such as bans) may be appealed. To appeal a
> decision of the working group, contact the LLVM Foundation Board at
> board at llvm.org with your appeal and the board will review the case.
> (This text is based on the Django Project Code of Conduct, which is in
> turn based on wording from the Speak Up! project.)
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151013/e3d23bf8/attachment.html>

More information about the llvm-dev mailing list