Unfortunately, the first name of a popular individual here is also a prefix of my username. As a result, I get his chat notifications whenever someone refers to him by just his first name.
Is there a way to improve this? Besides my initial proposal that he find a new name. :) Perhaps take into account that if he's active in the chat room at the time, but I'm not, then ping him but not me?
4 Answers 4
Okay, we have made a change to the logic that we hope to be the best way to go.
"@marc" will always be considered a match for your user name, in the sense that it will be highlighted if you look at the transcript etc. (following the "party" logic in my other answer).
However, in most cases, "@marc" will not generate a notification for you anymore (no sound, no SuperColliderTM message, no entry on the "replies" tab of your chat profile).
The only time "@marc" will generate a notification for you is when we can't find anyone else who we consider to be a better match, i.e. someone called "Marc" who was in the room during the past seven days, or someone called "Marc Gravell" who was here in the past two days.
Yes, this makes the rules just a little more complicated. The hope is that this intuitively does the right thing.
This answer is slightly more distilled:
-
Great. Now it's going to be much harder to stalk Michael Mrozek.2011年01月14日 13:52:12 +00:00Commented Jan 14, 2011 at 13:52
-
@Michael <-- that still catches all of you2011年01月14日 14:05:46 +00:00Commented Jan 14, 2011 at 14:05
-
Would it be appropriate to revisit this coding - we have an issue where users intend to ping one of our moderators apple.stackexchange.com/users/9388/daniel and it instead is pinging apple.stackexchange.com/users/1042/daniel-beck - this is happening several times more than once.bmike– bmike2012年03月01日 19:10:17 +00:00Commented Mar 1, 2012 at 19:10
-
1@bmike: Feel free to submit improvement suggestions, but considering that the current way seems fine for the 99% case in a system that by definition cannot work in 100% of the cases (since we don't enforce unique usernames), it's unlikely that we're going to make huge changes.2012年03月01日 19:21:06 +00:00Commented Mar 1, 2012 at 19:21
-
I linked to this so Daniel Beck could know I mentioned it. Since he is the one being inconvenienced, I'll wait for him to post a new question given that it might be something he can work around. Maybe as several sites gain moderators with common names it would be then worth the time to re-code the system to sort a few users to the top.bmike– bmike2012年03月01日 19:23:04 +00:00Commented Mar 1, 2012 at 19:23
In addition to Aarobot's idea
I still don't understand why this doesn't behave the same way as notification on the sites themselves - notify whichever user matching the string who was most recently active.
We could prioritize matches that are first names.
In other words, when matching
marc
against
- marco
- marcus
- marc gravell
favor those matches where the end of the string is either EOL or a delimiter.
-
This sounds a bit arbitrary - it would fix the problem for some constellations, but not for others. Aarobot's idea alone would probably be sufficient for most everyday chat situationsPekka– Pekka2011年01月04日 23:56:16 +00:00Commented Jan 4, 2011 at 23:56
-
2You could also look for case changes (e.g. JJ for JJnguy) and alpha-numeric switches (e.g. Shog for Shog9). Although at least the above you mention is a great start.moinudin– moinudin2011年01月04日 23:57:27 +00:00Commented Jan 4, 2011 at 23:57
-
3@pekka provide an example of where it wouldn't work. These two techniques can actually be combined.2011年01月05日 00:20:05 +00:00Commented Jan 5, 2011 at 0:20
I disagree with Marc and Jeff here.
I have always compared @-mentions to shouting someone's name at a party – everyone hears it, anyone who thinks what they heard is close enough to their name turns around, and if there are two Simons in the room, they'll figure out who was meant.
I'd rather err on the side of notifying one person too much than forgetting one recipient.
I'm not saying there isn't room for improvements here and there, but neither Aarobot's solution (which works in comments where you easily see the 1–4 potential recipients, but already gets weird in chat when you have to define "active") nor Jeff's idea (prioritizing based on a deduced semantic property of the username) gets me excited.
Now, I sympathize with your (marcog's) case (I see quite a few people refer to Marc Gravell as @marc), and I'm open to ideas. But so far, I don't see anything I like.
-
6I don't agree. If my username is "foo" and I'm a room with "fool" and "foolish", when someone types @foo they are clearly directing it to me.2011年01月05日 07:48:25 +00:00Commented Jan 5, 2011 at 7:48
-
Question: does this stuff only apply to implicit replies? I'm guessing that explicit ones are properly targeted? Anyway, for ambiguous implicit replies I'd suggest this tweak: user in room takes precedence over an absent user who has posted in the last 2 days, else ping both as now.Benjol– Benjol2011年01月05日 09:07:45 +00:00Commented Jan 5, 2011 at 9:07
-
@Benjol: Yes, this is only for implicit. Explicit replies don't work base on user names; the fact that a "@Username" gets inserted into replies is solely to make it immediately visible to whom the reply is going.2011年01月05日 09:09:57 +00:00Commented Jan 5, 2011 at 9:09
-
3@Jeff, but not if you're in a room with "foo bar", I guess...Benjol– Benjol2011年01月05日 09:11:53 +00:00Commented Jan 5, 2011 at 9:11
-
1@benjol in that case, direct it at who talked last: "foo" or "foo bar". Use the talked-last as the tiebreaker.2011年01月05日 09:13:58 +00:00Commented Jan 5, 2011 at 9:13
-
@Jeff, I agree, except if one isn't in the room, in that case it's the one who's there who gets chosen, even if they haven't said anything yet.Benjol– Benjol2011年01月05日 09:33:58 +00:00Commented Jan 5, 2011 at 9:33
I sympathize with your situation, I actually ended up changing my display name from just "Tim" with the hope that people wouldn't be subjected to notifications that were meant for me.
Unfortunately, I don't think that there's necessarily any better solution to this problem than the one that's already in place. The problem is that while it's easy for us to see that the notification was intended for Marc Gravell in the context of the message, it's a bit harder for chat to make that determination.
In this particular case, it might be possible to be more selective, but it wouldn't be foolproof. Noting that "Marc" matches only a portion of your username while matching an entire space-delimited token of Marc Gravell's, it might be reasonable to assume the intended notification recipient was Marc Gravell, at least for the purposes of the StackExchangeTM MultiCollider SuperDropdownTM.
However, there's a (mildly convoluted, I admit) scenario where this could easily not be the case. Assume that you and a fictional user Martin had been talking, and I came in on mobile chat. Mobile chat doesn't have username auto-complete functionality, nor does it allow you to reply to specific messages, so to comment on one of your messages I'd be forced to type out the @-mention manually.
To make sure that my reply seemed to be directed at you (instead of Martin), and to make things easier on myself on the mobile keyboard, I might be inclined to just write "@marc" at the beginning of my implicit response. However, Marc Gravell would surely have been in the room recently enough to be the more viable notification recipient based on the modified matching rules above, and would therefore intercept the reply intended for you.
So, in this case, instead of getting a notification that wasn't meant for you, you wouldn't get one that was. It seems the belief is, and I'm inclined to agree, that it's better to be misnotified than to be unnotified, especially since I believe that misnotifications are thought to be relatively rare.
On the flip side of the coin though, there's also some faulty user behaviour going on here. Username auto-complete works very well in the normal chat, and had it been used you wouldn't have been notified, since @MarcGravell is certainly not a match for marcog. I believe that I was responsible for at least one of the "@Marc"s, so sorry about that. For my part, I'll make a mental note to be more careful about that in the future.
Edit: Having read it after answering, I could probably get behind Aarobat's suggestion too. It still leaves some room for notifications to not reach their intended targets, but those cases seem unlikely enough that they can be disregarded.
You must log in to answer this question.
Explore related questions
See similar questions with these tags.
Perhaps take into account that if he's active in the chat room at the time, but I'm not, then ping him but not me?I think this already happens