Elm 社区对有意沟通的看法

Fantastic talk by Evan Czaplicki from the Elm language community based on their experience on reddit and on their own Discourse instance:

I do wish there had been a bit more time for the end of the talk with the concrete feature suggestions…

… but overall this is a great talk and I recommend it if you’re interested in the community category here on meta :wink:

My main piece of advice for Evan is to abandon any significant investment of time in the /r/elm Reddit instance. Reddit is good for “what’s hot right now” and “breaking news” but sadly terrible to the point of being actively harmful at literally everything else involving human discussion.

I can’t emphasize this enough. It’s not that Reddit is bad (although it kinda is) but it’s such a negative return on emotional labor that I’d think twice before spending any time there at all beyond the absolute minimum necessary to have a presence.

32 个赞

Thanks for sharing the talk here!

Missing Stuff

In retrospect I wish I spent more time on these suggestions in spite of messing up the timing overall.

One important thing that I forgot to mention is about moderation. I am hopeful that labeling intent on each post could make moderation feel much less arbitrary. Rather than referring to a set of abstract rules, a moderator can base decisions on the actual stated intent of the poster. “The intent is learn but this post is doing X, Y, Z instead.” I don’t really know if that’ll make moderation fully viable in practice, but it seems like it’d be at least more viable.

The Rate Limits part shared above is based on experiences from our Discourse instance where we definitely have some posters that crowd out other perspectives with their speed and volume. The post length idea in Draft Hints in sort of relevant to that. Both of those apply to anything where the visual presentation is single-threaded though. We had the same issues with our mailing lists as well, but probably a bit more extreme. (Time limits is more for cases where people are already angry, and expectations is more about online places for work like GitHub.)

I think this stuff is all “cherry on top” kind of ideas though. To me, the root problem is about different people having different value systems (great!) and then creating systems where they collide via big blank boxes (risky!) Having communities define what “intents” are possible within their community is the best idea I have had there, partly because it can be a bridge between different norms. Rather than learning “that’s not what we do here” by posting 20 times and getting weird reactions, maybe the design of the forum communicates these values immediately by saying “which of these N things do you intend to do?”

Motivation

I felt like designs for online discussion kind of got stuck between the engagement and freedom lineages, and I wanted to start talking about a third way. So my goal was not to talk good or bad about any particular existing discussion forum, and I wasn’t imagining the audience being the folks who actually work on this stuff! (I hope it doesn’t feel aggressive or anything from this perspective!) Ultimately I just hope the ideas and references are interesting, and I am very keen to explore them in practice!

19 个赞

Not at all – but I want to reiterate how dangerous it is to deal with Reddit for any kind of serious community engagement. It’s like playing with a bag of razor blades and sharp knives; only a matter of time until major injury results.

(I’ll stop harping on this now, but in the interests of avoiding pain and suffering for yourself and your community, that’s step zero.)

2 个赞

Watched the talk and threw together these references along the way from within:

Some of the posts referenced in the talk:

Elm community discussions

Other references

15 个赞

Big fan of your holistic take on open source development Evan, it reminds me a lot of the Rust community which I hold in very high regard.

Would love to hear more about exactly how you envision such a system working within Discourse. I’m playing with it in my head and I’m having a hard time making it work without forcing a tad too much busy-work upon the poster. Most dev communities I’ve looked at, Meta included, deals with intent reasonably well simply by proper naming and description of its categories. A few take it one step further by using topic templates.

Maybe there’s more to be gained by recursively requesting the most problematic topics to abide by certain standards. Don’t hesitate to close flame-bait topics down – ask them instead to rewrite their post according to certain best practice principles, or post it elsewhere. discourse.elm-lang.org is your house after all so you shouldn’t be afraid to enforce pretty strict rules of civilized discourse.


One very interesting subject you touched on was the value of engagement with regards to particularly inflamed discussions. Similar to how so much of news media has resorted to prioritising divisive and shocking news reporting to maximise their ad impressions (i.e. max engagement), certain community members are very good at starting controversial discussions in the name of constructive feedback, which can quickly suck up a lot of the oxygen in a community. Discourse is already somewhat opinionated on what a successful community looks like, but we can do more to gently push community owners into the pit of success. Two things that immediately come to mind:

Engagement by itself is worthless

Most Discourse forums are not ad-based, so high engagement in an unconstructive debate is in-fact a negative-sum game. The absence of the “any traffic is good traffic”-incentive is something we can use to our advantage and we should be mindful of this in our user documentation and dashboard statistics.

How to curtail negative-sum engagement

Much easier said than done, but I think it’s well worth pondering. Discourse has lots of micro-optimisations already in place for this purpose (e.g. not allowing downvotes, rate-limiting posters who are dominating a topic etc.) and your suggestions could lead to further improvements. I’m gonna create Feature stubs for your suggestions so far so that the community can help us flesh them out.


Lastly, did you see a big difference in tone and overall attitude between your Discourse and Reddit community? I see that in your communications you prioritise your Slack chat and Discourse forum over Reddit (e.g. on your community page it’s just listed for the purpose of “discuss blog posts”) which I think is the right way to go, but I wonder if if could be taken even further. I’ll expand if we take this discussion further.

7 个赞

OMG, this! :arrow_double_up: For those not having time to look at the talk, I highly recommend at least reading this post. It is one of these cases where you have something on your mind, and then someone writes about it and it suddenly all makes sense. :slight_smile: Thanks @evancz for taking time to write that. I found it highly relevant even outside the Open Source community.

7 个赞

Thank you for taking a look at these resources! It is really exciting to see other people thinking about the same problems! :smiley:

Some comments stuck out to me that I want to mention.

I wouldn’t say that the problem is actually that the discourse is not civil. One of the things I did not have time to talk about explicitly is asymmetric time costs. Say there is a decision that is the result of a very complex balance of concerns. Person X will say “I think this is bad” and someone in the community may spend an hour writing up the complex situation. Person X does not find this satisfying, so they just keep saying “I think this is bad” any time it is vaguely relevant. The cost of this self-expression is that lots of other posters end up reacting. Everyone is civil enough, but there is no “agree to disagree” that ejects everyone from the loop. So an asymmetric time cost is when one person can invest a small amount of time to spend a great deal of other people’s time without breaking any rules. Often these cases have no natural limit.

We experimented with banning cases like this, and we definitely paid for that. I think six people got banned total, and it creates some very strange narratives about “they don’t want to hear disagreement” which I think is misdiagnosing a complex situation. (Another asymmetric time cost conversation!) So I hear you about not being afraid about this, but I just want to point out that it has a notable cost as well.

I think (1) the work instead goes to the moderators, except now it takes much longer overall and is perceived as adversarial, and (2) everyone else pays while things are unresolved. Moderators are very rarely talking to people who are easy to communicate with online, so “hey, can you try to X because of Y?” is heard in a very different way, and the interaction can end up significantly disrupting that moderators day in terms of emotions and productivity.

So I am personally okay if such a design “reduces engagement” with the forum. On some level, it is trimming down the infinite conversation possibilities to a smaller infinity, so one could reasonably expect less conversation. I could also see how conversations generally being more constructive could attract people who currently don’t feel comfortable participating, increasing the overall level.

Ultimately though, my hope is that having structured conversations wouldn’t feel like a burden for people.

11 个赞

Dude, you just reinvented Stack Overflow. And Stack is kind of infamous.

4. Sadness after being told to act more like a robot

As another sign of its inhumanity, Stack Overflow discourages greetings and thanks.

  • “just tried to write an answer on stack overflow, it’s a horrible experience, but what really surprised me is that they edited my answer and removed the “compassionate parts”… don’e read this thread if you want to stay positive today”
  • “A user with a mere 4,000 reputation edited the tags on my first question and took the opportunity to remove me saying ‘thanks’…That may seem like a tiny thing to some people, but I found it immensely offputting that a stranger was bothered enough by two words of common politeness to silently remove them from my post.”

Robots may not have use for these words, but humans use them to make others feel welcome and appreciated.

I’m not at all convinced that locking people into a finite set of “intents” (in Stack’s case, questions, answers, and clarification-requesting comments, just like your “Learning intent”) is the answer. Partly because it comes across as robotic and neurotic, and partly because people simply lie about their intent, and partly because people find ways to be horrible within the system (snarky answers, etc).

2 个赞

We tend to close topics like that. I’ve seen @sam used the timed close function (where a topic will be closed for {x} hours or days, then automatically reopen) when there’s a long, thoughtful writeup of the pros and cons but a lot of knee-jerk “this is still bad” replies.

I find that this tends to be topic-specific, so temporarily closing those particular problem topics tends to solve the problem. If it doesn’t solve the problem, because the person is doing this in many or all topics they participate in … that violates multiple guidelines I defined in What If We Could Weaponize Empathy? such as

  • Endless Contrarianism
  • Axe-Grinding
  • Griefing
  • Persistent Negativity
  • Ranting
  • Grudges

If one or many of these criteria is met, for a sustained period of time, that’s ample grounds for suspension.

Feel free to cite those rules in public when suspending users. We have suspension reasons that can be applied to accounts (and are in fact required for a suspension). Suspensions are always timed in Discourse, so you can also leave the door open to a person reforming later… but the emotional labor of reforming is on them, not you.

The goal of Discourse is to amortize effort across the community whenever possible … not to concentrate the moderation (and emotional labor) load on staff.

In general when you talk about Intentional Communication, to me that means specialized software. For example, Stack Overflow has very strict (and necessarily so) norms, as it is learning focused Q&A, where the goal is to create a useful shared artifact for future programmers, not “answer my computer programming tech support question right now.”

I can tell you that for many people they do feel that the style of communication on Stack Overflow is a burden. But what they can’t deny is that structured communication results in very effective search artifacts for future visitors… which of course, is the whole point of those interactions!

(Heh, I just noticed @notriddle posted basically the same thing while I was composing this reply. Do note that the “complaints” in that article are largely misunderstandings of what Stack Overflow is designed to do, and who it’s designed for. Imagine the sheer utter inhumanity of a world where Wikipedia articles don’t start with Hello and end with Thank You Very Much!)

Since Discourse isn’t a specialized communication tool, but a tool for general purpose communication in a variety of disparate communities, there’s a limit to what can be done here.

8 个赞

Of course, you spun it positively, I spun it negatively, but as far as actual facts go, we completely agree: the intentional communication model cannot be the primary means of community-forming. There has to be an unstructured communication channel, warts and all, and if you don’t provide one, people will make one, even if it involves misusing a specialized piece of software.

(which is why Wikipedia not only has areas for general discussion, but features the Talk links at the top of every article, near to the edit button, where would-be editors can’t miss it)

And, my final edit, in which withoutboats from the Rust core team calls for less talk of concrete feature suggestions.

4 个赞

Thanks for the advice on asymmetric time costs! I’ll have our moderators read that.

In my talk, I was trying to say that the “self-expression <=> self-expression” flow is the general purpose flow. That is what all forums use now basically. On top of that, different communities could create more structured flows for their particular needs. So it seems like people are objecting to “all structured flows with no release valves” but that is a rather extreme interpretation of the core idea.

Thanks again for the notes on what ya’ll moderate. I appreciate it!

5 个赞

一年后,您如何看待社区中的这些趋势和主题,@evancz

(此外,整个话题对于任何对社区思考感兴趣的人来说都是纯粹的宝藏::trophy:,请务必仔细阅读并关注相关链接。)

12 个赞

感谢你重新提起这件事。非常有用。我之前没看到,很高兴读到了它。

编辑:而且我这么说,是因为我自己曾在这里导致过一个话题被定时关闭。:wink:

6 个赞

我认为情况是相同的。

在尝试回答这个问题时,我想起了几年前读过的一本书——《自信的男人和涂脂抹粉的女人》(Confidence Men and Painted Women)。书中描绘了一个“无根之人”众多的时代:人们纷纷迁往新城市、融入新社交圈,因此传统的社区信任建立方式不再奏效。于是,各种繁复的仪式应运而生,试图通过服饰、举止、哀悼方式等来筛选可信之人。然而,这些仪式始终可能被虚伪地执行。于是,仪式变得更加复杂,以期形成更有效的筛选机制,但这些复杂的仪式同样可能被虚伪地操演。如此循环往复。我当时只是为了了解美国内战时期的历史而阅读,却惊讶地发现,书中内容与当今关于真实性、社交媒体、网红等议题的讨论竟如此相关。

无论如何,在那个时代,新的“场所”是涌入大量新居民的城市,因此在利用设计解决这些问题时存在物理上的局限。而如今,新的“场所”是为特定目的而创建和设计的网站。表面上看,这似乎意味着问题更容易解决(“只需改变设计!”),但控制大多数人设计方案的组织却从制造冲突的设计中获益匪浅(即所谓的“高参与度”)。

我本想亲自将我在演讲中探讨的理念付诸实践,但考虑到 Elm 语言至今已经耗费了多少年(以及随之而来的独特情感体验),我尚未做好独自深入推进这一探索的个人准备。

8 个赞

我仍然认为,“投入的时间”是无法虚伪地完成的,因此这一筛选标准依然可行。一个在社区中持续停留14天、30天、60天,甚至一年的人,会留下可验证的公开记录,可供深入审查。

Discourse 信任等级系统 就是试图捕捉这种粗略形式的体现。例如,当你达到 TL3(常规用户)时,我们就知道你至少已经:

  • 在过去100天中访问了50%的时间
  • 阅读了过去100天内创建的25%的主题和帖子
  • 在过去100天内回复了至少10个主题

(以及其他条件,更多细节请参阅上述链接)

当然,这并不能说明帖子的“质量”,也无法判断发帖人通过其帖子所做出的贡献总体上是积极的还是消极的。这需要人类(以及社区)的判断。

5 个赞

是的,我怀疑其他所有尝试都只是为了在足够的时间过去、让那个已知实体的社区做出判断之前,先弄清楚情况。

1 个赞

阅读这篇文章时,我有一段有趣的经历。周日我有些空闲时间,便漫无目的地刷着推特。这并非我常见的消遣方式,但我偶尔也想看看那是什么感觉。在我的时间线上,我偶然看到了杰夫几天前发的一条推文,它引起了一些风波。

https://twitter.com/codinghorror/status/1172279395035308032

@codinghorror,抱歉重提此事,但这能为我的经历提供背景)

我对这一话题有自己的看法,这些看法随着时间不断演变。我曾一度持有与杰夫相似的观点。但在与朋友以及在科技行业(包括一些科技工会成员)工作的人讨论后,我的观点发生了转变。我在这一过程中学到的一些内容,都体现在那条推特线程中。

我不知不觉读完了整条线程。虽然这条线程包含不少有用的参考和观点,但这些内容被大量讽刺、人身攻击或情绪激烈的只言片语所掩盖。尽管我早已不再持有杰夫最初表达的观点,但我仍有一瞬间(大约三秒钟)忍不住想发一条推文,指出讽刺并非告知他人的最佳方式(诸如此类),随即又心想:“我这是在胡思乱想些什么?”在推特上进行立场性讨论(也就是“争论”)大多毫无意义。

事实上,我不禁自问:我为什么要读完整条线程?我本可以把这段时间花在户外、和女友在一起,或者做任何其他事情。我早已知道里面会说什么,却仍不停地滚动屏幕。也许出于某种扭曲的好奇心,想看看接下来人们会想出哪些半带机智(但大多相当平庸)的贬损之词,但也因为这样做实在太容易了。

于是,我离开了推特,来到 Meta,看到了这个话题,观看了伊万精彩的演讲,阅读了一些相关讨论以及这个话题中表达出的有趣观点,包括杰夫的观点。可想而知,此刻我的思绪因剧烈的冲击而混乱不已:一边是被推特上“病毒式”内容和用户体验所困,另一边则是这里正在进行的关于这一现象的“元”讨论。

这让我想到,正如伊万所提到的,在线讨论的意图至关重要。杰夫可以为自己发声,但最初那些推文似乎意在引发挑战其观点的回应。无论那些以简短驳斥回应的人是否在理智上意识到这一点,这些驳斥背后都隐含着一个假设:杰夫所陈述的是一种反映其身份的政治立场。

当然,这两者可以同时为真(通常也确实如此)。你可以提出某事以进行讨论,同时也表达一种反映你身份的“政治”观点。然而,在在线环境中,尤其是在像推特这样受平台限制的环境下,陈述背后的意图往往会被其政治或身份层面的含义所淹没。

也许在某些在线环境(如推特)中,这种情况是可以预料的。我们常常(或希望)将推特视为一个“开放讨论平台”,但实际上它是一个“开放身份平台”,附带分享信息和幽默的功能。它主要是人们用来彰显身份、寻找志同道合者的方式。这在公共生活中有其作用,但也容易被误解。

这种对在线讨论平台及其帖子性质的误解,可以通过多种方式加以解决,从社区设计(如@erlend_sh 所提到的),到帖子结构和发布机制中纳入对意图的考量(如伊万所提到的)。

尽管如此,我不禁思考:如果杰夫的推文上有一个“学习意图”的标签,是否会影响人们对它的反应?总体而言,我认为在线讨论论坛的结构和“性质”特征,比人们对发帖者具体意图的理解更为重要。正如我所暗示的,我认为许多以简短贬损回应杰夫的人,在某种程度上可能也明白,他是在提出一种观点,以进一步了解该话题。

无论你采用何种方法,我希望看到更多是对不同平台各自角色和目的的理解,无论是在具体案例中,还是在公共辩论中。推特并非旨在促成文明 discourse,而 Discourse 也并非旨在制造病毒式内容。但我们常常透过自身对社会、政治或所运营社区的乌托邦愿景来审视这些(及其他)平台,并试图将平台塑造成符合这种愿景的样子。

12 个赞

在 Twitter 上,我想这样的徽章会立即被同时朝三个不同的方向滥用。有些人会将其用于每一条帖子,以此作为道德表演的工具;另一些人会讽刺性地、开玩笑地使用它;还有一些人会出于功利目的使用它,以吸引更多目光看到他们的推文。

我认为解决这个问题的唯一办法是进行 Moderation(内容审核)。必须有人愿意判断提问是否出于善意。在 Twitter 上 Moderation 是不可能的,但在 Discourse 实例中却可以实现。因此,在 Discourse 上这会起作用,但与此同时,这种情况本身可能就不太会出现。这有点像一种奇怪的“第 22 条军规”。

2 个赞

你必须接受它的本来面目——这只是基于某种相当随机的想法而发表的随口评论。这就是 Twitter 的本质。批评这种观点完全公平,否则我也不会费心发帖了。我当然不会发推文只是为了让所有人都点头附和,说“没错,杰夫,你又说对了,老板,干得漂亮,继续保持”。

正如我之前告诉大家的,我基本上从未想过工会的事。我对工会的了解几乎全部来自电影《诺玛·蕾》(Norma Rae)(有趣的是,许多千禧一代甚至从未看过这部电影,尽管它相当著名并获得了奥斯卡奖)。

我确实阅读了所有回复(嗯,大部分),其中有一些很好的观点,是我未曾考虑过的,甚至超出了“这不一定关乎金钱”的范畴。这大概是我一生中思考工会问题最多的一次。 所以,如果我们回到最初的目标……

不过,目标并不是要彻底改变某人的想法。在理想情况下:

  • 随着你对问题复杂性的理解加深,意识到其中涉及多少权衡、例外以及看待问题的不同方式,你对各类议题的立场会变得更加 nuanced(细致入微)。
  • 即使你不同意某个议题的“对立面”,你也能有效地为其辩护,以证明你真正理解它。

在一般的政治讨论中,如果你能提供一个数据点或一个叙事,让人们重新思考自己的立场,并更好地理解局势的细微差别……这已经是你所能做到的最好了。

改变人们的想法?:laughing: 那通常需要几十年。往往要等到整个世界都围绕他们发生变化,他们才会这么做。

……我仍然不太_认同_工会在科技行业整体上有多大的意义,但我确实对其中细微差别的理解深刻多了。而且我_绝对_意识到,工会这个话题充满情绪且极具争议性,远超我之前的认知。

“学习意图”这个说法其实不太成立;按照定义,你无法知道自己不知道什么。但如果你把平台看作……

Twitter 是一个分享即兴、短暂想法的地方,这些想法可能合理,也可能不合理

……与……

Twitter 是用来通过官方认证陈述深入窥探个人灵魂,并记录在永久档案中的工具

……相比,你会获得_截然不同_的体验。

7 个赞

是的,我同意你对平台的定性会影响你对其上讨论的评价。

不过,就 Twitter 而言,我认为你的使用方式并不典型。大多数人并不希望自己的随机想法和评论被当作其身份或道德人格的反映来评判。在你收到的许多推文中,就隐含了这类评判。

你愿意为了以你所描述的方式使用 Twitter 而承受这类人格评判,这值得称赞,但这并非普遍现象。

由于大多数人难以接受你所得到的那种回应,他们往往只会发布那些确实反映其身份或他们希望被如何看待的道德人格的内容,而不是随意的想法或评论。

他们未必在寻求完全的认可,但确实试图避免被贬低。我认为这种行为更为典型,而平台的特性也反映了这一点,即作为一个身份信号服务。

4 个赞