# Discuss SX Anti-pattern: Reply Sigh (aka "Reply Guy")

**URL:** <https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531>\
**Category:** SX solution development\
**Tags:** sx, anti-pattern\
**Created:** [April 21, 2024, 8:11am UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531 "2024-04-21T08:11:57Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![aschrijver](https://discuss.coding.social/user_avatar/discuss.coding.social/aschrijver/32/3_2.png) [@aschrijver](https://discuss.coding.social/u/aschrijver)\
**Post date:** [April 21, 2024, 8:11am UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/1 "2024-04-21T08:11:57Z")

</div>

> 🗣 &nbsp;This is the discussion thread for wiki: [**SX Anti-pattern: Reply Sigh (aka “Reply Guy”)**](https://discuss.coding.social/t/wiki-for-sx-anti-pattern-reply-sigh-aka-reply-guy/530)

---

<div class="post-metadata">

**Author:** ![jfinkhaeuser](https://discuss.coding.social/user_avatar/discuss.coding.social/jfinkhaeuser/32/242_2.png) [@jfinkhaeuser](https://discuss.coding.social/u/jfinkhaeuser)\
**Post date:** [April 21, 2024, 6:02am UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/2 "2024-04-21T06:02:34Z")

</div>

IMHO, there is no “reply guy” anti-pattern, and I wish people would stop using that toxic term.

There is something I call the living room problem, and it affects all social media to some degree, because social media confuses locality.

We’re not really evolved to navigate cyberspace. Even that name is a hint of that. Because cyberspace is information, which can be linked in a myriad of dimensions. But what we’re evolved to navigate is three dimensional space.

And so our social norms are, to some degree, connected to physical proximity. We have our personal space, and it’s an act of intimacy to invite people into it, and violence of sorts to push in.

I call this personal space our living room for illustration purposes, and contrast it to a public forum like speaker’s corner.

We are curious about the world, so we invite information into our living room. That may be a neighbour to share gossip with, or a newspaper we read, or TV we watch. All of this happens in our personal space. And to be clear on the image, our personal space also exists outside of the living room, it’s just that the living room is literally our space, while personal space is an abstract concept that moves with the person.

Now we can also _say_ things in our personal space, and due to the intimacy of inviting people in, we can rightly expect that we get to control what people do with the things we say - we’ll say things like “this stays between us, but X also knows” or whatever.

If we want to share things with the whole world, we go on TV or write a newspaper article. But to use a space metaphor, it’s better to describe this as standing on a soap box at speaker’s corner. We can expect some form of debate to be sparked, merely by stepping into this open space where debate happens.

Social media do not make a distinction between these two spaces, and I’m pretty sure that confuses our spatially evolved social brain. Our feed is simultaneously the information we invite into our living room, and our soap box at speaker’s corner.

Worse, to the onlooker, if you speak anything it is as if you said this in their living room. They invited your information in by subscribing, after all.

So now we have a space where we as speaker cannot distinguish between the public square and the personal space, and everybody has the same right to lay claim to the same space.

This cannot really work amicably.

Blogs, for example, are different. Your feed reader is a distinct space from their comment form. Or you can reply on your own blog/soap box.

“Social” media has a living room problem, not a reply guy anti pattern, IMHO.

---

<div class="post-metadata">

**Author:** ![aschrijver](https://discuss.coding.social/user_avatar/discuss.coding.social/aschrijver/32/3_2.png) [@aschrijver](https://discuss.coding.social/u/aschrijver)\
**Post date:** [April 21, 2024, 6:08am UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/3 "2024-04-21T06:08:01Z")

</div>

> [@jfinkhaeuser](#):
>
> IMHO, there is no “reply guy” anti-pattern, and I wish people would stop using that toxic term.

Agreed. I cross-posted a toot stating something of similar nature:

> Some patterns should be renamed.
> 
> Some social behaviors are named with [#UrbanDictionary](https://social.coop/tags/UrbanDictionary) slang, that may feel good to brandish about, but don’t foster an inclusive culture. (Even while the terminology may have emerged like that with good reason)
> 
> In the fight for [#gender](https://social.coop/tags/gender) freedoms, that are so under pressure, it feels contradictory to use terms as [#ReplyGuy](https://social.coop/tags/ReplyGuy) and [#Mansplaining](https://social.coop/tags/Mansplaining). It is like saying: “I care about gender, but don’t mind to discriminate people based on gender stereotypes”.

---

<div class="post-metadata">

**Author:** ![onepict](https://discuss.coding.social/user_avatar/discuss.coding.social/onepict/32/31_2.png) [@onepict](https://discuss.coding.social/u/onepict)\
**Post date:** [April 21, 2024, 7:56am UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/4 "2024-04-21T07:56:58Z")

</div>

I think @jfinkhaeuser is on to something with the livingroom idea.

But I also think that some folk just can’t resist dropping a comment when taking a step back for a moment could be better. Sometimes replies drop like a clang in the conversation. I do my best to ignore or engage depending on if I feel the person is trolling or is genuine. Sometimes though I will argue back. It depends on the situation.

But being a women, yes I feel the pressure. Sometimes I get replys to my posts that are a headscratcher to be honest.

Having had the interactions IRL where my boss had to confirm to a sexist client that the thing I said was correct. There is a desire to shut down that conversation thread right now. Because I can see where the pattern may go.

Plus sometimes I can’t tell if someone is trying to tell a joke.

I think the anti pattern does depend on the desire of the people in that moment in time.

I’ve never been tempted to use those cards. But I do understand the desire.

---

<div class="post-metadata">

**Author:** ![sneakers-the-rat](https://discuss.coding.social/letter_avatar_proxy/v4/letter/s/2bfe46/32.png) [@sneakers-the-rat](https://discuss.coding.social/u/sneakers-the-rat)\
**Post date:** [April 21, 2024, 8:57am UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/5 "2024-04-21T08:57:27Z")

</div>

what up here’s another approach: fetch all replies baby

> **[jonny (nonvenomous) (@jonny@neuromatch.social)](https://neuromatch.social/@jonny/112307981094627966)**
>
> Hello fedi. i am trying to solve the "fetch all replies" problem once and for all that makes the fedi feel a lot more desolate and with a lot more reply guys in it than it should be. this is take two, where before i had it triggered by a button, but...

> <https://github.com/NeuromatchAcademy/mastodon/pull/44>
>
> Fix: https://github.com/NeuromatchAcademy/mastodon/issues/43
> 
> More discussion/…description at #43
> 
> Current status: 
> \- the core of the feature is complete, but we need to restructure it a bit for the frontend and to mitigate one abuse scenario
> \- 24-09-29: refactored into separate services/workers to prevent abuse and touch as little of upstream as we can. will split into at least 2 PRs: this one will be for the backend service, next one will be for integrating with frontend. Still need to write tests before we merge this.
> 
> Sub-branches
> \- \[\`fetch-all-replies-service-stash-streaming\`\](https://github.com/NeuromatchAcademy/mastodon/tree/fetch-all-replies-service-stash-streaming) - some partial work on getting streaming to work, stashing to work on other things
> 
> TODO:
> \- \[x\] Rate limiting: only want to get \*some\* replies, but there isn't any pagination in the \`context\` endpoint. Need to figure out some way of limiting to a certain n statuses or only doing a request once (ie. if the next TODO is completed this one should be)
> \- \[x\] Filtering statuses that are already present in the DB: I can't tell yet if the workers and services called to fetch the replies will return a cached version of a local status rather than doing the remote request yet. If they do, then we're good. otherwise, we need to make it happen
> \- \[x\] Anti-abuse: someone just raise a good point in a DM, we need to add a global recursion guard to protect against an adversarial instance that keeps manufacturing a broad and deep thread tree that we would just keep requesting forever. eventually the global ratelimits would kick in and it would be basically us DDoSing them as much as them DDoSing us, but we do need some cap across the whole operation rather than just at each level. 
> - \[x\] Split into separate worker: I think this means that we need to make a totally different worker instead of patching into the existing ones, which actually will be good, i just did some work to clean things up for integrating with the distribution system so it shouldn't be too hard.
> \- \[x\] Tests:
> - ~Get replies on fake other server on loading context endpoint~ (testing context endpoint deferred to next PR)
> - \[x\] Only get replies once
> - \[x\] break infinite trees - limits on fetch are tested but not adversarially
>   
> Pushed to next PR:
> \- Web UI: push posts as we get them into the web ui 
> - backend: \`timelines:thread:{root\_id}\` streaming channel (almost done)
> - frontend: subscribe to streaming channel when in a DetailedStatus component
> \- Tests:
> - stream to ux

---

<div class="post-metadata">

**Author:** ![sneakers-the-rat](https://discuss.coding.social/letter_avatar_proxy/v4/letter/s/2bfe46/32.png) [@sneakers-the-rat](https://discuss.coding.social/u/sneakers-the-rat)\
**Post date:** [April 21, 2024, 9:00am UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/6 "2024-04-21T09:00:41Z")

</div>

regardless what we call it, we need better patterns for a) distinguishing audience and intent, and b) decreasing the burden of (a)

---

<div class="post-metadata">

**Author:** ![aschrijver](https://discuss.coding.social/user_avatar/discuss.coding.social/aschrijver/32/3_2.png) [@aschrijver](https://discuss.coding.social/u/aschrijver)\
**Post date:** [April 22, 2024, 5:14am UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/7 "2024-04-22T05:14:47Z")

</div>

I got some nice discussion on the toot about [“Reply Sigh” anti-pattern](https://social.coop/@smallcircles/112307338089655205) yesterday, and just [replied on fedi](https://social.coop/@smallcircles/112313132267397133) that:

> Yesterday I was not planning to write so much on this ‘anti-pattern’ and put the idea of a [#SX](https://social.coop/tags/SX) pattern library on the [#SocialCoding](https://social.coop/tags/SocialCoding) forum.
> 
> What I think is nice of this concept of “patterns” is that it offers a means to think of the totality of the problem + solution space.
> 
> In techy circles the talk goes often immediately into functionality & features, followed by impl. That’s one way. Non-optimal.
> 
> You all address interesting additional angles to consider. Holistically.

> For a pattern library having a good pattern template can serve to make the patterns more useful to a broad audience.
> 
> In this particular case addressed was:
> 
> - Knowledge about social dynamics in a particular medium.
> - Ditto skills that improve ones experience.
> - Tactics for communication.
> - How the anti-pattern follows a process, and can lead to different scenario’s that play out.
> 
> And ONLY THEN comes:
> 
> - Ways that technology might improve experience, mitigate or solve.

What I should do now is create a more general topic about the SX Pattern Library idea itself.

---

<div class="post-metadata">

**Author:** ![aschrijver](https://discuss.coding.social/user_avatar/discuss.coding.social/aschrijver/32/3_2.png) [@aschrijver](https://discuss.coding.social/u/aschrijver)\
**Post date:** [April 22, 2024, 7:20am UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/8 "2024-04-22T07:20:25Z")

</div>

On fed [@fabi posted](https://blahaj.zone/notes/9se38waurc3g004x) a very interesting and useful model that can be applied to analyse the communication:

> **[Four-sides model](https://en.wikipedia.org/wiki/Four-sides_model)**
>
> The four-sides model (also known as communication square or four-ears model) is a communication model postulated in 1981 by German psychologist Friedemann Schulz von Thun. According to this model every message has four facets though not the same emphasis might be put on each. The four sides of the message are fact, self-disclosure, social relationship between sender and receiver, and wish or want. The four-sides model also known as communication square or four-ears model is a communication model ...

Quoting from their post (with consent):

> I studied communication sciences, there’s a very basic and useful model one can apply to such situations (the [“Four-sides model”](https://en.wikipedia.org/wiki/Four-sides_model)), and understanding it can greatly reduce the risk of misunderstanding a message, or giving an answer the other person doesn’t want to hear, and analyzing a situation like this in order to not make the same communication mistake with that person again. It’s very hard to do this in real-time irl conversations, but online, where you have time to think about what you’re writing, it can be very useful and can even help with decyphering things like sarcasm.
> 
> To break down the dentist example from what I got from it:
> 
> > #### Sender:
> > 
> > Factual level: My teeth hurt.  
> > Self-revealing layer: I want attention, or distraction from the pain.  
> > Relationship layer: You can give me attention or distraction.  
> > Appeal layer: Say something nice to me.
> 
> > #### Receiver:
> > 
> > Factual level: Your teeth hurt.  
> > Self-revealing layer: You are in pain.  
> > Relationship layer: You need help.  
> > Appeal layer: Someone should fix your teeth asap.
> 
> As you can see, there’s a difference in what the sender and receiver say/hear in the message, on several levels. It’s of course impossible to always reliably know what a stranger actually wants to express or how they are going to react to your message, which is why it’s important to actually say what you want and think about your own appeal, about what you want to achieve with your message, when talking to strangers (or in general, really).

---

<div class="post-metadata">

**Author:** ![jfinkhaeuser](https://discuss.coding.social/user_avatar/discuss.coding.social/jfinkhaeuser/32/242_2.png) [@jfinkhaeuser](https://discuss.coding.social/u/jfinkhaeuser)\
**Post date:** [April 22, 2024, 8:06am UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/9 "2024-04-22T08:06:18Z")

</div>

That’s undoubtedly true.

I think those are two different things, but the “reply guy” sexist behaviour gets reinforced by the mixing of spaces and perhaps vice versa.

What I mean is, it’s way easier to find this kind of sexism you describe in internet comments than in the real world, because it takes a special kind of asshole to cross the boundary between distinct physical spaces just to comment. They do exist for sure, though.

And conversely, because that boundary is invisible online, you’ll similarly uninvited behaviour from not-quite-so-assholey people… but the experience is much the same, again because it still feels like an intrusion due to the lack of separation of spaces.

Seems to me they coexist on separate dimensions, and social media “just” provide the perfect setting for making it pervasive and awful.

---

<div class="post-metadata">

**Author:** ![onepict](https://discuss.coding.social/user_avatar/discuss.coding.social/onepict/32/31_2.png) [@onepict](https://discuss.coding.social/u/onepict)\
**Post date:** [April 22, 2024, 12:35pm UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/10 "2024-04-22T12:35:09Z")

</div>

I think there’s also a bit of different experiences / threat models.

Like I’ve worked in some really good spaces with no sexism. But I’ve also worked in corporate, at the start of my career in the late 90s. Where one guy caused a whole HR situation and I was at the edge of it. Other women in his workgroup had it so much worse. So it is situational.

But on nearly every platform apart from discourse, matrix and livejournal. I’ve had a mixture of interactions. Some minor understandings, but some really quite bad.

In RL as well, there were issues in school, and from the accounts from friends daughters they have had it worse.

I think for some of us there is no boundary between online or offline. But for others being on the internet is a bit like behind the wheel of a car. There’s a distance, so social consequences don’t matter as much. We forget there’s a person behind that screen.

Different folks have different levels of experience in our spaces. So there’s a confusion about how to act. But there are also some folks who have been badly abused online and elsewhere. So it’s a bit like a footpath, certain behaviours that are similar, but from different people mean the reaction happens.

Of course, that isn’t fair on people who didn’t mean to press on that trigger. It’s why I try to take a step back and take a minute.

I’m more concerned with those who transgress online and offline. Because then there’s a possibility of real hostility.

---

<div class="post-metadata">

**Author:** ![onepict](https://discuss.coding.social/user_avatar/discuss.coding.social/onepict/32/31_2.png) [@onepict](https://discuss.coding.social/u/onepict)\
**Post date:** [April 22, 2024, 1:09pm UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/11 "2024-04-22T13:09:38Z")

</div>

The thing to remember about the reply guy hostility is that often with that footpath of experience, is that first reply could be a salvo to a pattern of abuse.

So the temptation is to just shut it down.

We also need to remember that some folks have on occasion caused that harm and feel guilty, so they also come down hard on potential abusive behaviour.

But sometimes yes, it can be weaponised. So the first step is to take a breath. Step back for a moment. Scout out the lay of the land related to the post.

Scouts mindset.

---

<div class="post-metadata">

**Author:** ![aschrijver](https://discuss.coding.social/user_avatar/discuss.coding.social/aschrijver/32/3_2.png) [@aschrijver](https://discuss.coding.social/u/aschrijver)\
**Post date:** [May 28, 2024, 12:29pm UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/12 "2024-05-28T12:29:52Z")

</div>

Another fediscussion on the topic of Reply Guy anti-pattern was [started by me](https://social.coop/@smallcircles/112518407894217100) by in reaction to a nice [blog article](https://www.baldurbjarnason.com/2024/social-media/) by Baldur Bjarnason on how to approach social media based on his experiences. The article was announced in this toot:

> **[Baldur Bjarnason (@baldur@toot.cafe)](https://toot.cafe/@baldur/112518312205345213)**
>
> So, yesterday I wrote a bit about how my experience with social media has been changing:
> 
> "Social Media."
> 
> https://www.baldurbjarnason.com/2024/social-media/
> 
> \> I decided to lean into that and rely instead on something much simpler: Text files.
> 
> I...

---

<div class="post-metadata">

**Author:** ![d3v0](https://discuss.coding.social/user_avatar/discuss.coding.social/d3v0/32/936_2.png) [@d3v0](https://discuss.coding.social/u/d3v0)\
**Post date:** [May 19, 2025, 3:50pm UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/13 "2025-05-19T15:50:54Z")

</div>

> **[DONOTREPLY.CARDS](https://donotreply.cards/)**
>
> DO USE DO NOT REPLY CARDS FOR BETTER REPLIES ↱

Cards for unwanted replies in multiple languages.

---

<div class="post-metadata">

**Author:** ![d3v0](https://discuss.coding.social/user_avatar/discuss.coding.social/d3v0/32/936_2.png) [@d3v0](https://discuss.coding.social/u/d3v0)\
**Post date:** [July 22, 2025, 12:03pm UTC](https://discuss.coding.social/t/discuss-sx-anti-pattern-reply-sigh-aka-reply-guy/531/14 "2025-07-22T12:03:16Z")

</div>

> **[How to give advice on the internet without being an utter menace](https://anotherangrywoman.com/2023/01/18/how-to-give-advice-on-the-internet-without-being-an-utter-menace/)**
>
> If you don’t think you need to read this post because you’re always giving Good, Helpful Advice as a Good, Helpful Citizen, this one is for you. I’m sure you probably mean well, b…

A how-to blog to avoid a form of reply sighs.
