## Title

Code of Conduct

## Patlet

Communications and interactions between collaborators are rude, not inclusive or offensive, harming and increasing the discussions without any value added.
A Code of Conduct provides guidelines for establishing rules and expectations regarding behavior and interactions within the community to build stronger levels of collaboration.

## Problem

InnerSource initiatives often involve collaboration among individuals and teams from diverse backgrounds and perspectives.
The absence of clear rules of communication and interaction leaves room for ambiguity and potential conflicts within the InnerSource community.
Without established guidelines, members may engage in behavior that is harmful, discriminatory, or counterproductive, leading to a breakdown in collaboration and trust.

## Context

This pattern emerges when the communications between different team members are very far away of the goals, focused on personal references, blaming other opinions or following non-inclusive behaviors.

Some examples of this context:

* The organization has gone through a rapid growth phase, where maintaining a strong collaborative culture has suffered.
* The organization has acquired multiple smaller organizations over a short period of time, and each of these organizations bring their own slightly different culture.
* The organization is highly distributed over multiple countries, nationalities, cultures, and timezones.
* Members of different teams at the organization have not established strong inter-personal relationships.
* Previous attempts to establish ground rules for collaboration have been treated as mere lip service, and have had little to no effect.

## Forces

* Define or establish rules of communication to avoid conflicts.
* Create a welcoming, respectful and inclusive environment to foster more collaboration.
* Create trusted relationships across different teams.
* Create the environment where all community members feel safe and valued.
* Connect to corporate's compliance, and business ethics.

## Solution

Develop a Code of Conduct that outlines expected behavior, including guidelines for communication, collaboration, and conflict resolution.
The Code of Conduct will articulate the shared values and principles of the InnerSource community, fostering a sense of belonging and common purpose, such as:

- **Diversity**: InnerSource communities may consist of individuals with varying cultural backgrounds, beliefs, and communication styles.
- **Trust**: Building trust among community members is essential for effective collaboration and knowledge sharing.
- **Inclusivity**: A Code of Conduct and Social Contract can promote inclusivity by setting expectations for respectful behavior and interactions.
- **Accountability**: Clear guidelines help hold community members accountable for their actions and contributions.

## Implementation

The adoption of well-known handbooks, such as the [Contributor Covenant](https://www.contributor-covenant.org/), or the adaptation of some internal employee handbooks for members of the organization are good starting points for implementation of this pattern.
However, adopt the following life cycle can improve the implementation and adoption of the Code of Conduct in an InnerSource community:

1. Collaboratively draft the Code of Conduct, involving input from community members representing diverse perspectives.
2. Seek feedback and consensus from the community to ensure buy-in and ownership of the guidelines.
3. Publish the finalized documents in a prominent location accessible to all community members, such as the [InnerSource portal](../2-structured/innersource-portal.md) or communication channels.
4. Regularly review and update the Code of Conduct as needed to reflect evolving community norms and values.

A good practice for the third point is to share the Code of Conduct in each InnerSource community repository as a file named `CODE_OF_CONDUCT.md`.
In order to avoid content duplication of the Code of Conduct, another good practice is include a reference to a centralized resource within the organization where the content is published to all the InnerSource projects.  
This file can be part of the [Standard Base Documentation](../2-structured/base-documentation.md) of any InnerSource project repository.

![CODE_OF_CONDUCT.md](../../assets/img/code-of-conduct/CODE_OF_CONDUCT-for-the-community.png)

It is important to understand that simply adopting a Code of Conduct will not prevent conflict or toxicity in the InnerSource project.
The [Core Team](../2-structured/core-team.md) and [Dedicated Community Leader](../2-structured/dedicated-community-leader.md) are responsible for the safe, fair, and transparent enforcement of the community's code of conduct.
That responsibility will imply provide a reporting process, a gathering information process and the consequences of any unacceptable behavior.
These references must be part of the Code of Conduct to encourage the behavior expected in the InnerSource project.  

## Resulting Context

With a well-defined Code of Conduct in place, the InnerSource community can cultivate a culture of respect, trust, and collaboration.
Community members feel empowered to contribute openly and engage in meaningful dialogue, leading to enhanced innovation and problem-solving.

## Known Instances

- Red Hat - Many of the internal communities
- National Australia Bank
- GitHub (Company wide "Handbook for Hubbers")

## Authors

- Roman Martin Gil

## Acknowledgments

- Matt Cobby - Adding the National Australia Bank reference

## References

- [InnerSource Commons Pattern - Standard Base Documentation](../2-structured/base-documentation.md)
- [Open Practice Library - Social Contract](https://openpracticelibrary.com/practice/social-contract/)
- [Contributor Covenant](https://www.contributor-covenant.org/)
- [GitHub Open Source Guide: Code of Conduct](https://opensource.guide/code-of-conduct/)

## Status

- Initial
