写点什么

直面挑战,如何应对开源社区中的恶意行为

  • 2023-05-30
    北京
  • 本文字数:1523 字

    阅读完需:约 5 分钟

直面挑战,如何应对开源社区中的恶意行为

开源维护者经常遇到的三种恶意行为分别为得寸进尺、人们随意发泄的挫败感和直接的攻击。面对这种行为,厚颜以对和熟视无睹都会导致愤怒和伤感情绪的负面循环。相反,我们应该指出这种行为,并提醒人们,开源意味着协作和配合。


Gina Häußge 在OOP 2023 Digital上谈到了作为开源维护者如何处理发起恶意行为的人。


Gina Häußge 提到,维护者经常会面临三种恶意行为。最常见的一种就是得寸进尺。有不少用户认为,由于你已经给了他们一些东西,所以你亏欠他们得更多,当你没有满足他们的要求时,他们就会变得极具攻击性。


Gina Häußge 说,还有一些人因为某些事情没有按照他们期望的方式进行而发泄挫败感,在这个过程中会变得非常粗暴。


第三种恶意行为是直接进行攻击,主要来自那些觉得自己的权利没有得到满足的人,或者无法处理其挫败感的人,有时候会非常恶毒,Gina Häußge 解释到:


这已经从辱骂升级到了建议直接结束我的生命。


Häußge 提到,面对这些恶意行为,她曾经尝试厚颜以对和熟视无睹。她认为,对这些行为大动干戈是她自己的问题。事实证明,她试图忽视人性和压力反应周期,Häußge 这样解释到:


试图无视这些事情只会让它们在我的脑海里无休无止的盘旋,经常持续好几天,甚至几周的时间,这使得我变得越来越愤怒,或越来越伤感。而这反过来又影响了我的沟通方式,往往只会使事情进一步升级,或造成其他方面的问题。


Häußge 提到,当面对得寸进尺或发泄行为时,她经常提醒人们注意工作中的实际情况。她说,“开源意味着协作和配合,而不是要求”。如果人们希望看到某些东西变成现实,那么就应该帮助完成它,通过代码,或者像文档和缺陷分析这样的东西:


任何不需要我自己做的事情都意味着我会有更多的时间用于编码工作,以解决其他人的问题。


Häußge 说,这不应该只落在维护者身上。我们都可以在看到恶意行为时将其识别出来,并公之于众。她说,我们不应该让维护者不断捍卫自己的底线,或默默忍受虐待。


Häußge 提到,我们也要经常照照镜子,反思自己,确保不要成为攻击者:


在任何时候,都要记住站在别人的角度思考一下。


InfoQ 就针对开源维护者的恶意行为采访了Gina Häußge


InfoQ:据你观察,恶意行为对维护者和 OSS 社区有什么影响?


Gina Häußge:多年来,我和很多 OSS 的维护者都有过交流,大家的普遍共识也反映了我自己的经历:这些经历会毁掉你一整天,毁掉你整整一周,有时会让你怀疑自己为何要继续维护这样一个项目。这肯定会导致维护者的倦怠,从而给整个项目带来风险。这是一种极其痛苦的体验。如果不加以制止,它们会危害整个社区。


InfoQ:你是如何学会应对这种恶意行为的?


Gina Häußge:解决压力反应循环的方法是体育运动。我的办公室里有一个沙袋,即便只运动 30 秒钟,也能让我重新活过来!这向我的大脑发出信号,表明我已经认识到了威胁,并且正在做一些事情来对付它,从而完成压力反应循环。一旦做到这一点,我就再次掌控了局面,可以采取下一步措施了。

如果遇到粗鲁的攻击,我就会明确表示,他们刚刚表现出来的行为是无法容忍的。多年来,这让我得到了很多的道歉,但有时也会导致事态进一步升级。在这种情况下,我会请他们离开,如果迫不得已,我会封掉他们。


InfoQ:在开源项目中,我们可以采取何种措施来应对恶意行为?


Gina Häußge:在开源项目中,有一个普遍的说法,作为维护者,你要脸皮够厚,无视那些讨厌的人。如果你做不到这一点,就根本无法胜任这项工作。


我不同意这种观点。这种恶意行为的不断冲击要么让你崩溃,要么让你变成一个更糟糕的人,而这两者都不应该是维护 OSS 所必须要承受的。请坚守你的底线和项目的行为准则(CoC,code of conduct),并要求得到人道的待遇。


原文链接:

How Open-Source Maintainers Can Deal with Toxic Behavior

2023-05-30 10:542128

评论

发布
暂无评论
发现更多内容

Java各种锁详情,java中间件技术及其应用开发

Java 程序员 后端

Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day34,rabbitmq集群同步原理

Java 程序员 后端

Java中的程序控制流程,java在线编译器实现原理

Java 程序员 后端

Java中高级核心知识全面解析——常用框架(Spring常用注解

Java 程序员 后端

linux中删除特殊文件

入门小站

Linux

Java基础面试题——IO流(1),mysql数据库开发面试

Java 程序员 后端

Java安全之反序列化回显与内存码,java面试个人规划

Java 程序员 后端

Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day20,从java后端到全栈百度云

Java 程序员 后端

JAVA多线程和并发基础面试问答,吊打面试官你也可以,看完这一篇你就懂了

Java 程序员 后端

Java中高级核心知识全面解析——Dubbo,java架构师课程下载

Java 程序员 后端

java使用poi操作world生成饼图,柱状图,折线图,java微服务架构训练营

Java 程序员 后端

Java到Kotlin入门,这一篇就够啦,java开发岗高频面试题全解析祖国的花朵

Java 程序员 后端

Java学习笔记——内部类,linux底层架构

Java 程序员 后端

Java中高级核心知识全面解析——JVM,java全套视频教程

Java 程序员 后端

Java中高级核心知识全面解析——常用框架(Spring中都用到了那些设计模式-)

Java 程序员 后端

Java基础面试题——IO流,Netty时间轮调度算法原理分析

Java 程序员 后端

Java实现文件切割拼接,MongoDB数据分布不均的解决方案

Java 程序员 后端

Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day14,mybatis常见面试题

Java 程序员 后端

Java中高级核心知识全面解析——系统设计(RestFul-API[概念

Java 程序员 后端

Java基础16 集合(ArrayList、LinkedList,linux操作系统教程电子版

Java 程序员 后端

Java多态实现原理,java同步锁原理

Java 程序员 后端

Java基础 - 单列集合,ArrayList,Vector,从零开始学springboot百度网盘

Java 程序员 后端

Java基础 - 正则,Math,Random,零基础学java电子书

Java 程序员 后端

Java基础15 Java常用类,深入剖析

Java 程序员 后端

Java中return和finally到底哪个先执行,java程序设计实用教程叶核亚第五版

Java 程序员 后端

Java之String重点解析,成功定级腾讯T3-2

Java 程序员 后端

Java匹马行天下之一顿操作猛如虎,框架作用知多少?,HTTPS面试常问全解析

Java 程序员 后端

Java学到什么程度才算精通?,springmvc原理图解

Java 程序员 后端

java入门基础三(执行语句),Java多线程面试题大全含答案

Java 程序员 后端

Java基础22 网络编程(HTTP和UDP),java基础入门课后编程题答案

Java 程序员 后端

Java学习笔记——String,java程序开发实战教程在线

Java 程序员 后端

直面挑战,如何应对开源社区中的恶意行为_文化 & 方法_Ben Linders_InfoQ精选文章