What is meta? ×
Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 133 Stack Exchange communities.

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?

share|improve this question
    
Related: meta.stackexchange.com/questions/66290/…. It's by design, but there were some improvements attempted. I guess you can hope that people start using that Marc's full name instead. Myers and Mrozek certainly suffer a similar issue. –  Grace Note Jan 4 '11 at 22:09
    
@Grace I can imagine it's not all that rare. At least this case is slightly different, in that @Marc can be distinguished from @marcog. –  marcog Jan 4 '11 at 22:14
    
According to Mr. Gravell in the link Grace posted, it should only fire if you said something in chat within 2 days. I haven't visited chat since then so I can't verify if this is the case. I can sympathize with you, it can be disorienting to be hit by the chat ninjas because you have the same name of another, particularly active chat user. –  Jeff Mercado Jan 4 '11 at 22:24
    
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 –  jcolebrand Jan 4 '11 at 22:27
    
@drachenstern As @Jeff points out, active is defined as a 2 day window. It doesn't take into account that there are multiple users matching the criteria, but one is active far more recently than the other. –  marcog Jan 4 '11 at 22:34
    
do you show as ghosting at the time? –  jcolebrand Jan 4 '11 at 22:35
    
@drachenstern Not sure, but I get notified when I've been offline for hours. –  marcog Jan 4 '11 at 22:38
    
I think it falls to "we don't have enough traceability on the system to know for sure" ;) –  jcolebrand Jan 4 '11 at 22:38
6  
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. –  Aarobot Jan 4 '11 at 23:28
1  
Fine; will do something better –  Marc Gravell Jan 5 '11 at 0:00
1  
@MarcGravell ~ I for one don't see anything wrong with the current situation. I propose putting it on the 6-8 weeks calendar. –  jcolebrand Jan 5 '11 at 0:06
1  
I sympathize. Is there a more common name than "John"? –  John Jan 5 '11 at 1:53
1  
How rude! He was there first; you change your name! –  Pops Jan 5 '11 at 13:37
    
@Popular Demand Jeez, it was just a joke! –  marcog Jan 5 '11 at 13:49
    
@marco, I know, mine was a joke too. Sorry for confusing you. –  Pops Jan 5 '11 at 18:19

4 Answers 4

up vote 7 down vote accepted

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 SuperCollider™ 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:

What are the rules for when chat messages appear in a user's inbox?

share|improve this answer
    
Sounds great, thanks! –  marcog Jan 14 '11 at 12:55
    
Great. Now it's going to be much harder to stalk Michael Mrozek. –  mmyers Jan 14 '11 at 13:52
    
@Michael <-- that still catches all of you –  balpha Jan 14 '11 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 Mar 1 '12 at 19:10
    
@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. –  balpha Mar 1 '12 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 Mar 1 '12 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.

share|improve this answer
    
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 situations –  Pëkka Jan 4 '11 at 23:56
1  
You 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. –  marcog Jan 4 '11 at 23:57
2  
@pekka provide an example of where it wouldn't work. These two techniques can actually be combined. –  Jeff Atwood Jan 5 '11 at 0:20

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 StackExchange™ MultiCollider SuperDropdown™.

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.

share|improve this answer

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.

share|improve this answer
6  
I 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. –  Jeff Atwood Jan 5 '11 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 Jan 5 '11 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. –  balpha Jan 5 '11 at 9:09
3  
@Jeff, but not if you're in a room with "foo bar", I guess... –  Benjol Jan 5 '11 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. –  Jeff Atwood Jan 5 '11 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 Jan 5 '11 at 9:33

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .