Chandler Carruth via llvm-dev
2015-Oct-13 01:42 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
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.) -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151012/1bf4fd3a/attachment.html>
Mehmet Erol Sanliturk via llvm-dev
2015-Oct-13 02:15 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
On Mon, Oct 12, 2015 at 6:42 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. > > >I think , "see" is excessive in the above phrase : please see feel free to contact> (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.) > > _______________________________________________ > >Mehmet Erol Sanliturk -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151012/776b2bb3/attachment.html>
Chandler Carruth via llvm-dev
2015-Oct-13 02:19 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
On Mon, Oct 12, 2015 at 7:15 PM, Mehmet Erol Sanliturk < m.e.sanliturk at gmail.com> wrote:> On Mon, Oct 12, 2015 at 6:42 PM, Chandler Carruth via llvm-dev < > llvm-dev at lists.llvm.org> wrote: >> >> ## 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. >> >> >> > I think , "see" is excessive in the above phrase : > > please see feel free to contact >Yes, thanks. Will fix before publishing anything. -Chandler -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151012/3bcea862/attachment-0001.html>
Eric Christopher via llvm-dev
2015-Oct-13 04:35 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
Well said and thank you for writing this up. -eric 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>
via llvm-dev
2015-Oct-13 07:32 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
+1 Отправлено с iPad> 13 окт. 2015 г., в 7:35, Eric Christopher via llvm-dev <llvm-dev at lists.llvm.org> написал(а): > > Well said and thank you for writing this up. > > -eric > >> 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 > _______________________________________________ > 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/92e5f27d/attachment.html>
Joachim Durchholz via llvm-dev
2015-Oct-13 08:06 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
Writing all this more or less from the sidelines, but I have seen the interaction in various communities, some working well, others not so well. Take it for what it's worth. Am 13.10.2015 um 03:42 schrieb Chandler Carruth via llvm-dev:> 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.I agree with that. > We also think it is important that we establish this prior to the> upcoming developer meeting.16 days for laying that kind of groundwork is a bit rushed.> [...] the Django Project’s code of conduct [...] > > 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.What research? Is it published? Also, the problem with enumerating all the inacceptable behaviour is that the text tends to become TL;DR. Which means permanent discomfort: I never fully read the rules, so I'm never fully sure that I'm not violating the CoC, nor am I sure whether others violate it. In terms of size and complexity, the proposed CoC is shorter than the typical bulletin board CoC, so it's not bad; however, it think it could be made more compact.> - It has specific instructions for reporting violationsGood. > 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.I believe that such a code is more relevant to the decisionmakers than to the community members. Community members look at what behaviour is being sanctioned in what ways, not so much at the code. I think the code should describe that. Along the lines of "please be decent, we will sanction people, look below for the guidelines that the advisory committee is applying". It may be a good idea to publish decisions and the reasoning. There are reasons against doing so, but I think it's the only way that people will be able to form reasonable expectations.> - It does not try to be pedantic or have an overly complex set of rules.Very much agreed!> 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.Looks like a good plan.> # 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.Too much text. The only person to really read this the one looking for loopholes. > In addition, > violations of this code outside these spaces may affect a person's > ability to participate within them. This is vague and threatening. "Behave or we may sanction you in some unspecified manner." Up to this point, the text is trying to cover too many bases and> 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.Good.> - *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.Leave the last sentence out. It's already covered by the "do not attack people in person" guide below, so it's just increasing the overall text size.> - *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.Try to cut that down a bit.> - *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.The commentary should be slashed to 40-50%.> - *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.This paragraph could be shortened to something along the lines of "never talk about anything except what's happening *inside* the community; and never, never, never attack people in person".> - *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.Agreed. > Remember> that we’re different. The strength of LLVM comes from its varied community, > people from a wide range of backgrounds.Reword that as a promise of future improvement, rather than a statement of facts (about which people could disagree). E.g. "the more diverse the views present in a community, the more angles it has to attack a specific problem; in this way, diversity builds community strength". > 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.True and important to mention; I'm not sure whether it belongs here. Maybe there should be a separate "tips & tricks for successful in-community interaction" section, because this isn't actually code of conduct.> ## 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.Good.> # 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).Typo: "and *we* 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.Just for the record: I'm not sure whether that's a good ruling. One thing I'm missing is some way to evaluate the committee's work. I'm not sure if that is feasible. I just believe that a dysfunctional, erratic or just incomprehensible-to-outsiders committee can be worse than having no committee at all. Just my 5 cents, do with that as you wish :-) Regards, Jo
Renato Golin via llvm-dev
2015-Oct-13 10:52 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
On 13 October 2015 at 02:42, Chandler Carruth via llvm-dev <llvm-dev at lists.llvm.org> wrote:> 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.Hi Chandler, I agree we need such guidelines, and I truly believe you're not trying to promote which hunts, so maybe some of the text needs to be toned down a bit. Following some of the comments, it would be good to see the annonymised result of your research, if at all possible. I understand some descriptions might uniquely identify people. :) I also agree that some descriptions are too verbose, and trying to be exhaustive, whereas any list will be incomplete, we might just as well be short and meaningful. I don't think we need to be legal here, since LLVM spans across so many countries, you won't be able to be free from all of their idiosyncrasies.> - *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 sums up well. The rest is just outlining behaviours that occur with extremely low frequencies on this community, some of which I have never seen. Another important thing to mention is the use of the English language as an international communication protocol. I haven't done the maths, but I believe most of the LLVM developers don't speak English as their native tongue. Moreover, even between English speaking countries, what's normal for some, is offensive for others. This is at the core of any open source community and cannot be ignored. Therefore, we need a special mention for people that do get offended to first, check with the offender to make sure there is intentional harm, then chose between trying to solve on your own *privately*, or reporting the case, as outlined by this document. Even the most "obvious" offences may end up as just using the wrong English word. Cultural differences are important, and if we start kicking people out you may end up with contributors from a single "social style", say, only "politically correct" people. Of course, this is a balance, and the threshold is arbitrary. That's why I propose to encourage people to resolve matters personally first, and try to identify malice before reporting.> 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.Isn't this a bit too much? I mean, was there *ever* a case that people were in any physical danger? I think mentioning it once is ok, but you already have a bullet below on this topic, I don't think we need a whole paragraph for that, too.> 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.s/hotel/venue/> Once the working group has a complete account of the events they will make a > decision as to how to respond.How is this decision made? Will the accused be involved in all cases? Can the accused defend him/herself before being judged? I'd normally assume so, but the following paragraph worries me:> 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.Here, you're separating what you can do with and without the right of defence, as an executor. It may be a way to avoid bureaucracy and get to the point, but it also gives a lot of power to a foundation whose members were not voted, nor chosen by the community in the first place. I don't believe this is in the best interest of the community, since the community has no say in it, nor control over it. If at least the reporting committee's members were interested volunteers, or voted representatives, then it'd be a matter of replacing them if they abuse of power. Currently, we have no such mechanism, nor guarantees that due diligence will be equivalent for members of the public versus members of the Foundation. I'm not saying it will, I'm just saying that if if does happen, we'll have no control over it. I'd like to avoid getting there in the first place. cheers, --renato
Joachim Durchholz via llvm-dev
2015-Oct-13 11:37 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
Am 13.10.2015 um 12:52 schrieb Renato Golin via llvm-dev:> On 13 October 2015 at 02:42, Chandler Carruth via llvm-dev > <llvm-dev at lists.llvm.org> wrote: >> 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. > > Hi Chandler, > > I agree we need such guidelines, and I truly believe you're not trying > to promote which hunts, so maybe some of the text needs to be toned > down a bit. > > Following some of the comments, it would be good to see the > annonymised result of your research, if at all possible. I understand > some descriptions might uniquely identify people. :) > > I also agree that some descriptions are too verbose, and trying to be > exhaustive, whereas any list will be incomplete, we might just as well > be short and meaningful. I don't think we need to be legal here, since > LLVM spans across so many countries, you won't be able to be free from > all of their idiosyncrasies. > > >> - *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 sums up well. The rest is just outlining behaviours that occur > with extremely low frequencies on this community, some of which I have > never seen. > > Another important thing to mention is the use of the English language > as an international communication protocol. > > I haven't done the maths, but I believe most of the LLVM developers > don't speak English as their native tongue. Moreover, even between > English speaking countries, what's normal for some, is offensive for > others. This is at the core of any open source community and cannot be > ignored. > > Therefore, we need a special mention for people that do get offended > to first, check with the offender to make sure there is intentional > harm, then chose between trying to solve on your own *privately*, or > reporting the case, as outlined by this document. Even the most > "obvious" offences may end up as just using the wrong English word.I have seen several occasions of wrong English word, but this was never a problem in itself. I guess non-native English speakers already know how easy it is to misunderstand words, so they account for that already. English being as diverse culturally as it is, I guess even native English speakers already know this. I wouldn't put that into the code of conduct but in the Tips & Tricks for Successful Community Interaction text.> Cultural differences are important, and if we start kicking people out > you may end up with contributors from a single "social style", say, > only "politically correct" people. Of course, this is a balance, and > the threshold is arbitrary. That's why I propose to encourage people > to resolve matters personally first, and try to identify malice before > reporting.Just curious: Do people ever do it the other way around?>> 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. > > Isn't this a bit too much? I mean, was there *ever* a case that people > were in any physical danger?I'm aware of such things happening in social projects, but not in any technical one. Maybe because perceived personal stakes are higher in a social context.> I think mentioning it once is ok, but you already have a bullet below > on this topic, I don't think we need a whole paragraph for that, too.In particular, dwelling on the topic much gives an impression of LLVM being a community that needs a detailed response to physical threats. I wouldn't want to give that impression even if that were the case, to avoid attracting the types that like a more violent community.>> Once the working group has a complete account of the events they will make a >> decision as to how to respond. > > How is this decision made? Will the accused be involved in all cases? > Can the accused defend him/herself before being judged? > > I'd normally assume so, but the following paragraph worries me: > >> 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. > > Here, you're separating what you can do with and without the right of > defence, as an executor. > > It may be a way to avoid bureaucracy and get to the point, but it also > gives a lot of power to a foundation whose members were not voted, nor > chosen by the community in the first place. > > I don't believe this is in the best interest of the community, since > the community has no say in it, nor control over it. > > If at least the reporting committee's members were interested > volunteers, or voted representatives, then it'd be a matter of > replacing them if they abuse of power. Currently, we have no such > mechanism, nor guarantees that due diligence will be equivalent for > members of the public versus members of the Foundation. > > I'm not saying it will, I'm just saying that if if does happen, we'll > have no control over it. I'd like to avoid getting there in the first > place.Ultimately the buck will stop somewhere. If it's delegated back to the community via voting, it will promote election campaigns - remember: Where there's an office to hold, there's somebody who wants to hold it just to be important, not because that somebody is particularly suited for the job. As long as the committee remains unimportant, things will be fine. As soon as the committee becomes important, the LLVM project has already degenerated into a snake pit, and is likely to fork anyway. So it may be undemocratic, but people can easily fork the situation, something that you can't do in a state. Just my 2 cents. Regards, Jo
David Chisnall via llvm-dev
2015-Oct-13 11:55 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
On 13 Oct 2015, at 02:42, Chandler Carruth via llvm-dev <llvm-dev at lists.llvm.org> wrote:> > If you have questions, please see feel free to contact the LLVM Foundation Code of Conduct Advisory Committee by emailing conduct at llvm.org.My main concern with this document is that it is appointing the LLVM Foundation Code of Conduct Advisory Committee as the arbiters and judges (with enforcement powers) over the LLVM community, yet does not provide any indication of: - Who these people are. - How the LLVM community will select them (I presume that they are not intended to be externally imposed, as to have any moral authority over the community they would have to be supported by the community). - How often they will change, what the term limits are, and so on. - What their oversight mechanism is (it appears that the only appeal to rulings of the committee is to the committee itself, which seems rife for abuse). The LLVM Foundation itself has existed now for over a year and has largely failed to engage with the community. This is clearly not a good model for an committee that is intended to oversee (and enforce!) the behaviour of a community. David
Aaron Ballman via llvm-dev
2015-Oct-13 12:27 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
On Tue, Oct 13, 2015 at 6:52 AM, Renato Golin via llvm-dev <llvm-dev at lists.llvm.org> wrote:> On 13 October 2015 at 02:42, Chandler Carruth via llvm-dev > <llvm-dev at lists.llvm.org> wrote: >> 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. > > Hi Chandler, > > I agree we need such guidelines, and I truly believe you're not trying > to promote which hunts, so maybe some of the text needs to be toned > down a bit. > > Following some of the comments, it would be good to see the > annonymised result of your research, if at all possible. I understand > some descriptions might uniquely identify people. :) > > I also agree that some descriptions are too verbose, and trying to be > exhaustive, whereas any list will be incomplete, we might just as well > be short and meaningful. I don't think we need to be legal here, since > LLVM spans across so many countries, you won't be able to be free from > all of their idiosyncrasies. > > >> - *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 sums up well. The rest is just outlining behaviours that occur > with extremely low frequencies on this community, some of which I have > never seen. > > Another important thing to mention is the use of the English language > as an international communication protocol. > > I haven't done the maths, but I believe most of the LLVM developers > don't speak English as their native tongue. Moreover, even between > English speaking countries, what's normal for some, is offensive for > others. This is at the core of any open source community and cannot be > ignored. > > Therefore, we need a special mention for people that do get offended > to first, check with the offender to make sure there is intentional > harm, then chose between trying to solve on your own *privately*, or > reporting the case, as outlined by this document. Even the most > "obvious" offences may end up as just using the wrong English word. > > Cultural differences are important, and if we start kicking people out > you may end up with contributors from a single "social style", say, > only "politically correct" people. Of course, this is a balance, and > the threshold is arbitrary. That's why I propose to encourage people > to resolve matters personally first, and try to identify malice before > reporting. > > >> 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. > > Isn't this a bit too much? I mean, was there *ever* a case that people > were in any physical danger?I don't know about the LLVM community specifically, but given the number of face to face events, and the fact that alcohol is sometimes involved near them, the opportunity for physical danger certainly exists. Reminding people "contact LEO first" isn't a bad thing, especially for anyone visiting from an area of the world where LEO may not always be the appropriate first choice. ~Aaron> > I think mentioning it once is ok, but you already have a bullet below > on this topic, I don't think we need a whole paragraph for that, too. > > >> 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. > > s/hotel/venue/ > > >> Once the working group has a complete account of the events they will make a >> decision as to how to respond. > > How is this decision made? Will the accused be involved in all cases? > Can the accused defend him/herself before being judged? > > I'd normally assume so, but the following paragraph worries me: > > >> 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. > > Here, you're separating what you can do with and without the right of > defence, as an executor. > > It may be a way to avoid bureaucracy and get to the point, but it also > gives a lot of power to a foundation whose members were not voted, nor > chosen by the community in the first place. > > I don't believe this is in the best interest of the community, since > the community has no say in it, nor control over it. > > If at least the reporting committee's members were interested > volunteers, or voted representatives, then it'd be a matter of > replacing them if they abuse of power. Currently, we have no such > mechanism, nor guarantees that due diligence will be equivalent for > members of the public versus members of the Foundation. > > I'm not saying it will, I'm just saying that if if does happen, we'll > have no control over it. I'd like to avoid getting there in the first > place. > > cheers, > --renato > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
Rafael Espíndola via llvm-dev
2015-Oct-13 15:41 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
> - *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, religionHow about "religion or lack thereof"? I know it can be understood to be implicit, but as an atheist I tend feel a bit left out of statements like that. Cheers, Rafael
Robinson, Paul via llvm-dev
2015-Oct-13 15:43 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
> Also, the problem with enumerating all the inacceptable behaviour is > that the text tends to become TL;DR. Which means permanent discomfort: I > never fully read the rules, so I'm never fully sure that I'm not > violating the CoC, nor am I sure whether others violate it. > > In terms of size and complexity, the proposed CoC is shorter than the > typical bulletin board CoC, so it's not bad; however, it think it could > be made more compact.Compactness is a definite virtue. I remember attending a very successful series of science-fiction conventions years ago, where the only formally stated conduct policy was "You kill it, you eat it." More extensive elaboration was deemed to be too prone to over-interpretation by people trying to get away with stuff, without actually providing useful guidance. As a year-round 95% online community, rather than a weekend convention with dozens of physically present staff, LLVM probably does need something a bit more detailed, but if the basic statement can't be reduced to a screenful or so then it's too much. --paulr
Rafael Espíndola via llvm-dev
2015-Oct-13 16:09 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
Btw, one other thing I noticed is that there are no counter examples. I assume the end objective of such a policy is to have more effective communications, so it would be nice to have some examples to avoid it instead hampering communications by pushing unnecessary political correctness. Some quick counter examples that come to mind as not being agains a reasonable code of conduct: * Small, on the side jokes are OK if people are not offended. I don't think any Canadian is offended by "Canadian Cross compiler". If I am wrong, complain. Assume an honest mistake instead of intention to offend. * In a similar case, "cargo cult" refers to a set of existing beliefs. Using that in the context of software development is not intended as an offence to, for example, any llvm developer that believes in John Frum. * Probably most important, terseness in relevant comments about *code* is OK. Saying that something is "wrong", "undesirable" or "broken" is clearest way to convey that information. Cheers, Rafael
Renato Golin via llvm-dev
2015-Oct-13 16:21 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
On 13 October 2015 at 16:41, Rafael Espíndola <llvm-dev at lists.llvm.org> wrote:>> - *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 > > How about "religion or lack thereof"? I know it can be understood to > be implicit, but as an atheist I tend feel a bit left out of > statements like that.+1!!!! Well, since we're being picky... :D race: last time I checked, we're all members of the same race, homo sapiens sapiens. national origin vs. immigration status: the former is already covered by "culture" for everything that matters, the latter is very specific to one culture. social "class": this is too Marxist*, we should use "social status", since everything is blurred nowadays. family status: really?! sexual orientation vs. sex vs gender identity and expression: what?! size: really? is this the PC version of "weight"? * I don't mean "socialist", nor "communist", but I mean the strict division of classes. cheers, --renato PS: I hope you all understand that I mean no offence. I may have to put that as my signature from now on, though, or risk being kicked out without notice... :)
Renato Golin via llvm-dev
2015-Oct-13 16:34 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
On 13 October 2015 at 17:09, Rafael Espíndola <llvm-dev at lists.llvm.org> wrote:> I assume the end objective of such a policy is to have more effective > communications, so it would be nice to have some examples to avoid it > instead hampering communications by pushing unnecessary political > correctness.+2!!!> * Small, on the side jokes are OK if people are not offended. I don't > think any Canadian is offended by "Canadian Cross compiler". If I am > wrong, complain. Assume an honest mistake instead of intention to > offend.You mean the cross compiler that instead of saying "error:" says, "sorry sir, you may have made a mistake here:"?> * In a similar case, "cargo cult" refers to a set of existing beliefs. > Using that in the context of software development is not intended as > an offence to, for example, any llvm developer that believes in John > Frum.I have no idea what that is, but I find it interesting that Google renamed "bro" to "br" for the compression file because "bro" was too "offensive". I found "bro" quite ingenuous.> * Probably most important, terseness in relevant comments about *code* > is OK. Saying that something is "wrong", "undesirable" or "broken" is > clearest way to convey that information.+1 I'll add another point that a friend just made about this subject: * Calling out bad behaviour on people is a way to invoke self-reflect, not to offend. If I say you're being coercive, it's probably because I felt pushed without technical reasons, so you may need to evaluate your behaviour, instead of calling out "bad word!" and applying the code of conduct to ban me. If we create rules for *apparent* abusive behaviour but don't take into account for the *implicit* ones, we will end up punishing the wrong people. I always though of the LLVM community as relaxed and understanding, and to see that we *need* such strict rules makes me sad... I was still hoping we didn't... cheers, --renato
Tanya Lattner via llvm-dev
2015-Oct-13 17:17 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
> On Oct 13, 2015, at 4:55 AM, David Chisnall via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > On 13 Oct 2015, at 02:42, Chandler Carruth via llvm-dev <llvm-dev at lists.llvm.org> wrote: >> >> If you have questions, please see feel free to contact the LLVM Foundation Code of Conduct Advisory Committee by emailing conduct at llvm.org. > > My main concern with this document is that it is appointing the LLVM Foundation Code of Conduct Advisory Committee as the arbiters and judges (with enforcement powers) over the LLVM community, yet does not provide any indication of: > > - Who these people are. > > - How the LLVM community will select them (I presume that they are not intended to be externally imposed, as to have any moral authority over the community they would have to be supported by the community). > > - How often they will change, what the term limits are, and so on. > > - What their oversight mechanism is (it appears that the only appeal to rulings of the committee is to the committee itself, which seems rife for abuse).I agree that there are many details to be worked out here and are open to suggestions as to the selection process, etc. But, from a purely high level description, this committee would be made up members of the community (including some from the LLVM Foundation board). The idea is to get a good group of people that represent the diversity of our community and have the community’s best interest at heart.> > The LLVM Foundation itself has existed now for over a year and has largely failed to engage with the community. This is clearly not a good model for an committee that is intended to oversee (and enforce!) the behaviour of a community.Can you explain what you mean by this? What are your expectations as to engagement? Thanks, Tanya
Chris Lattner via llvm-dev
2015-Oct-13 17:32 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
> On Oct 13, 2015, at 4:55 AM, David Chisnall via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > On 13 Oct 2015, at 02:42, Chandler Carruth via llvm-dev <llvm-dev at lists.llvm.org> wrote: >> >> If you have questions, please see feel free to contact the LLVM Foundation Code of Conduct Advisory Committee by emailing conduct at llvm.org. > > My main concern with this document is that it is appointing the LLVM Foundation Code of Conduct Advisory Committee as the arbiters and judges (with enforcement powers) over the LLVM community, yet does not provide any indication of: > > - Who these people are.It isn’t the point of the code of conduct to list this, but you can find the specific list of people here: http://blog.llvm.org/2014/04/the-llvm-foundation.html This also outlines the scope of the foundation.> - How the LLVM community will select them (I presume that they are not intended to be externally imposed, as to have any moral authority over the community they would have to be supported by the community). > > - How often they will change, what the term limits are, and so on. > > - What their oversight mechanism is (it appears that the only appeal to rulings of the committee is to the committee itself, which seems rife for abuse).None of this is relevant to the Code of Conduct, it is about the Foundation. If you are interested, Tanya can provide you with this information, but I’d suggest starting a *new* thread to discuss it.> The LLVM Foundation itself has existed now for over a year and has largely failed to engage with the community. This is clearly not a good model for an committee that is intended to oversee (and enforce!) the behaviour of a community.You seem to have a misunderstanding about what the LLVM Foundation is about. It isn’t about making technical decisions (we have code owners for that). It is designed to handle administration of the project and infrastructure, including planning and rolling out of the devmtgs. -Chris
Chandler Carruth via llvm-dev
2015-Oct-13 17:59 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
On Tue, Oct 13, 2015 at 4:55 AM David Chisnall <David.Chisnall at cl.cam.ac.uk> wrote:> On 13 Oct 2015, at 02:42, Chandler Carruth via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > > > > If you have questions, please see feel free to contact the LLVM > Foundation Code of Conduct Advisory Committee by emailing conduct at llvm.org > . > > My main concern with this document is that it is appointing the LLVM > Foundation Code of Conduct Advisory Committee as the arbiters and judges > (with enforcement powers) over the LLVM communityThis is an incredibly important point, and I'm sorry that it got lost. Not sure if it just got lost in editing or it just wasn't clear. We have *not* appointed any such committee at this point. The goal was to first get the basis for handling these issues in place, and *then* to work out the logistics of establishing the committee. We will do that in as open and transparent of a way as possible, and folks will be very much able to comment on all matters of this. We can also *change* the particular processes for the logistics here as we go along and make sure they are functioning effectively. I'll also try to give at least my perspective on some of the points you make below:> , yet does not provide any indication of: > > - Who these people are. >I think that this will of course be part of actually establishing the committee.> > - How the LLVM community will select them (I presume that they are not > intended to be externally imposed, as to have any moral authority over the > community they would have to be supported by the community). >I don't think that their job will be to impose moral authority, I think the code of conduct is the basis they would be required to cite for any decision. Their role should be much more focused on understanding what has happened, and ensuring it is responded to. I also think that is called out in the document. This is not to say that the individuals would not need to be trusted by the community -- they absolutely would need the trust of folks to work very hard to make reasonable decisions here.> > - How often they will change, what the term limits are, and so on. > > - What their oversight mechanism is (it appears that the only appeal to > rulings of the committee is to the committee itself, which seems rife for > abuse). >The appeal is to the board of the Foundation. I don't expect the board to *be* the committee here, quite the opposite.> > The LLVM Foundation itself has existed now for over a year and has largely > failed to engage with the community. This is clearly not a good model for > an committee that is intended to oversee (and enforce!) the behaviour of a > community. >I'm surprised and saddened to hear you say this. I also don't particularly agree. I have interacted with almost every member of the foundation board as a regular course of interacting with the community. The foundation is completely handling the planning and running of the developer's meeting. Certainly, we're still in the infancy of figuring this stuff out, but I don't see a problematic lack of engagement. If there is little need for the board to engage with the community actively, that is because this community is (IMO) very healthy and has few needs in that regard. I actually expect the code of conduct to work much the same. I think the community *already* behaves excellently, and look at this as a way to ensure that going forward and advertise that to potential new-comers. -Chandler -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151013/e6451eae/attachment.html>
Owen Anderson via llvm-dev
2015-Oct-13 18:13 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
Thanks Chandler! I agree with and support this effort. —Owen> On Oct 12, 2015, at 6:42 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 <mailto: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 <mailto: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 <mailto: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 <mailto: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 <mailto: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/6f9e143e/attachment-0001.html>
Joachim Durchholz via llvm-dev
2015-Oct-13 18:14 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
Am 13.10.2015 um 17:41 schrieb Rafael Espíndola via llvm-dev:> How about "religion or lack thereof"? I know it can be understood to > be implicit, but as an atheist I tend feel a bit left out of > statements like that.Even if that was meant light-heartedly, that's exactly the kind of nitpicking an offender would try to apply in his/her favor. And that's the reason why I have such a strong bias against trying to cover all bases - the more text you have, the more interpretatory loopholes there are. I believe one of the reasons that people tend to draw up overspecific CoCs is that they want to make sure that even an evicted offender can't argue against the eviction. It's not going to help in this way though. (Almost?) all offenders believe they're totally in their right acting like they do.
Chandler Carruth via llvm-dev
2015-Oct-13 18:17 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
While I'm replying to Renato here, that is mostly because there are too many replies on this subject, and too many of them have wandered off into other topics. I want to specifically address the concerns with verbosity. For example: On Tue, Oct 13, 2015 at 3:52 AM Renato Golin <renato.golin at linaro.org> wrote:> I also agree that some descriptions are too verbose, and trying to be > exhaustive, whereas any list will be incomplete, we might just as well > be short and meaningful.And very relatedly:> > - *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 sums up well. The rest is just outlining behaviours that occur > with extremely low frequencies on this community, some of which I have > never seen. >This is a *specific* thing that is called out time and again as important to having an effective code of conduct in all of the research I have done on the subject. Here is a really good, and fairly canonical source: http://adainitiative.org/2014/02/18/howto-design-a-code-of-conduct-for-your-community/ This article gives a lot of the core reason why details are often extremely important here. Now, I understand that for many of you (in fact, I suspect for the overwhelming majority of you!) these details aren't necessary. As I have said before, the LLVM community has been very effectively keeping its forums civil and polite for a long time. But I think we should consider that having a code of conduct and having it be detailed might be important for *others*. People who have serious concerns about participating safely in a community should have some way to be reassured about what is expected within our community. A detailed and documented code of conduct is the best way I know of to advertise that this is a safe and welcoming space. This isn't just a hypothetical either. I personally struggled to feel safe within the LLVM community many years ago, and I have had many people specifically call out how excited they are to see even a *chance* that the LLVM community will explicitly take a stance here. Another (smaller) benefit that a detailed code of conduct can provide is a reminder. While I try to behave to the best of my abilities, sometimes I have needed a reminder to cool down a bit. I suspect others have had similar experiences. Having some details can help us consider things that we might not usually consider on a day-to-day basis. So I am very strongly in favor of a reasonable amount of clear and detailed wording. We could try to word smith a slightly more compact version, but I think that we would have very minimal improvements without sacrificing the goals above, especially those linked in the article. Instead, what I strongly suggest is that we stick with wording such as what is proposed, that is *very* close to the Django code of conduct, which has been explicitly called out as effective and useful by many people including the Ada Initiative. We don't need to invent good words here. -Chandler -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151013/7be90017/attachment.html>
Michael Gottesman via llvm-dev
2015-Oct-13 20:22 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
Chandler, thanks for taking up this mantle and driving the effort. +1. Michael> On Oct 12, 2015, at 6:42 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 <mailto: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 <mailto: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 <mailto: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 <mailto: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 <mailto: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/7142a06e/attachment-0001.html>
Philip Reames via llvm-dev
2015-Oct-13 21:45 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
+1 to the general idea of a CoC A couple of specific thoughts: 1) It would have been nice for this not to appeared out of thin air. In an ideal world, a previous update would have mentioned ongoing thought and research in this area. 2) Several folks have mentioned that they'd like to see this less verbose. I disagree, but I do think that it sometimes comes across as focusing too much on the details. It might be good to summarize the general principals, and then list for the more legalistic bits as notes or footnotes. Make it clear that a list isn't the *point*, but it does help to clarify. 3) I really liked the suggestion down thread of reframing "reporting" as "asking for moderation". I think it needs to be clear that there can be consequences, but focusing on resolving the situation at hand seems like a better starting point for most discussions. Philip On 10/12/2015 06:42 PM, Chandler Carruth via llvm-dev 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 <mailto: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 <mailto: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 > <mailto: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 > <mailto: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 <mailto: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/bdd8f31e/attachment.html>
Chandler Carruth via llvm-dev
2015-Oct-13 22:55 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
On Tue, Oct 13, 2015 at 2:45 PM Philip Reames <listmail at philipreames.com> wrote:> +1 to the general idea of a CoC > > A couple of specific thoughts: > > 1) It would have been nice for this not to appeared out of thin air. In > an ideal world, a previous update would have mentioned ongoing thought and > research in this area. >Well, water and bridge and all. =/ I understand the challenges of this coming out of thin air, but I also don't know how to have proceeded differently. I didn't really have a useful intermediate state to share or I would have. =/ It is definitely something to avoid where possible, I'm just not sure it was realistically possible in this instance. 2) Several folks have mentioned that they'd like to see this less verbose.> I disagree, but I do think that it sometimes comes across as focusing too > much on the details. It might be good to summarize the general principals, > and then list for the more legalistic bits as notes or footnotes. Make it > clear that a list isn't the *point*, but it does help to clarify. >I feel like the first two paragraphs tried to do exactly this. Is there same specific part that didn't work for you? I think the challenge here is that most ideas I have end up making the early sections nearly as long. The list of principles is already formatted to facilitate skimming and so I feel like this is a pretty good compromise on the verbosity front. If you have specific ideas that you think would be better, I'm all ears.> 3) I really liked the suggestion down thread of reframing "reporting" as > "asking for moderation". I think it needs to be clear that there can be > consequences, but focusing on resolving the situation at hand seems like a > better starting point for most discussions. >There is a very important problem with calling this moderation. That implies that the event has to *continue* and also implies some levels of necessary on-going interaction. For a broad range of the ways that these things can go wrong, it is really important that the person who has become uncomfortable be able to leave the situation and feel safe. Moderation and mediation don't provide that kind of safety for some, and I think we need to design this to be supportive of the most challenging cases. Of course, when moderation or mediation are the appropriate *responses* to a report, I would hope they are used. Perhaps it would be helpful to add them to the list? I'm imagining an added bullet point to the "Responses may include" section along the lines of: * Providing either moderation or mediation to ongoing interactions (where appropriate and safe). Thoughts? -Chandler -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151013/da48241d/attachment.html>
James Y Knight via llvm-dev
2015-Oct-13 23:08 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
+1 to using basically verbatim the existing Django Code of Conduct. The Django CoC expresses the desired sentiment well, and does a Good Enough job on the details. It also seems well respected in general. I'd suggest that we all resist the urge to disuss basically irrelevant minutae (such as the exact list of things that are written in the "includes, but is not limited to" list), adopt it, and move on to more fun activities. I'd like to repost what someone said on a thread about adopting a Code of Conduct in Twisted, because it does a better job of saying this than I can. Clayton Daley wrote:> Not that I'm a heavy contributor, but: > - A CoC is like a ToS in many ways. They rarely get read until there's > a problem. > - A CoC is like a License in many ways. They should be pretty standard > infrastructure. >I think both of these facts argue for joining Twisted to an existing CoC.> No one goes around reading the CoC for every group they participate in. We > increase the odds that someone reads our CoC if they get leverage (one > read, lots of groups) and we get spill-over (they read the CoC for another > group and thus know ours).To those saying it's too long: I think it looks a lot longer as a wall of ReStructured Text in email, than when read formatted. Reading it here https://www.djangoproject.com/conduct/ it seems a reasonable length, with a nicely bolded TL;DR list for those who don't want to sweat the details. One other thing: I don't think it'll be terribly useful to debate about whether this is the MOST IMPORTANT thing for the community to do. There certainly are other issues facing the community e.g. around making it easy for newcomers to get patches reviewed/submitted. Maybe lack of CoC isn't the largest problem facing to contributors, but IMO it's definitely a positive step. And, one that isn't terribly difficult to accomplish: it's mostly just writing down expectations for professional behavior that basically everyone follows already. The only bit that seems to me really needs fleshing out is what the process for appointing the CoC committee is. I'd sort of assume based on what other organizations do that the LLVM Foundation Board would be responsible for appointing the Committee, but that the Board and the Committe would not be one and the same. Of course, the LLVM Foundation Board *really* must be a transparent, trusted, and respected group in the community in order to be able to properly take on that role. Based on the board members (at least, from the 2014 announcement), it seems to me that there should be no intrinsic problem there...but getting the "trivial" things done like posting the bylaws and meeting notes on the website is really quite important to engender such trust. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151013/563ed5c6/attachment.html>
Tanya Lattner via llvm-dev
2015-Oct-13 23:11 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
> On Oct 13, 2015, at 2:45 PM, Philip Reames via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > +1 to the general idea of a CoC > > A couple of specific thoughts: > > 1) It would have been nice for this not to appeared out of thin air. In an ideal world, a previous update would have mentioned ongoing thought and research in this area. >Some back story here. I have gotten many requests through email and at the developer meetings about having a Code of Conduct and specifically having one for LLVM Developer Meetings. It has been discussed at many of the LLVM socials as well. I can see in hindsight this might appear to be coming out of nowhere for some, but it really is coming from a need we (the board) heard from the community. Thanks, Tanya> 2) Several folks have mentioned that they'd like to see this less verbose. I disagree, but I do think that it sometimes comes across as focusing too much on the details. It might be good to summarize the general principals, and then list for the more legalistic bits as notes or footnotes. Make it clear that a list isn't the *point*, but it does help to clarify. > > 3) I really liked the suggestion down thread of reframing "reporting" as "asking for moderation". I think it needs to be clear that there can be consequences, but focusing on resolving the situation at hand seems like a better starting point for most discussions. > > Philip > > On 10/12/2015 06:42 PM, Chandler Carruth via llvm-dev 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 <mailto:conduct at llvm.org>conduct at llvm.org <mailto: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 <mailto: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 <mailto: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 <mailto: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 <mailto: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 <mailto:llvm-dev at lists.llvm.org> >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev <http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev> > > _______________________________________________ > 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/3c19fbf6/attachment.html>
Eric Christopher via llvm-dev
2015-Oct-13 23:12 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
Thank you very much for saying this in just this way James. I've been flailing and trying to respond all day and this encompasses my thoughts perfectly. -eric On Tue, Oct 13, 2015 at 4:08 PM James Y Knight via llvm-dev < llvm-dev at lists.llvm.org> wrote:> +1 to using basically verbatim the existing Django Code of Conduct. The > Django CoC expresses the desired sentiment well, and does a Good Enough job > on the details. It also seems well respected in general. > > I'd suggest that we all resist the urge to disuss basically irrelevant > minutae (such as the exact list of things that are written in the "includes, > but is not limited to" list), adopt it, and move on to more fun > activities. I'd like to repost what someone said on a thread about adopting > a Code of Conduct in Twisted, because it does a better job of saying this > than I can. Clayton Daley wrote: > >> Not that I'm a heavy contributor, but: >> - A CoC is like a ToS in many ways. They rarely get read until >> there's a problem. >> - A CoC is like a License in many ways. They should be pretty >> standard infrastructure. >> > > > I think both of these facts argue for joining Twisted to an existing CoC. >> No one goes around reading the CoC for every group they participate in. We >> increase the odds that someone reads our CoC if they get leverage (one >> read, lots of groups) and we get spill-over (they read the CoC for another >> group and thus know ours). > > > To those saying it's too long: I think it looks a lot longer as a wall of > ReStructured Text in email, than when read formatted. Reading it here > https://www.djangoproject.com/conduct/ it seems a reasonable length, with > a nicely bolded TL;DR list for those who don't want to sweat the details. > > One other thing: I don't think it'll be terribly useful to debate about > whether this is the MOST IMPORTANT thing for the community to do. There > certainly are other issues facing the community e.g. around making it easy > for newcomers to get patches reviewed/submitted. Maybe lack of CoC isn't > the largest problem facing to contributors, but IMO it's definitely a > positive step. And, one that isn't terribly difficult to accomplish: it's > mostly just writing down expectations for professional behavior that > basically everyone follows already. > > The only bit that seems to me really needs fleshing out is what the > process for appointing the CoC committee is. I'd sort of assume based on > what other organizations do that the LLVM Foundation Board would be > responsible for appointing the Committee, but that the Board and the > Committe would not be one and the same. > > Of course, the LLVM Foundation Board *really* must be a transparent, > trusted, and respected group in the community in order to be able to > properly take on that role. Based on the board members (at least, from the > 2014 announcement), it seems to me that there should be no intrinsic > problem there...but getting the "trivial" things done like posting the > bylaws and meeting notes on the website is really quite important to > engender such trust. > _______________________________________________ > 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/e5df67d8/attachment.html>
Jim Grosbach via llvm-dev
2015-Oct-13 23:14 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
Hey Chandler, This is a welcome development. It’s obvious there’s been a lot of thought and effort put into the CoC, by yourself and others. Thank you. I’m encouraged by the level of engagement by so many of our community members in the broader thread. There are obviously issues to work through, both of content and of process, but I see that as a good thing. The community is discussing and working together to figure out what works for us. So my question is a simple one. How can I help? Thanks, Jim> On Oct 12, 2015, at 6:42 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 <mailto: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 <mailto: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 <mailto: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 <mailto: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 <mailto: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/76da8e1f/attachment-0001.html>
Reid Kleckner via llvm-dev
2015-Oct-13 23:25 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
First, +1 for a code of conduct along these lines. The LLVM community has always tried to uphold the ideals expressed by the standard, so we might as well make it a statement. I also want to echo what James said about the value of a standard CoC. The burden for making edits should be really high. I don't see how we are likely to substantially improve on this document by attempting to copy edit it by committee. That said, please continue to provide general feedback! If multiple people have the same issue with the CoC, that's something we need to know. On Tue, Oct 13, 2015 at 4:08 PM, James Y Knight via llvm-dev < llvm-dev at lists.llvm.org> wrote:> +1 to using basically verbatim the existing Django Code of Conduct. The > Django CoC expresses the desired sentiment well, and does a Good Enough job > on the details. It also seems well respected in general. > > I'd suggest that we all resist the urge to disuss basically irrelevant > minutae (such as the exact list of things that are written in the "includes, > but is not limited to" list), adopt it, and move on to more fun > activities. I'd like to repost what someone said on a thread about adopting > a Code of Conduct in Twisted, because it does a better job of saying this > than I can. Clayton Daley wrote: > >> Not that I'm a heavy contributor, but: >> - A CoC is like a ToS in many ways. They rarely get read until >> there's a problem. >> - A CoC is like a License in many ways. They should be pretty >> standard infrastructure. >> > > > I think both of these facts argue for joining Twisted to an existing CoC. >> No one goes around reading the CoC for every group they participate in. We >> increase the odds that someone reads our CoC if they get leverage (one >> read, lots of groups) and we get spill-over (they read the CoC for another >> group and thus know ours). > > > To those saying it's too long: I think it looks a lot longer as a wall of > ReStructured Text in email, than when read formatted. Reading it here > https://www.djangoproject.com/conduct/ it seems a reasonable length, with > a nicely bolded TL;DR list for those who don't want to sweat the details. > > One other thing: I don't think it'll be terribly useful to debate about > whether this is the MOST IMPORTANT thing for the community to do. There > certainly are other issues facing the community e.g. around making it easy > for newcomers to get patches reviewed/submitted. Maybe lack of CoC isn't > the largest problem facing to contributors, but IMO it's definitely a > positive step. And, one that isn't terribly difficult to accomplish: it's > mostly just writing down expectations for professional behavior that > basically everyone follows already. > > The only bit that seems to me really needs fleshing out is what the > process for appointing the CoC committee is. I'd sort of assume based on > what other organizations do that the LLVM Foundation Board would be > responsible for appointing the Committee, but that the Board and the > Committe would not be one and the same. > > Of course, the LLVM Foundation Board *really* must be a transparent, > trusted, and respected group in the community in order to be able to > properly take on that role. Based on the board members (at least, from the > 2014 announcement), it seems to me that there should be no intrinsic > problem there...but getting the "trivial" things done like posting the > bylaws and meeting notes on the website is really quite important to > engender such trust. > > _______________________________________________ > 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/69aed38a/attachment.html>
David Blaikie via llvm-dev
2015-Oct-13 23:38 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
Given that there's a degree of echo chamber that the LLVM community/mailing list can have sometimes (only a few people speaking up, but many others with similar or divergent opinions - leading to incorrect assumptions about those unexpressed perspectives) I just wanted to include some agreement here, especially for James's comments as they echo my own pretty well. On Tue, Oct 13, 2015 at 4:08 PM, James Y Knight via llvm-dev < llvm-dev at lists.llvm.org> wrote:> +1 to using basically verbatim the existing Django Code of Conduct. The > Django CoC expresses the desired sentiment well, and does a Good Enough job > on the details. It also seems well respected in general. > > I'd suggest that we all resist the urge to disuss basically irrelevant > minutae (such as the exact list of things that are written in the "includes, > but is not limited to" list), adopt it, and move on to more fun > activities. I'd like to repost what someone said on a thread about adopting > a Code of Conduct in Twisted, because it does a better job of saying this > than I can. Clayton Daley wrote: > >> Not that I'm a heavy contributor, but: >> - A CoC is like a ToS in many ways. They rarely get read until >> there's a problem. >> - A CoC is like a License in many ways. They should be pretty >> standard infrastructure. >> > > > I think both of these facts argue for joining Twisted to an existing CoC. >> No one goes around reading the CoC for every group they participate in. We >> increase the odds that someone reads our CoC if they get leverage (one >> read, lots of groups) and we get spill-over (they read the CoC for another >> group and thus know ours). > >Especially this ^ (consistency is probably valuable enough to justify avoiding too much wordsmithing/nitpicking, but if there are fundamental problems with the document, that's worth discussing)> > To those saying it's too long: I think it looks a lot longer as a wall of > ReStructured Text in email, than when read formatted. Reading it here > https://www.djangoproject.com/conduct/ it seems a reasonable length, with > a nicely bolded TL;DR list for those who don't want to sweat the details. > > One other thing: I don't think it'll be terribly useful to debate about > whether this is the MOST IMPORTANT thing for the community to do. There > certainly are other issues facing the community e.g. around making it easy > for newcomers to get patches reviewed/submitted. Maybe lack of CoC isn't > the largest problem facing to contributors, but IMO it's definitely a > positive step. And, one that isn't terribly difficult to accomplish: it's > mostly just writing down expectations for professional behavior that > basically everyone follows already. >and this ^ (it doesn't matter if it's the most important thing, it's a thing with value & people willing to do it - this is how much of LLVM development gets done, I don't see a difference here)> > The only bit that seems to me really needs fleshing out is what the > process for appointing the CoC committee is. I'd sort of assume based on > what other organizations do that the LLVM Foundation Board would be > responsible for appointing the Committee, but that the Board and the > Committe would not be one and the same. > > Of course, the LLVM Foundation Board *really* must be a transparent, > trusted, and respected group in the community in order to be able to > properly take on that role. Based on the board members (at least, from the > 2014 announcement), it seems to me that there should be no intrinsic > problem there...but getting the "trivial" things done like posting the > bylaws and meeting notes on the website is really quite important to > engender such trust. > > _______________________________________________ > 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/2d752dd8/attachment.html>
Chandler Carruth via llvm-dev
2015-Oct-13 23:46 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
On Tue, Oct 13, 2015 at 4:14 PM Jim Grosbach <grosbach at apple.com> wrote:> Hey Chandler, > > This is a welcome development. It’s obvious there’s been a lot of thought > and effort put into the CoC, by yourself and others. Thank you. > > I’m encouraged by the level of engagement by so many of our community > members in the broader thread. There are obviously issues to work through, > both of content and of process, but I see that as a good thing. The > community is discussing and working together to figure out what works for > us. > > So my question is a simple one. How can I help? >What would help (IMO) is pointing out any specific suggestions of improvements and why they're really important to have, while keeping in mind James' point about there being significant value in following convention here. I'm also interested in separating out some things that it is OK to iterate on and some things that we need to get right out of the gate. For example, I think the reporting stuff (especially the logistics of it) can be iterated on a lot. -Chandler -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151013/93ff7701/attachment.html>
Robinson, Paul via llvm-dev
2015-Oct-14 00:07 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
I was in the "it's too long" camp and continue to think so even after looking at the web rendering, but I see the value of consistency. I might like to see the "includes but is not limited to" lists factored out so that the bullet points are crisper, but maybe that's just me. I'm thinking of the CoC as more like the Coding Standard. Even if we already had a consistent style, it can be worthwhile actually writing it down. I'm not super fussed about exactly what it says. And I do think it's worthwhile writing it down. The easiest sub-groups to identify in a typical gathering of humans are male/female. How many women were at my first LLVM dev meeting in 2011? I remember being struck by how few; I remember trying to count, and while I don't remember the total I am certain it was under 10%. (CPPCon 2014 was much worse, as if that could be any consolation.) That's really not an improvement over how things were when I started in this business 30+ years ago, and that's pretty depressing as I contemplate the industry that my college-student daughter is probably headed for. I don't know that an explicit CoC would help, but it surely can't hurt. --paulr From: llvm-dev [mailto:llvm-dev-bounces at lists.llvm.org] On Behalf Of James Y Knight via llvm-dev Sent: Tuesday, October 13, 2015 4:08 PM To: Chandler Carruth Cc: llvm-dev Subject: Re: [llvm-dev] RFC: Introducing an LLVM Community Code of Conduct +1 to using basically verbatim the existing Django Code of Conduct. The Django CoC expresses the desired sentiment well, and does a Good Enough job on the details. It also seems well respected in general. I'd suggest that we all resist the urge to disuss basically irrelevant minutae (such as the exact list of things that are written in the "includes, but is not limited to" list), adopt it, and move on to more fun activities. I'd like to repost what someone said on a thread about adopting a Code of Conduct in Twisted, because it does a better job of saying this than I can. Clayton Daley wrote: Not that I'm a heavy contributor, but: - A CoC is like a ToS in many ways. They rarely get read until there's a problem. - A CoC is like a License in many ways. They should be pretty standard infrastructure. I think both of these facts argue for joining Twisted to an existing CoC. No one goes around reading the CoC for every group they participate in. We increase the odds that someone reads our CoC if they get leverage (one read, lots of groups) and we get spill-over (they read the CoC for another group and thus know ours). To those saying it's too long: I think it looks a lot longer as a wall of ReStructured Text in email, than when read formatted. Reading it here https://www.djangoproject.com/conduct/ it seems a reasonable length, with a nicely bolded TL;DR list for those who don't want to sweat the details. One other thing: I don't think it'll be terribly useful to debate about whether this is the MOST IMPORTANT thing for the community to do. There certainly are other issues facing the community e.g. around making it easy for newcomers to get patches reviewed/submitted. Maybe lack of CoC isn't the largest problem facing to contributors, but IMO it's definitely a positive step. And, one that isn't terribly difficult to accomplish: it's mostly just writing down expectations for professional behavior that basically everyone follows already. The only bit that seems to me really needs fleshing out is what the process for appointing the CoC committee is. I'd sort of assume based on what other organizations do that the LLVM Foundation Board would be responsible for appointing the Committee, but that the Board and the Committe would not be one and the same. Of course, the LLVM Foundation Board *really* must be a transparent, trusted, and respected group in the community in order to be able to properly take on that role. Based on the board members (at least, from the 2014 announcement), it seems to me that there should be no intrinsic problem there...but getting the "trivial" things done like posting the bylaws and meeting notes on the website is really quite important to engender such trust. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151014/2b337479/attachment.html>
Hal Finkel via llvm-dev
2015-Oct-14 00:37 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
----- Original Message -----> From: "James Y Knight via llvm-dev" <llvm-dev at lists.llvm.org> > To: "Chandler Carruth" <chandlerc at llvm.org> > Cc: "llvm-dev" <llvm-dev at lists.llvm.org> > Sent: Tuesday, October 13, 2015 6:08:08 PM > Subject: Re: [llvm-dev] RFC: Introducing an LLVM Community Code of Conduct >...> > > The only bit that seems to me really needs fleshing out is what the > process for appointing the CoC committee is. I'd sort of assume > based on what other organizations do that the LLVM Foundation Board > would be responsible for appointing the Committee, but that the > Board and the Committe would not be one and the same. > > Of course, the LLVM Foundation Board *really* must be a transparent, > trusted, and respected group in the community in order to be able to > properly take on that role. Based on the board members (at least, > from the 2014 announcement), it seems to me that there should be no > intrinsic problem there...but getting the "trivial" things done like > posting the bylaws and meeting notes on the website is really quite > important to engender such trust.I'd like to second this; transparency is very important here. That's properly the subject of a different thread. However, I'd also like to highlight David's comments here:> Note that we can do this in FreeBSD, because we have an elected Core > Team. The FreeBSD Foundation has spent the last 15 or so years > finding its current role (and has offered the LLVM Foundation the > benefit of this experience). Unlike the Foundation, which is an > independent entity from the project (though one that consults with > Core on a regular basis and provides valuable services to the > project), Core is 100% accountable to the FreeBSD project. Every > two years, anyone active committer (defined as someone who has > committed something to a FreeBSD repository in the last year) is > entitled to vote for the new Core Team (and, of course, to stand for > election).and say that this seems like a good model for the CoC committee process. Specifically, something that is community driven. As Chris said,> [...] what the LLVM Foundation is > about. It isn’t about making technical decisions (we have code > owners for that). It is designed to handle administration of the > project and infrastructure, including planning and rolling out of > the devmtgs.and this is clearly an important function. One thing that defines LLVMs code ownership role is that it is not particularly hierarchical in authority. A code owner is quite-accurately described as a "first among equals", and maintaining that flavor in the structure of the community is important. The LLVM foundation, as an entity tasked with financial obligations, can have an independent process for determining its leadership, and that's not inappropriate. Finally, I'd like to say that one of the most attractive things about this community is how professional it is. The people are respectful, polite, patient and helpful. What I'm hearing is that experience from other communities suggests that having a CoC will help ensure these qualities continue to define LLVM's community, and therefore, I'm in favor. Thanks again, Hal> _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-- Hal Finkel Assistant Computational Scientist Leadership Computing Facility Argonne National Laboratory
Sean Silva via llvm-dev
2015-Oct-14 06:16 UTC
[llvm-dev] RFC: Introducing an LLVM Community Code of Conduct
On Tue, Oct 13, 2015 at 4:08 PM, James Y Knight via llvm-dev < llvm-dev at lists.llvm.org> wrote:> +1 to using basically verbatim the existing Django Code of Conduct. The > Django CoC expresses the desired sentiment well, and does a Good Enough job > on the details. It also seems well respected in general. > > I'd suggest that we all resist the urge to disuss basically irrelevant > minutae (such as the exact list of things that are written in the "includes, > but is not limited to" list), adopt it, and move on to more fun > activities. I'd like to repost what someone said on a thread about adopting > a Code of Conduct in Twisted, because it does a better job of saying this > than I can. Clayton Daley wrote: > >> Not that I'm a heavy contributor, but: >> - A CoC is like a ToS in many ways. They rarely get read until >> there's a problem. >> - A CoC is like a License in many ways. They should be pretty >> standard infrastructure. >> > > > I think both of these facts argue for joining Twisted to an existing CoC. >> No one goes around reading the CoC for every group they participate in. We >> increase the odds that someone reads our CoC if they get leverage (one >> read, lots of groups) and we get spill-over (they read the CoC for another >> group and thus know ours). > > >This is a really good point. +1 Other communities have had issues and come up with their codes of conduct in response. Best to bootstrap ours following their experience. I can't think of a good reason to expect a priori that our community is somehow immune to the types of issues that have come up in other communities. It seems sort of like "NIH syndrome" to assume that we are immune.> To those saying it's too long: I think it looks a lot longer as a wall of > ReStructured Text in email, than when read formatted. Reading it here > https://www.djangoproject.com/conduct/ it seems a reasonable length, with > a nicely bolded TL;DR list for those who don't want to sweat the details. >Yeah, it's pretty easy to skim in the rendered form. -- Sean Silva> > One other thing: I don't think it'll be terribly useful to debate about > whether this is the MOST IMPORTANT thing for the community to do. There > certainly are other issues facing the community e.g. around making it easy > for newcomers to get patches reviewed/submitted. Maybe lack of CoC isn't > the largest problem facing to contributors, but IMO it's definitely a > positive step. And, one that isn't terribly difficult to accomplish: it's > mostly just writing down expectations for professional behavior that > basically everyone follows already. > > The only bit that seems to me really needs fleshing out is what the > process for appointing the CoC committee is. I'd sort of assume based on > what other organizations do that the LLVM Foundation Board would be > responsible for appointing the Committee, but that the Board and the > Committe would not be one and the same. > > Of course, the LLVM Foundation Board *really* must be a transparent, > trusted, and respected group in the community in order to be able to > properly take on that role. Based on the board members (at least, from the > 2014 announcement), it seems to me that there should be no intrinsic > problem there...but getting the "trivial" things done like posting the > bylaws and meeting notes on the website is really quite important to > engender such trust. > > _______________________________________________ > 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/656d01ba/attachment.html>