GitHub 项目遭到“有毒”言论攻击,核心开源贡献者被迫出走!
整理 | 彭慧中 责编 | 屠敏
出品 | CSDN(ID:CSDNnews)
在各类线上社区中,常常可以看到许多“有毒”言论,键盘侠们各执一词、剑拔弩张,最终不欢而散,甚至被社区管理者禁言封杀。而这一现象在GitHub这样的开源社区中也未能幸免。
根据一项学术研究发现,GitHub中的“有毒”言论往往比其他网络平台上要显得“文质彬彬”得多。这与在其他网络平台上脏话不堪入耳、拉仇恨和骚扰性言论漫天飞的现象形成了鲜明对比。
尽管如此,Linux内核邮件列表也因其不受欢迎的互动而臭名昭著。“Linux之父”Linus Torvalds在Linux基金会最近的开源峰会上也承认了这一点。他说他有时“过于无礼”,并为他所说的“个人失误”道歉。
“有毒言论”有多大威力?
美国卡内基梅隆大学(Carnegie Mellon University,以下简称CMU)和维思大学( Wesleyan University)的计算机科学家最近进行了一项关于“网络毒性”的研究,以了解它在开源社区的表现。
该项目采用了在谷歌的Perspective API( 此API使用机器学习模型针对评论可能对后续对话产生的影响进行打分)上关于“毒性”定义:粗鲁的、不尊重的或不合理的语言,有可能使人离开讨论。
在该研究团队发表的论文中写道:几乎所有的在线平台都认识到了“有毒言论”及其他类似的行为对在线社区的健康和安全构成的威胁。因此,管理者们也提出了一些预防和干预措施,包括提出行为准则、进行限制、禁言、以及对作者的及时引导等。
开源社区长期以来“直率”的互动传统导致许多项目不得不采用行为准则来加以约束。这样做的原因是为了鼓励贡献者加入开源项目,并使他们不至于被扯皮和其他形式的敌意赶走。
研究人员表示,开放源码中的有毒言论经常被解释成自然发生的,与开源文化有一定关系。虽然有一些人借此在为他们粗暴的互动模式辩护,但这种有毒的互动会带来不良的影响,例如,Perl社区的核心开发者就因无法忍受的敌意言论而选择离职。
开源社区的“毒性”别具一格
然而,与其他一些平台上最常见的仇恨言论或骚扰不同,CMU软件研究所的博士生和该研究论文的主要作者Miller在CMU的新闻稿中说:“开源社区中的毒性是不同的。它更受当时的语境影响,且更居高临下,更微妙,更具有被动攻击性。”
Miller表示:“在手动确认评论是否有毒时,如果一条评论可能使任何人想离开讨论,包括一个新来的人,我们就认为它是有毒的,因为这是故意的。但通常,在许多开源项目中,“有毒言论”往往被认为是自然发生的,是开源文化带来的必然结果。然而,许多开源贡献者会因为有毒和持续的负面言论而选择离开。正因为如此,界定清楚开源中的“有毒”言论是很重要的。”
研究人员在在GitHub上找到了100个“有毒问题”所组成的数据集,研究后发现,微软旗下网站上的毒性有其自身的特点。
研究人员指出,GitHub问题虽然包括其他地方所见的侮辱、傲慢和嘲弄,但并没有表现出像Reddit和Twitter等平台上常见的尖锐对话。除了较温和的语言外,GitHub的不同之处在于其大量的居高临下的评论,即:使用者们向社区提出理所当然的要求,就好像这些要求是基于合同上的规定或是他们付了钱一般。
GitHub中有毒言论较为温和似乎是因为大多数有毒的互动不是来自专门挑事儿的键盘侠或匿名用户,而是来自经验丰富的开源开发者和项目维护者。
GitHub中的有毒言论具体长什么样子?可以看看来自两年前的Elementary OS repo中的言论:“问题在于,你的团队强迫我们以你希望我们使用的方式来使用操作系统,尽管以你的方式来使用它要比我们的方式困难100万倍。”
一些开发者认为,那些使用别人编写的软件而不付钱给他们也没有提供任何支持的人,却认为自己可以傲慢地支配设计决定,是非常有毒的。开源贡献者决定如何设计一些软件,然后好心地发布给大家使用,并没有“强迫”任何人使用其设计的方式,使用者完全有不使用这种设计的自由。
图源 The Register
而另一些开发者则认为,当某人知道有更好的方法来做某事,但却被强迫用一种大大减慢了整个过程的方式来做它时,提出这样的质疑无可厚非。如果贡献者不接受的话,是否也是在以一种居高临下的态度呢?
图源 The Register
而此番事件最终由Elementary的创始人Danielle Foré关闭了这个问题线程而结束,他解释说:“我想真正明确的是,我们的政策不是要关闭有不同意见的讨论线程。互相尊重的辩论是非常重要的,这样才能保证社区的健康。但是,当你开始骂人、不尊重人、无视行为准则时,讨论就会变得毫无结果。这种破坏性的行为在我们的社区是不能容忍的。”
研究人员发现,这些有毒行为大多发生在大型的、受欢迎的项目中。而各类触发因素包括以下几种类型:使用软件过程中遇到的麻烦,技术上的分歧,政治/意识形态的分歧,以及过去的不良互动积重难返。
如何避免开源中的毒性
以上研究讨论了开源社区中毒性的本质。但我们究竟该如何避免“有毒言论”在开源社区中滋生?
Miller表示:“有一种方式似乎是遏制毒性的有效方法,那就是维护者引用他们项目的行为准则,将问题线程锁定,这似乎有助于减少处理毒性的时间和心力。”
GitHub的开发者关系高级主管Martin Woodward在一份电子邮件声明中也表示:“欣慰的是,其他在线社区中更极端的有毒行为在GitHub上很罕见。但如今,在与开源维护者对话中才认识到,开源使用者们觉得理所当然地对管理大量开源项目的社区志愿者领导人提出要求这个行为存在问题。我们将继续尝试在GitHub上通过“维护者月”等活动来教育人们,同时我们也继续与维护者和研究人员合作,以改善我们的社区管理能力。”
Miller建议,由于在开源社区中有毒言论的表现与其他平台上的不同,为了有效地识别和干预它,未来的应该需要建立一个专门针对于开源的特定毒性检测器。
参考资料:https://www.theregister.com/2022/06/29/toxic_interaction_github_open_source/
《新程序员001-004》已全面上市,欢迎扫描下方二维码或点击进入立即订阅,即可畅享电子书及精美纸质书
GitHub 项目遭到“有毒”言论攻击,核心开源贡献者被迫出走!相关推荐
- 【杂谈】面向新手的深度学习开源框架指导手册与GitHub项目,欢迎加入我们的开源团队...
之前我们公众号输出了很多深度学习开源框架相关的内容,现在整理成技术手册给大家分享以方便阅读,下面是详细信息. 开源框架背景 现如今开源生态非常完善,深度学习相关的开源框架众多,光是为人熟知的就有caf ...
- 【通知】有三AI发布150页深度学习开源框架指导手册与GitHub项目,欢迎加入我们的开源团队...
之前我们公众号输出了很多深度学习开源框架相关的内容,今天整理成技术手册给大家分享以方便阅读,下面是详细信息. 开源框架背景 现如今开源生态非常完善,深度学习相关的开源框架众多,光是为人熟知的就有caf ...
- darknet框架_【通知】有三AI发布150页深度学习开源框架指导手册与GitHub项目,欢迎加入我们的开源团队...
之前我们公众号输出了很多深度学习开源框架相关的内容,今天整理成技术手册给大家分享以方便阅读,下面是详细信息. 开源框架背景 现如今开源生态非常完善,深度学习相关的开源框架众多,光是为人熟知的就有caf ...
- GitHub 上数十个 NetBeans 开源项目被卷入供应链攻击
聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 上周四,GitHub 披露称,托管在其平台上的数十个开源的 NetBeans 项目遭某恶意软件攻击,显然是供应链攻击的一部分. 3月9 ...
- 直接拿来用!GitHub 上那些值得你 Star 的开源项目!
"开源"作为 2018 年度热词之一,在这一年里围绕其发生了颇多"大事",开源贡献者也语法活跃.本文分领域盘点了过去一年的开源项目 Top 榜,看看有没有你也在 ...
- 【开源项目】一个GitHub项目,囊括人脸图像要读的重要论文
今天给大家分享一个非常优秀的GitHub项目,由GitHub用户ChanChiChoi创建,包括了几乎所有人脸方向的论文,适合需要在人脸领域进行学习的朋友跟读. 项目简介 项目地址为https://g ...
- GitHub 上 57 款最流行的开源深度学习项目【转】
GitHub 上 57 款最流行的开源深度学习项目[转] 2017-02-19 20:09 334人阅读 评论(0) 收藏 举报 分类: deeplearning(28) from: https:// ...
- Linux 发布全新 6.0 版; 谷歌超微软开源贡献第一; GitHub 遭数万恶意攻击 | 开源月报 Vol.9...
「WeOpen Insight」是腾源会推出的「开源趋势与开源洞见」内容专栏,不定期为读者呈现开源圈内的第一手快讯.优质工具盘点等,洞察开源技术发展的风向标,预见未来趋势. 1 开源企业新闻 1.涉嫌 ...
- 27亿参数的「野生版」GPT-3开源,GitHub项目2.9K Star量
点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 OpenAI 著名的语言模型 GPT-3 可以懂数学.翻译文字,还能写论文拿到及格成绩 ...
- GitHub上最受欢迎的Android开源项目TOP20
以下这些开源项目都是从GitHub上筛选的,我强烈推荐android程序源代码有时间的时候自己在上面淘淘,或许能发现自己须要的开源程序. 了解开源项目有两个优点: 1.借鉴代码,一般来说.火爆的开源项 ...
最新文章
- SublineText 3 安装 Package Control插件
- 办公电脑变买为租,“企业惊变”背后神秘推手
- 计算机能力挑战赛是线上的吗,全国高校计算机能力挑战赛验证码识别竞赛一等奖调参经验分享...
- 一张图说明Linux启动过程
- .NET 6 中的隐式命名空间引用
- 征稿 | Call for papers on Knowledge Graphs
- 简单易用的开源ORM框架SqlSugar v5.0.0.19源码
- mysql 数据库连接不够_(二):MySQL数据库连接不够用(TooManyConnections)问题的一次分析和解决案例...
- MATLAB中如何忽略函数中前几个不需要的返回值而只取需要的返回值,例如:只取函数第二个返回值,而忽略第一个返回值
- openlayers根据坐标定位_车辆定位技术概述
- Ubuntu桌面环境 安装与切换
- 环境影响评价期末复习
- php的get和post,PHP中GET和POST区别
- 应用程序无法启动,因为应用程序的并行配置不正确 解决方案
- 提高个人竞争力的三件法宝
- Pygame 打字游戏项目
- 【Linux学习笔记】38:有关Linux进程家族树
- 人工智能(AI)和机器学习——未来的发展趋势
- 数组的应用和面向对象的开始6
- 怎样利用python写游戏辅助_怎样才能写游戏辅助?