Some 60 Linux kernel developers last week adopted a small “patch,” called the “Code of Conflict,” that attempts to set guidelines for discourse in the kernel community and outlines a path for mediation if someone feels abused or threatened.
Linux creator Linus Torvalds posted the appeal for good behavior on his personal git.kernel.org page.
Torvalds’ call for improved internal developer relations could be little more than wishful thinking. He has nurtured a reputation for making brash responses to comments proffered by numerous developers in community exchanges. Those comments may have contributed to the current high level of volatility in exchanges on the Linux Kernel Mailing List.
Still, the Linux Foundation views the Code of Conduct as a starting point for change. Kernel maintainer Greg K-H wrote the code, which is supported by many of the most prolific maintainers and developers of the kernel community and was accepted into the kernel by Torvalds himself, according to Jim Zemlin, executive director at the Linux Foundation.
The Linux Foundation was happy to see the new guidelines and supported the mediation process, he noted.
However, it’s not likely conflict over code will completely disappear, Zemlin added — nor should it. Rather, the new behavior guidelines clearly admonish developers that personal insults or abuse are not welcome.
“The global Linux community has a long-standing track record of collaboration and mutual respect, and this is a key foundation on which the continued enhancement of this important open source project is based,” said Wim Coekaerts, SVP for Linux and virtualization at Oracle.
While there are differences that come up in collaborative working environments, it is important that people work together in a productive, respectful way,” he told LinuxInsider. “Posting the Code of Conflict in the kernel shows that there remains a strong commitment from the community to these foundational tenets and provides a vehicle to sort out differences.”
The new conduct code is small and to the point — a scant 223 words. It declares that Linux kernel development is a “very personal process compared to ‘traditional’ ways of developing software.”
It admonishes code reviewers to keep their criticisms civil and focused on the technical issues at hand.
“We are all humans, and frustrations can be high on both sides of the process. Try to keep in mind the immortal words of Bill and Ted, ‘Be excellent to each other,'” it concludes.
The behavioral guidelines remind developers that the code review process often results in critique and criticism. Those who submit code should expect to have to make improvements before it can be included in the kernel.
“This development process has been proven to create the most robust operating system kernel ever, and we do not want to do anything to cause the quality of submission and eventual result to ever decrease,” the patch notes.
It maintains that the critiquing process should not make anyone feel personally abused, threatened or uncomfortable, and assures that such behavior will not be tolerated.
The Code of Conduct instructs aggrieved parties to contact the Linux Foundation’s Technical Advisory Board or to approach individual members for help in resolving the issue.
Whether this tactic pans out to solve the growing friction within the Linux kernel commuinity remains to be seen. This kind of effort tends to shift power from the individual to those who enforce the code, according to Rob Enderle, principal analyst at the Enderle Group.
“You do this when individuals fail to enforce their own behavior and abuse becomes so obvious that the adults in the group feel they need a formal process,” he told LinuxInsider.
“It is not without issue, though, as code enforcers can use this policy to selectively silence those they disagree with — and it can, if there are penalties, drive people away from the effort or effectively silence them,” Enderle said.
However, if done properly the result is always better than the problem was, he added. The focus has to be on the “properly” part, however — often it initially is just a matter of enforcing the new policy. Plus, the code needs teeth that can force the community in controlled areas to be more civil. If it has teeth, it certainly can help solve the problem.
“However, in today’s world people can often find ways to get around the controlled forums, and this effort can become more like whack-a-mole as a result. In the end, the core problem is that individuals refuse to behave properly,” observed Enderle.
If you could get to the core of the behavior problem and eliminate it there, then you would not need a policy like this in the first place, he pointed out. In the end, you still have to find a way to deal with the core problem. Anything else is just a band-aid.
Need for Diversity
The Linux Foundation plans to work directly with the Linux Foundation Technical Advisory Board to help implement this process, Zemlin said. That cooperation is aligned with the foundation’s support for more diversity in the software industry.
The conduct code does not address that goal directly, he acknowledged, but the Foundation sees it as an important step to make it clear that civil discourse is an important part of the open source community, and to make it very plain that all are welcome.
The Linux Foundation takes the need for diversity seriously, Zemlin emphasized, and it plans to continue to expand its diversity programs while supporting the community in its efforts.