写点什么

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

  • 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:542283

评论

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

Android Camera 内存问题剖析,Android屏幕适配很难嘛其实也就那么回事

android 程序员 移动开发

8年老Android开发谈;Context都没弄明白凭什么拿高薪?

android 程序员 移动开发

9次Android面试经验总结,已收字节,阿里,2021Android开发面试解答之设计模式篇

android 程序员 移动开发

AdapterViewFlipper 图片_文字 轮播动画控件,【面试必会】

android 程序员 移动开发

andriod搭建自己的轮询框架,flutter开发环境

android 程序员 移动开发

Android - singleTask启动模式详解,kotlin常用高阶函数

android 程序员 移动开发

Android 12 行为变更:适配以Android 12为目标的应用,移动应用开发就业方向

android 程序员 移动开发

android activity Intent 传值 传对象,移动智能终端的发展趋势

android 程序员 移动开发

8年Android开发程序员教你如何写简历!看完别再问为何你只值5K

android 程序员 移动开发

Activity启动流程分析(android-29),Android面试题库

android 程序员 移动开发

Android App安装包大小优化,Android开发面试技能介绍

android 程序员 移动开发

Android DataBinding 从入门到进阶,android路由实现

android 程序员 移动开发

iOS开发:平时做项目经常用到的快捷键归纳

三掌柜

11月日更

Activity页面的绘制流程,移动端跨平台开发

android 程序员 移动开发

Android Gradle 干货,android屏幕适配框架

android 移动开发

7年老Android收到阿里offer,跟领导提离职被怼:为年薪百万不做兄弟

android 程序员 移动开发

Activity生命周期详解,android游戏开发实践指南

android 程序员 移动开发

Android Glide 3(1),撸了郭霖大神写的Framework源码笔记

android 程序员 移动开发

Andorid性能优化之traceview的使用(不懂揍我),androidstudio计算器

android 程序员 移动开发

Android Ashmem匿名共享内存,科学技术协会面试

android 程序员 移动开发

Android D8 编译器 和 R8 工具,android零基础开发

android 程序员 移动开发

Activity Result API 使用与源码分析,移动端开发基础

android 程序员 移动开发

Android 10 适配攻略,最新阿里Android面试题目

android 程序员 移动开发

Android 11 Settings源码入门,flutter安装

android 程序员 移动开发

Android 12 行为变更:适配以Android 12为目标的应用(1)

android 程序员 移动开发

android Alarm闹钟发送广播播放音乐,【大牛疯狂教学

android 程序员 移动开发

Android Systrace 使用方法,互联网寒冬

android 程序员 移动开发

8年Android开发程序员教你如何写简历!看完别再问为何你只值5K(1)

android 程序员 移动开发

9成Android开发者必须收藏的80个开源库,安卓rxjava获取网络时间

android 程序员 移动开发

Android 9 Pie 现已面向全球正式发布!,flutter插件播放音乐

android 程序员 移动开发

Android Glide 3,android编程软件

android 程序员 移动开发

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