如何避免羞辱新手:高级开发人员指南

为了维持开源社区的增长,我们需要欢迎新的开发人员。不幸的是,我们并不总是那么热情好客。
391 位读者喜欢这篇文章。
Woman programming

WOCinTech Chat。由 Opensource.com 修改。CC BY-SA 4.0

每年在纽约市,数千名年轻人盛装打扮成圣诞老人,进行酒吧巡游。有一年在 SantaCon 活动期间,我走在人行道上,专注于自己的事情,这时我看到一个非凡的场景。有一个人穿着红色帽子和红色外套,他正在和一个坐在轮椅上的无家可归者交谈。无家可归者问圣诞老人:“你能给我点零钱吗?” 圣诞老人掏了掏口袋,拿出一张 5 美元的钞票。他犹豫了一下,然后把它给了无家可归者。无家可归者把钞票放进口袋。

瞬间,事情变得不对劲了。圣诞老人对无家可归者大喊:“我给了你 5 美元。我想给你 1 美元,但 5 美元是我最小的面额,所以你应该感激。今天是你的幸运日,伙计。你至少应该说声谢谢!”

这是一个可怕的场景。首先,权力差距太大了:圣诞老人是一个身体健全、有钱有房的白人男性,而另一个人是黑人、无家可归,并且坐在轮椅上。更糟糕的是,圣诞老人的装扮正是慷慨的象征!而他一直表现得像圣诞老人,直到瞬间出了问题,他变得残忍。

然而,这不仅仅是一个关于醉酒圣诞老人的故事;这是一个关于技术社区的故事。我们也在努力慷慨地回答新程序员的问题,但每天我们的慷慨都会变成愤怒。为什么?

我的残忍

这让我想起了我过去的不良行为。我当时在公司的 Slack 上闲逛,一位新同事提出了一个问题。

新同事: 嘿,有人知道如何在 MongoDB 中做某某事吗?

Jesse: 这将在下一个版本中实现。

新同事: 那个功能的工单号是多少?

Jesse: 我记住了所有工单号。是 #12345。

新同事: 你确定吗?我找不到工单 12345。

他没有理解我的讽刺,他的错误让他在他的同伴面前感到尴尬。我暗自发笑,然后感到非常糟糕。作为 MongoDB 最资深的程序员之一,我不应该树立这样的榜样。然而,这种行为在世界各地的程序员中都很常见:我们对新手冷嘲热讽,我们羞辱他们。

这有什么关系?

也许你来这里不是为了交朋友;你是来编写代码的。如果代码能用,我们是否友善相待重要吗?

几个月前,在 Stack Overflow 博客上,David Robinson 表明 Python 发展迅猛,现在它是人们在 Stack Overflow 上查看问题最多的语言。即使在最悲观的预测中,它也将在今年远远超过其他语言。

Projections for programming language popularity

如果你是 Python 专家,那么这条向上飙升的曲线对你来说是个好消息。它不代表竞争,而是确认。随着越来越多的新程序员学习 Python,我们的专业知识变得越来越有价值,这将反映在我们的薪水、工作机会和工作保障中。

但存在危险。很快就会有比以往任何时候都多的新 Python 程序员。为了维持这种增长,我们必须欢迎他们,但我们并不总是那么热情好客。

Stack Overflow 的问题

我在 Stack Overflow 上搜索了对初学者问题的不友善回答,结果很容易找到。

An abusive answer on StackOverflow

信息很明确:如果你问这么愚蠢的问题,你就完蛋了。滚出去。

我立即找到了另一个不良行为的例子

Another abusive answer on Stack Overflow

谁没有被 Python 中的 Unicode 搞糊涂过?然而,信息很明确:你不属于这里。滚出去。

你还记得当你需要帮助却被人侮辱时的感受吗?感觉糟透了。它会摧毁社区。我们一些最优秀的专家每天都在离开,因为他们看到我们这样对待彼此。也许他们仍然编写 Python 代码,但他们不再参与在线对话。这种残忍也赶走了新手,特别是那些在技术领域代表性不足的群体成员,他们可能不确定自己是否属于这里。那些本可以成为下一代伟大的 Python 程序员的人,但如果他们提出问题,却有人对他们很残忍,他们就会离开。

这不符合我们的利益。它伤害了我们的社区,并使我们的技能变得不那么有价值,因为我们赶走了人们。那么,我们为什么要做出违背自身利益的事情呢?

为什么慷慨会变成愤怒

有几种情况真的让我恼火。一种是我慷慨地帮助别人,但没有得到我期望的感谢。(我不是唯一有这种怨恨的人:这可能就是醉酒圣诞老人在给一个无家可归者 5 美元钞票但没有收到任何感谢时发怒的原因。)

另一种是回答问题需要比我预期的更多精力。例如,当我的同事在 Slack 上提问并跟进说:“工单号是多少?” 我已经判断了帮助他需要多长时间,当他要求更多帮助时,我失去了耐心。

这些情况归结为一个问题:我对事情的发展方式抱有期望,当这些期望落空时,我会生气。

我研究佛教多年了,所以我对这个话题的理解是基于佛教的。我喜欢认为佛陀在他的第一次技术讲座中讨论了期望的问题,当时他在 30 多岁时,经过多年的冥想后取得了突破,并召开了一个小型会议来讨论他的发现。他没有租场地,所以他坐在树下。与会者是佛陀在印度北部游历时遇到的一些冥想者。佛陀解释说,他发现了四个真理

  • 首先,活着就是不满意的——希望事情比现在更好。
  • 其次,这种不满意是由欲望引起的;具体来说,是由我们的期望引起的,即如果我们获得我们想要的东西并消除我们不想要的东西,它会让我们长期快乐。这种期望是不现实的:如果我得到晋升,或者如果我删除 10 封电子邮件,它会暂时令人满意,但它不会让我长期快乐。我们之所以不满意,是因为每件物质的东西很快就会让我们失望。
  • 第三个真理是,我们可以通过接受我们生活的现状来从这种不满意中解脱出来。
  • 第四个真理是,改变我们自己的方法是了解我们的思想并过上慷慨和合乎道德的生活。

我仍然会对互联网上的人生气。最近就发生在我身上,当时有人在 我发布的关于 Python 协程的视频 下评论。“我想掌握 python,我该怎么做。”

Comment on YouTube

这让我很生气。我的第一个冲动是讽刺地说:“首先,也许你可以把 Python 的 P 大写,并在问题的末尾加上问号。” 幸运的是,我在采取行动之前意识到了自己的愤怒,并关闭了标签页。有时,解脱只是一次 Command+W 的操作。

该怎么做

如果你加入社区的目的是为了帮助别人,但偶尔发现自己怒火中烧,我有一种方法可以防止这种情况发生。对我来说,关键步骤是问自己:“我生气了吗?” 知道自己生气了就成功了一大半。然而,在网上,我们可能会失去对情绪的追踪。众所周知,我们在互联网上变得残忍的原因之一是,在没有看到或听到对方的情况下,我们天生的同情心不会被激活。但互联网的另一个问题是,当我们使用电脑时,我们会失去对身体的感知。我可能会生气并输入一条讽刺信息,甚至不知道自己生气了。我感觉不到我的心脏在砰砰直跳,我的脖子变得紧张。因此,最重要的步骤是问自己:“我感觉如何?”

如果我太生气而无法回答,我通常可以走开。正如 小鹿斑比中的小兔子桑普所学到的,“如果你不能说好听的话,那就什么也别说。”

奖励

帮助新手本身就是一种奖励,无论你是否收到感谢。但在做好事之后,犒劳自己一杯威士忌或一块巧克力,或者只是满足地叹口气,也无妨。

但除了我们个人的奖励之外,Python 社区的回报是巨大的。我们保持了这条向上飙升的曲线。Python 继续增长,这使我们自身的技能更有价值。我们欢迎新的成员,那些可能不确定自己是否属于我们的人,通过向他们保证,没有愚蠢的问题。我们使用 Python 创建一个围绕编写代码的包容和多元化的社区。而且,成为一个人们互相尊重的社区的一份子,感觉真的很好。这就是我想要成为其中一员的社区。

三口气誓言

我希望你从这篇文章中记住一个想法:为了控制我们在网上的行为,我们必须偶尔停下来,注意自己的感受。我邀请你,如果你愿意,大声重复以下誓言

我发誓

深呼吸三次

在我回答网上的问题之前。


本文基于 Jesse 在 2 月份 PyTennessee 大会上发表的演讲 为什么慷慨会变成愤怒,以及如何应对。要获得更多针对 Python 开发人员的见解,请参加 5 月 9 日至 17 日在俄亥俄州克利夫兰举行的 PyCon 2018 大会。

User profile image.
我是纽约市 MongoDB 的一名资深工程师。我编写了 Motor,异步 MongoDB Python 驱动程序,并且我是 MongoDB C 驱动程序的首席开发人员。我为 PyMongo、asyncio、Python 和 Tornado 做出贡献。我在国际摄影中心学习,并在 Village Zendo 练习禅修。

14 条评论

非常愉快的阅读体验。以及一个极其重要的问题。谢谢!

过去几年,我在 Scribus 邮件列表上承担的任务之一是,当有人对一个真诚但可能幼稚的问题做出粗鲁或愤怒的回应时进行干预。这有两个方面,一是缓和对提问者的语言,并尝试提供一些实际有用的帮助,二是向粗鲁的回答者传达,回应的语气对于列表来说是不必要的和不恰当的。

你的看法来自错误的方向。

你提到的社区“利益”来自贪婪和运动。

没有任何好事来自这些意图。

我认为,当你出于纯粹的信念帮助别人时,你会从自己身上获得最大的收获;因为你想帮助别人。那就是你应得的回报。

圣诞老人对另一个人发脾气是因为他期望得到回报。他应该帮助别人,因为他知道自己应该这样做并且想要这样做。

这是最常见的错误之一。因为你被爱而爱。谢谢你,好莱坞。

如果你要做任何事情,那就出于信念去做。否则,你总是为你所做的事情“收费”。爱、帮助、社区,随便你怎么说。都一样。

是时候投资于真正重要的东西了。

谢谢。我相信你和我在如何造福社区方面已经达成一致。我写道,问题发生是因为“我对事情的发展方式抱有期望,当这些期望落空时,我会生气。” 但如果我记住我的真实意图,“帮助新手本身就是一种奖励,无论你是否收到感谢。” 所以我的看法似乎与你的看法来自相同的方向。不同之处在于我承认我还不完美。=)

回复 ,作者:Renich

感谢你的诚实。一些 stackoverflow 标签非常尖刻。在一个我不会透露名字的标签上,我的每个问题都被投了反对票或关闭了。当一位顶级维护者的公开资料写着这个标签上所有有趣的问题都已经被问过了,所以我花时间投反对票和关闭问题时,情况并没有好转。我没有开玩笑。

我不再在该标签下发帖。

我认为“没有愚蠢的问题”这句口头禅是值得尊敬的,但只是部分正确。有些问题很愚蠢,因为它们可以通过 2 分钟的研究来回答。
问题在于,初学者通常不知道在哪里以及如何查找。因此,即使你收到一个愚蠢的问题,也可能不是因为提问者很愚蠢。所以你不应该生气,但你不应该立即回答问题,因为如果你这样做,初学者永远学不会如何研究自己的答案,而这对于开发人员来说是最重要的技能之一。相反,你应该告诉他们在提问之前应该在哪里查找,以便他们可以自己回答将来可能遇到的问题。

这很难。

这听起来像是世界观的冲突。一种假设是“嘿,你来这里是为了帮助别人,我们一起工作,或者有相似的兴趣”。当遇到“当然 #12345”时,如果反过来向你求助,这个人可以被原谅也以同样的方式回应你。

即使他们那样对你也不对,因为我们都是人,也许你很忙。

我们都不是完美无缺的,我们都不会从不生气,但我认为你在事后思考并希望更频繁地做正确的事情是很棒的。

我认为坚持不懈直到问题得到解决是一件很棒的事情,如果你可以建立一个社区或文化来支持它的话。

感谢你的口头禅。无论你决定给出哪种类型的答案,都必须先念诵口头禅。此外,这对你自己的健康也有好处!

在一个有一年多历史的帐户中,回答了一些问题。并且,除其他外,收到的评论风格是:“你,还不能回答”。尽管有些人觉得其中的一些东西对他们有用并投了赞成票。但其他人无缘无故地投了反对票。

当被要求停止无意义地投反对票时,那些在网站内拥有更高声誉并且应该表现出良好行为的用户,他们没有这样做。相反,他们寻找答案并将其投为反对票。这使得获得的声誉积分(成为“可接受”用户)下降,直到个人资料因“问题”而被自动阻止。

版主看不到这些事情吗?如果做这些事情的人正是那些拥有更高声誉并产生这种病态行为的人。他们以“他们正在遵守规则”为借口,而不去推理他们被告知的内容。所以,这不是遵守规则。他们是故意的。

科技行业需要改进,以鼓励人们寻求帮助,并教导没有人什么都懂。

“完美”是实用的敌人。

当我在加入一个 Linux 邮件列表(而不是编程邮件列表)时,我也曾被比我聪明的人“虐待”……(你认为你们很苛刻?……去那些邮件列表上问一个关于使用 sudo……synaptic……或 apt-get 的问题!……他们会生吞活剥了你!)但我想是因为这不是面对面的体验……我才能够长出一层厚厚的脸皮……在那种行为持续了大约一年半之后?……版主终于移除了那个人,那个人似乎专门守在那里,只是等待看到我在网上发布问题,然后用侮辱……冷嘲热讽……嘲笑等“猛扑”上来。有趣的是什么?……我已经转到其他邮件列表,尽管名称可能已更改……他们的“写作风格”却立即被认出来了……他们也被踢出了其他邮件列表!我用这个来表明人就是人,有些人是痛苦的,是高高在上的……有些人有优越感……另一些人有权力/控制欲。我发现这些人很可笑!……在整个高中时期,我都是一个十足的怪人……雪莱……阿瑟·柯南·道尔爵士……以及几乎所有的希腊哲学家都是我午餐和放学后的伙伴……所以我用“瓦肯人”的眼光看待一切,因为找不到更好的定义。非常注重逻辑,当人们恢复到他们的“克林贡人”的方式时?……我只是坐下来,对他们的行为感到有点好笑,因为没有任何积极意义。没有任何有价值的输出,只有一片虚空。(自然界憎恶虚空!)这使得这样的人与
蘑菇
在小溪边生长
那离城镇四十英里远
与河流相连
绕着山脉
位于湖泊的对面
在地球的另一边!

无需多言。哈哈!

好文章!!

行业的一部分是不问以前回答过的问题。并提供可重现的错误,以便开发人员可以花费很少的时间来重现它。如果你发布一个非常开放的问题,你肯定会被投反对票或收到负面反馈。

多年来维护了代码中利润丰厚的一部分。但是当其他人开始破解它时,我学到了很多东西。我相信我的文档写得很好,但是如果你有完全不同的技能组合,并且不了解隐式使用的生态系统,那就非常困难。

你是否向版主举报了 SO 的答案?在 gis.stackexchange.com 上,这种答案会让你第一次违规就被禁言一周。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
 

每周在你的收件箱中获取精彩内容。

© . All rights reserved.