Week 2

The Code of Conduct For Open Source Projects

Part 1: Go, Eclipse, and the Contributor Covenant

Go’s community code of conduct explicitly outlines the values that they expect contributors to uphold when interacting with other members of the community, as well as the staff’s responsibilities for enforcing these standards. In doing so, they ensure that there is an easy to follow set of guidelines for how contributors should act and what to expect if they do not follow the rules, making it easy for staff and other community members to hold them accountable for inappropriate actions. Open source projects attract people from all different backgrounds, so having these expectations set in stone ensures that there is no confusion among collaborators regarding what is acceptable, and ensures that everyone feels comfortable contributing to the project. I believe having a code of conduct like this should be standard for any open source project that involves collaboration among strangers to keep everyone safe and comfortable.

The Contributor Covenant’s code of conduct serves as the base for Go’s community code of conduct, but Go includes an additional About section and set of Go specific values that they expect the community to adhere to. The About section serves to outline the importance of having a code of conduct, including some information on why Go personally believes it to be valuable. The Gopher Values section, although similar to what is outlined in the Contributor Covenant, details what Go as a project and team specifically expect from their community. Both of these changes tailor the Creator Covenant code of conduct to fit what the Go team value most for their community, which a generic document like the Creator Covenant cannot do on its own.

Eclipse’s code of conduct, which can be found here, includes much more detailed information regarding the enforcement of their policies and what actions will be taken if an offense is committed. While Go says that some reports of violations will not receive responses or action, Eclipse conducts a hearing for all reports and specifies the concequences in their Actions section. This difference could simply be because of a difference in staff values, due to the size of the projects, or for legal reasons.

Part 2: Sugar Labs

Unlike Go and Eclipse, Subar Labs’s code of conduct is based off of the Ubuntu Code of Conduct. It has significantly less focus on involving staff in conflict resolution, instead focusing on turning to the community to help resolve issues.

Part 3: scikit-learn

The code of conduct for scikit-learn can be found here and is significantly less formal than any of the previously discussed codes of conduct. They seemingly do not have a formal board for conflict resolution and more generally encourage contributors to treat others with respect and to help in any way possible such as answering questions and making tutorials. They also link to the Python code of conduct, which is adapted from the Geek Feminism wiki and includes a more detailed list of values, guidelines for appropriate behavior, and information about conduct for in person events.

Written before or on February 2, 2025