Week 2 : Code of Conduct
Code of Conduct Activity & Reflection on Presentation
The community element in open source development is arguably more important than the code element. As the community for a project grows bigger and bigger, it inevitably will require strangers who might never have interactions in real life work closely together. They might live totally different lives and have the complete opposite values. Thus there needs to be a set of guidelines or rules to ensure the project functions efficiently as an organization. I believe that the code of conduct is important because it determines how contributors to the project interact, collaborate, and resolve disputes with each other. The Go Community Code of Conduct serves as a good example, it explicitly defines what the contributors should and shoudn’t do.
The Go Community Code of Conduct is adapted directly from the Contributor Covenant, version 1.4, as it added a section on Gopher Values and the goals of the code of conduct on top of the original covenant. This adds a layer of focus on the positive behaviours that benefits collaboration, while the original covenant focuses on negative behaviours to avoid. The Eclipse Community Code of Conduct is also adapted from the Contributor Covenant. Eclipse expanded the section on enforcement actions and added the no retaliation rule, which protects contributors that raises issues from being punished or harassed.
The Suger Labs Code of Conduct, which is based on the Ubuntu Code of Conduct. This code of conduct focuses more on how to collaborate with each other, rather than protecting members from malicious behaviour seen in the contributor covenant. It serves more as a tutorial of what to do as opposed to a set of rules telling contributors what not to do.
Another example is The Docker Code of Conduct is adapted from the Slack Developer Community Code of Conduct, The Ada Initiative, geekfeminism.org, and Drupal Events Code of Conduct. Although it’s a shorter code of conduct to the ones above, the Docker Code of Conduct also includes in-person interactions on top of the digital interactions. It’s mentions unacceptable behaviours at in-person events such as “Inappropriate or unwanted physical contact”, and also specifies physical enforcements such as “expulsion from the conference without refund, and referrals to venue security or local law enforcement” in case the code of conduct was breached.
In the presentation How to Drive Consensus & Transparency in OpenSource Communities, the speakers Jill Lovato and Trishan de Lanerolle offers another perspective on the code of conduct. They argues that although a code of conduct can be helpful in safeguarding community members from others’ extreme behaviours, it’s up to the contributors to foster a consensus on how the day to day operations of the project is like. Sometimes referring to a rigid rulebook like the code of conduct will be less efficient than simply letting “lazy consensus” solve the issue.
