From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: poffice@blade.nagaokaut.ac.jp Delivered-To: poffice@blade.nagaokaut.ac.jp Received: from kankan.nagaokaut.ac.jp (kankan.nagaokaut.ac.jp [133.44.2.24]) by blade.nagaokaut.ac.jp (Postfix) with ESMTP id 7026A19E0056 for ; Sun, 24 Jan 2016 05:19:44 +0900 (JST) Received: from voscc.nagaokaut.ac.jp (voscc.nagaokaut.ac.jp [133.44.1.100]) by kankan.nagaokaut.ac.jp (Postfix) with ESMTP id D3C07B5D819 for ; Sun, 24 Jan 2016 05:53:33 +0900 (JST) Received: from neon.ruby-lang.org (neon.ruby-lang.org [221.186.184.75]) by voscc.nagaokaut.ac.jp (Postfix) with ESMTP id E59FB18CC7D0 for ; Sun, 24 Jan 2016 05:53:33 +0900 (JST) Received: from [221.186.184.76] (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id A67D812052C; Sun, 24 Jan 2016 05:53:33 +0900 (JST) X-Original-To: ruby-core@ruby-lang.org Delivered-To: ruby-core@ruby-lang.org Received: from o2.heroku.sendgrid.net (o2.heroku.sendgrid.net [67.228.50.55]) by neon.ruby-lang.org (Postfix) with ESMTPS id AEAF11204EC for ; Sun, 24 Jan 2016 05:53:29 +0900 (JST) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sendgrid.me; h=from:to:references:subject:mime-version:content-type:content-transfer-encoding:list-id; s=smtpapi; bh=fLgoGnEAH08ZSJJqaHgoCZz3H74=; b=IB8SMelG+6/ECPTyVY WbcCFAN4WFtthmqk+NCociMAjRaHL8E9PaE+cRP79coA1Ou8M/jL/Wcq3wGxAUxJ nHRxCfc39AefMomJowSZppd3yG9vpyE5HsbsqqwU4ZI7l2YEWlE9VEEjk3cjK+pb NRNjN97P/o60iCx7DKYfzgrK0= Received: by filter0485p1mdw1.sendgrid.net with SMTP id filter0485p1mdw1.24474.56A3E8418 2016-01-23 20:53:21.156380425 +0000 UTC Received: from herokuapp.com (ec2-54-163-87-220.compute-1.amazonaws.com [54.163.87.220]) by ismtpd0005p1iad1.sendgrid.net (SG) with ESMTP id lGhihW8QTkOy6PzfgJSIZA Sat, 23 Jan 2016 20:53:21.265 +0000 (UTC) Date: Sat, 23 Jan 2016 20:53:21 +0000 From: rubyamateur@wbml.net To: ruby-core@ruby-lang.org Message-ID: References: Mime-Version: 1.0 X-Redmine-MailingListIntegration-Message-Ids: 47933 X-Redmine-Project: ruby-trunk X-Redmine-Issue-Id: 12004 X-Redmine-Issue-Author: CoralineAda X-Redmine-Issue-Assignee: matz X-Redmine-Sender: lubyamateur X-Mailer: Redmine X-Redmine-Host: bugs.ruby-lang.org X-Redmine-Site: Ruby Issue Tracking System X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-SG-EID: ync6xU2WACa70kv/Ymy4QrNMhiuLXJG8OTL2vJD1yS5g0Mfny9stZH+UWErU6x+3F7nhgT283dd1RI h0qch9sdk4mLBZ5KegoV83GcmSErMboQoH+HmEVZMeIclq85iP9Z0QxFvFvl4RgfXtbChlJGeQsvA0 O7g1KPXKwQgMhUGMGDug4y8YkjgEqGh34mHB+lUiDqHRkvE1gqq5Fko0IA== X-ML-Name: ruby-core X-Mail-Count: 73327 Subject: [ruby-core:73327] [Ruby trunk - Misc #12004] Code of Conduct X-BeenThere: ruby-core@ruby-lang.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Ruby developers List-Id: Ruby developers List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ruby-core-bounces@ruby-lang.org Sender: "ruby-core" Issue #12004 has been updated by Ruby Amateur. David Celis wrote: > > * A CoC will encourage some bad, unnecessary or unwanted behaviors: > > * judging and policing of others pointing to the "law" > > * spending time on working on the CoC > > * even founding a CoC Committee > > * debating interpretation of particular rules (while creating the CoC, but also later on) > > Nobody is going to be judging or policing. People just wanna be a part of Ruby without being afraid to show themselves for who they are. I'm sorry but I agree with Paul Jones that the social justice inspired code of conducts are very much about retribution and enacting punishment due to insensitivity (or sensitivity) of others. I won't go into a laundry list of examples (but if you look at previous responses I do point out two). I will say this: **Given to people in the wrong hands, a code of conduct which has enforcement mechanisms can be used to disrupt a project and enact violence in the community.** This has happened to the Rubinius project. I would also like to point out an analogy with the Zero Tolerance policies used in the US school system: ~~~ A zero-tolerance policy in schools is a policy of punishing any infraction of a rule, regardless of accidental mistakes, ignorance, or extenuating circumstances. In schools, common zero-tolerance policies concern possession or use of illicit drugs or weapons. ~~~ These laws encoded in the US prevents a teacher from using discretion not to punish, as they may lose their job. If they don't report it, they may lose their job. I would hope most people can agree that this type of policy is similar to how a prison system is run, and that children shouldn't be deserving of draconian policies and state-mandated punishment. I see the unchanged contributor covenent as being strikingly similar: ~~~ Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. By adopting this Code of Conduct, project maintainers commit themselves to fairly and consistently applying these principles to every aspect of managing this project. Project maintainers who do not follow or enforce the Code of Conduct may be permanently removed from the project team. ~~~ I'm sorry, but this alone is a non-starter to me. It spends far too much time on the language of enforcement. To me the entire contributor covenant in its original form is a tool to disrupt and enact violence in communities by focusing on enforcement and punishment. > > * We are grown ups and every grown up should know how to behave. Those who are not, will remove themselves from the community by their behavior or be removed by the community - regardless whether a CoC exists or not. > > Being a grownup doesn't mean one knows how to behave. And while yes, a CoC is not required to remove people from the community for awful behavior, it is important to be able to state why someone was removed and why that behavior was awful. It's also important to state how someone could be welcomed back if they choose to work hard at returning. An audit log is probably a good thing. As for being welcomed back? None of the code of conducts so far provided mention how a person can be welcome back. This should be more reason to avoid enforcing punishment for the time being, because people deserve a second, third, or whatever number of chances. I'm very passionate about this issue, because I don't want my favourite programming language being disrupted by future-proofed policies that will be set in stone. I think we should accept a minimum viable version (such as Jeremy Evans PostgreSQL inspired CoC) and if the code of conduct is not working sufficiently, we can revisit it later. I don't see the point of future proofing the code of conduct now, except to appease those with the social justice mentality. With a liberal code of conduct or even without, the community will remain nearly unchanged and welcoming towards contributors. As I expressed above, a draconian code of conduct can be used as a tool of violence that will make people reconsider being part of the community, and potentially losing valuable contributors. Again my opinion, my 2c. I hope this gets taken into consideration. ---------------------------------------- Misc #12004: Code of Conduct https://bugs.ruby-lang.org/issues/12004#change-56556 * Author: Coraline Ada Ehmke * Status: Assigned * Priority: Normal * Assignee: Yukihiro Matsumoto ---------------------------------------- I am the creator of the Contributor Covenant, a code of conduct for Open Source projects. At last count there are over 13,000 projects on Github that have adopted it. This past year saw adoption of Contributor Covenant by a lot of very large, very visible projects, including Rails, Github's Atom text editor, Angular JS, bundler, curl, diaspora, discourse, Eclipse, rspec, shoes, and rvm. The bundler team made code of conduct integration an option in the gem creation workflow, putting it on par with license selection. Many open source language communities have already adopted the code of conduct, including Elixir, Mono, the .NET foundation, F#, and Apple's Swift. RubyTogether also adopted a policy to only fund Ruby projects that had a solid code of conduct in place. Right now in the PHP community there is a healthy debate about adopting the Contributor Covenant. Since it came from and has been so widely adopted by the Ruby community at large, I think it's time that we consider adopting it for the core Ruby language as well. Our community prides itself on niceness. What a code of conduct does is define what we mean by nice. It states clearly that we value openness, courtesy, and compassion. That we care about and want contributions from people who may be different from us. That we pledge to respect all contributors regardless of their race, gender, sexual orientation, or other factors. And it makes it clear that we are prepared to follow through on these values with action when and if an incident arises. I'm asking that we join with the larger Ruby community in supporting the adoption of the Contributor Covenant for the Ruby language. I think that this will be an important step forward and will ensure the continued welcoming and supportive environment around Ruby. You can read the full text of the Contributor Covenant at http://contributor-covenant.org/version/1/3/0/ and learn more at http://contributor-covenant.org/. Thanks for your consideration and I look forward to hearing your thoughts. ---Files-------------------------------- Screen Shot 2016-01-22 at 6.45.23 PM.png (595 KB) Ruby_Code_of_Conduct_Numbers.png (119 KB) -- https://bugs.ruby-lang.org/