153

Note 2011/09/20: Jeff's marked this status-completed. I (the person making the request) disagree that what's been done, which is actually an implementation of this other request, meets this request and believe status-declined would be more correct. The new auto-completer is nice, but not the same. But it's Jeff's site, I won't press the point.

The issue raised in Don't remove the @ part of my comment has had a lot of attention, but the crowd of us opposed to the change it relates to haven't done the constructive thing of offering a viable alternative. This post addresses that omission.

Very briefly recapping: The recent change is that the system now removes @postowner from comments where it's technically unnecessary to trigger a notification and where no one else has commented. Jeff believes them to be noise. Overwhemlingly the feedback in the linked question is that the change should be reversed for various reasons; follow the link if you want the details.

Jeff has a specific goal with this change, which is for people not to put @postowner at the beginnings of their comments for no good reason. He's trying to protect and improve the signal-to-noise ratio on the SE network. So here's a suggestion for an alternate way of doing that which won't, I think, raise the kind of massive negative response that the current change has raised:

Make it clear in advance who will be notified, by putting an indicator under the comment field when the user opens it (see the end of the question for a bookmarklet that lets you try this out live):

Picture of comment box with note underneath: 'Jeff Atwood will receive a notification of this comment'

This also opens the door to making it clear when you've addressed others as well. For instance, if I were to comment on Jeff's answer to Siva's question:

Picture of comment box with note underneath: 'Jeff Atwood and Siva will receive notifications of this comment'

And of course, we'd cover the other times users get notified, such as if Jeff replied to Siva's comment. The system automatically detects when two people are talking, Jeff doesn't have to put @Siva there for Siva to be notified. (Did you know that? I didn't until Jeff mentioned it in the linked question.) So the instant Jeff opened the comment box, it would say "Siva will be notified of this comment", and Jeff would know he can just type away.

This informs the user without being obtrusive. The user gets a very clear steer that they don't have to put @postowner on it for the postowner to get a notification, and so anyone doing that purely to trigger notification will learn not to. If the user still feels they want to for some reason, it's clear that they've made an intentional decision to do so for non-technical reasons.

Obviously the wording can be smithed a bit, but the idea is that Jeff's goal of reducing noise can be achieved in a helpful, engaging way, without triggering the objections raised around the current change. And it goes further than @postowner, steering people any time they don't need to direct the comment, thus reducing noise even further if you consider those directions noise.


Potential additional tweaks:

  • Part of the text could be linked to the existing help box for comments (not a separate link, but for instance "will receive a notification" or such. Wouldn't want it to jump out like the help link does, but it could still link there.
  • If there's concern that people don't read, this could be combined with an intermittent reminder pop-up that only shows a maximum of 3-5 times at spaced intervals (intermittent variable reinforcement), if the user does specify a redundant direction: "You don't need @Jeff on this comment, that user will be notified regardless. Remove it?" Once the user has seen and dismissed this a few times, we know they're aware and making an informed, specific decision and can stop nagging.

Update: I threw together a script to show what this might be like in terms of user experience. You can try it out on your favorite SE site (perhaps here on meta) by creating a bookmark with this URL:

javascript:(function(){var%20d=document,db=d.body||d.documentElement,elm;elm=d.createElement('script');elm.src='http://ss.crowdersoftware.com/se/se-comments.js';db.appendChild(elm);})();

That's a bookmarklet that bootstraps this script, loading it into the page. Once you have your bookmark:

  • Go to a question on any of the SE sites using the current engine.
  • Click your bookmark.
  • Click a link to add a comment. (You must do this after loading the script via your bookmark.)

Underneath the usual character counter, you'll see the notification preview. To unload the script, just refresh the page or go to another page; the effect of the bookmarklet is transient, affecting only the page you actively loaded it on and only until you refresh it.

This is just proof of concept, it's not production code nor is it a code submission to SE (though SE is welcome to use any of it they find useful when doing a real version). It doesn't actually tell the server who to notify (of course), it uses a much simpler rule for figuring out who you're flagging with an @user (I didn't think the proof-of-concept needed to perfectly replicate the complex rules used), it's longer than a real solution would be because I'm coming at it from the outside, it polls the comment textarea where we'd probably just want to use the same events as the character counter (although the character counter doesn't understand pasting via the mouse), etc., etc., etc. Please don't think this is more than it is. It's purely a rough user experience proof of concept demonstrator. That said, it does demonstrate auto-notification of the postowner, and auto-notification of a single commenter if the postowner replies.

12
  • 3
    Brilliant suggestion TJ! -- Devs, would this change overburden the server with requests?
    – M. Tibbits
    Jul 21, 2011 at 14:03
  • 2
    You have great questions
    – genesis
    Jul 21, 2011 at 14:03
  • 23
    Definitely the most constructive post I've seen yet regarding this new feature. +1 for channeling your opinion into something productive rather than the slew of rants I was beginning to expect thanks to this change. (Plus, this even seems like it might be a good idea.) Jul 21, 2011 at 14:06
  • @Cody: Thanks. I'm only embarrassed not to have offered a suggestion before now. I plead overwork (just got off a massive deadline push). Jul 21, 2011 at 14:08
  • 3
    This is an excellent idea on its own merits, and would be an improvement no matter what is done with the name reference stuff.
    – McCannot
    Jul 21, 2011 at 14:08
  • 3
    Do note that I didn't mean that comment to sound like I was criticizing you in particular. You've been quite courteous throughout the entire process. It just becomes tiring to see people bang their heads against a wall. :-) I think this plan has the very desirable side effect of teaching users how to use the system. Jul 21, 2011 at 14:09
  • 2
    @Cody: Thanks, I didn't take it that way. @M. Tibbits: I was thinking it would be done client-side, not server-side. The logic for figuring out who to notify could be moved to the client and the list (of user IDs) included with the submission. (The server would, of course, check that the user IDs were active in the area, it just wouldn't need to duplicate the logic that makes @crowder and @T.J. both work.) Jul 21, 2011 at 14:10
  • Does this detection work reliably if someone posts a comment while I am still typing mine? ie. I start typing my comment, believing it would go to Jeff, then someone else posts a comment in the meantime, will my comment be a reply to that comment, or go to Jeff? Jul 22, 2011 at 9:47
  • @Lasse: In your specific example, barring your calling out the other person, of course only Jeff would be notified (being the postowner). But there are some edge cases that will need exploring, as with any enhancement. Someone commenting on their own post, for instance, when initially no one else had commented -- but someone does in the meantime, making it seem like a two-person conversation. In that case, though, I'd say the client-side determination (not notifying that person) would be correct, notifying the other person makes no sense if I didn't know they'd commented when writing mine. Jul 22, 2011 at 9:56
  • I guess my question was more about what happens now, not with the UI change that is proposed here. ie. if I type out this comment here now, will you be notified? And, if someone posts a comment in the meantime, will you be notified then? (with the current implementation that is.) Also, just to make sure you understand; I really like the proposed UI change, at the moment there seems to be quite a lot of hidden magic going on, and I feel really unsure about what happens when I post stuff now. The more certain our users are that the system behaves like they expect, the better. Jul 22, 2011 at 9:57
  • 1
    Which in turn means that if we can't make the system behave like everyone expects it to, the more clarity the system brings is better because then we change what the users expect of the system instead. I like it! Jul 22, 2011 at 9:59
  • 1
    @Lasse: Glad you like the idea! :-) Yes, I got notified of the above, because I'm the person who posted the item you're commenting on (the question, in this case). The postowner (person who posted the Q or A) always gets notified, it's automatic. My understanding is that the only other automatic notification is that if Joe comments on Nitin's post, and Nitin comments on it when no one else has, the system assumes the comment is aimed at Joe and notifies him. To notify anyone else, you have to call them out specifically. And yeah, I really like how this makes all that clear and up-front. Jul 22, 2011 at 10:03

4 Answers 4

15

Since most users don't understand the dynamics of comment notification (I still forget the subtleties sometimes), it would be good to put that out there to make it clear who they are addressing.

9

I like this. I also think there should be a small visual hyperlink (with "?" or "More information...") that links to useful documentation for what's going on.

4
  • 2
    Hmmm... It's a bit redundant with the "help" link. I suppose one could link it in both places, but that's getting a bit link-happy. Jul 21, 2011 at 14:24
  • ok, then perhaps the text "will receive notifications in this comment" in your example should be the link. That way it doesn't take up more room. As for the help link, you have a point -- I just tried it -- but I've never noticed it before, despite using SO for over 2 years.
    – Jason S
    Jul 21, 2011 at 14:30
  • That makes sense. Re your not noticing the "help" link, hopefully that won't apply to the larger, more dynamic text saying who will get notified. Even if a few people miss it, though, it's still a much better "meet in the middle" resolution to what you called the @user-feud than either keeping or tossing the current change. Jul 21, 2011 at 14:33
  • the comment help link was only added in the last few months as I recall. Definitely no more than 6 months old, max. Jul 28, 2011 at 9:48
-6

the crowd of us opposed to the change it relates to haven't done the constructive thing of offering a viable alternative. This post addresses that omission.

Thanks -- this is definitely more constructive.

However, it also implies that we should be printing ...

Joe Smith [the question owner] will be notified of your answer.

... at the bottom of every answer input form.

In other words, if you assume that the question owner will be notified of your answer to their question, why wouldn't you also assume that the post owner will be notified of your comment on their post?

As I said in another answer:

There is no flow of discussion in the typical case -- comments always address the person "on the podium" (aka the post owner) unless they explicitly indicate otherwise. In other words, every post is like a little blog entry or presentation, owned by the person who wrote it. Like so.

every SE post is a tiny presentation

During a presentation, when someone raises their hand in the audience and asks a question, it is quite safe to assume they are not addressing another random audience member.

I'm opposed to adding a bunch of random clutter signage UI, when the defaults "just work" in the most typical comment cases. Remember the median number of post comments on Stack Overflow is zero and the average is two.


(source: hse.gov.uk)

What I could support is a dynamic rejection of comments that contain @nomatch strings which don't address any valid commenter, editor, or the post owner. At least in that case we are telling you just in time as you submit the comment, rather than cluttering the UI and making it even noisier.

23
  • 20
    One man's "random clutter" is another man's useful information. I don't find it clutter at all, and apparently a whole bunch of other people don't either. This is a dramatically better way to achieve your end result than summarily editing what people type. The current approach has been soundly rejected by the community, and this one soundly supported. I think this is a case where you need to gracefully accept that. Jul 28, 2011 at 10:18
  • 1
    it takes a tough man to make a tender chicken. Jul 28, 2011 at 10:25
  • 21
    It doesn't, you know. It takes a tough man to admit it when he's got something wrong, rather than digging his heels in in the face of overwhelming feedback. If we're trading aphorisms, there's a Hungarian one that comes to mind: "If one person calls you a horse, laugh at him. If a second person calls you a horse, smile. But if a third person calls you a horse, look in the mirror." In general, prefer the carrot to the stick. You've chosen the stick, the draconian, authoritarian approach. I'm suggesting the carrot, an engaged, educational approach. Jul 28, 2011 at 10:32
  • 4
    The point about the median being 0 and the mean being 2 kind of makes an interesting point, but it's unclear whether it's what you intended. There's big skewness there, and thus there are likely a sizeable number of posts with very large numbers of comments. In those tangled web comment discussions, the @ operator would seem to be useful. Jul 28, 2011 at 10:40
  • @t.j. I do greatly appreciate the constructive feature suggestion in lieu of Yet Another Rant, but we'll just have to agree to disagree on this one for now. I'm sure lots of people lobbied Steve Jobs to add just one more button to the iPhone as well.. Jul 28, 2011 at 10:42
  • 1
    @gsk3 that's why the removal of @postowner only occurs when the only people talking in comments are the post owner and one other person. Jul 28, 2011 at 10:43
  • 11
    @Jeff: That's the old cherry picking debating technique, plus the old virtue by association trick. If Jobs was right about the one button, which is by no means clear, it has precisely nothing to say about whether you're right here, either in terms of the change you've made or in terms of persisting with it. You might even call mentioning it "noise". ;-) But seriously, if you're going to stay on this path of choosing authoritarianism over democracy, slap down over lift up, I genuinely believe you will end up destroying SE. The current change is active harm. Persisting with it doubly so. Jul 28, 2011 at 11:16
  • 1
    @Jeff: Why would you reject comments with @lerts that don't match anyone? Here's no user lerts in this comment thread, but why would it be bad that I chose to write @lerts nevertheless? Jul 28, 2011 at 15:33
  • 3
    @Jeff if people clearly aren't getting who is notified, and why (since they keep putting @postowner in comments, then T.J.'s proposal is clearly not "bunch of random clutter signage UI". If you want people to use the system in the way you want it to be used, you have to educate them somehow. They clearly aren't reading (or perhaps agreeing) with what the FAQ says on the matter
    – JockM
    Jul 29, 2011 at 18:34
  • 2
    @Jeff I would also argue that the system doesn't "just work". It does if-and-only-if you know it works that way (which isn't obvious), and agree. I personally expect it to work more like twitter or other forum systems (where the use of @ targeting came about), were @ have little to do with notifications, and everything to do with directing attention. So I find SO to be the alien outlier rather than the norm.
    – JockM
    Jul 29, 2011 at 18:37
  • 6
    @Jeff why do you assume the only reason people write @blah is for notification? The @ notation predates SO, and it predates @ based notifications on SO. So it seems clear that users write them to direct who they are talking to. If you don't want this (which you don't as I read what you are saying) then educating them is the only way to get people to stop. Otherwise you are going to keep slapping bandaids to try and correct the "problem" in post.
    – JockM
    Aug 1, 2011 at 6:56
  • 2
    I for one clearly agree with T.J. Crowder on this one. It clearly has more meaning then just signaling a notification item to someone else. It's what made twitter so great, and ever since my @... was removed I've always hated it and became confused as to who saw my comment and who didn't. Clearly it doesn't work.
    – JonH
    Aug 12, 2011 at 19:55
  • @jon there is no "parent post" on twitter; here, there is always a post to which the comment is attached. You are, obviously, talking to that person, the person who wrote the post you are commenting on, first and foremost. Aug 12, 2011 at 21:19
  • 4
    @Jeff: You completely miss the point. My motivation for calling you on this stuff was purely that I wanted this site to be the best that it can be. I think Jock was trying to support me in that (I'm not entirely sure why, given that he'd already voted with his feet long ago, but there we are -- he's a friend). In any case, I think all the points have been made. You're clearly not going to publicly answer that other question, I won't ask it again. And you're going to stick with your autocratic approach. I hope that works out well for you. I don't expect it to, but I hope it does. Best, Aug 16, 2011 at 15:02
  • 9
    I support T.J.'s suggestion - even I have sometimes trouble figuring out who will be notified, and I use the system almost daily. It wouldn't have to be a sign - a small tooltip somewhere might already do the job, and provide clarity
    – Pekka
    Sep 10, 2011 at 18:46
-9

This is completed in spirit with

Tab name completion for comments please!

Because, as pictured, when you type @ the system will autocomplete eligible targets only:

Note that this feature will not automatically complete names when the conversation is between the OP and 1 other person: it's smart enough to know that the @mention is unnecessary.

Therefore if you type @ and don't get completion, you are getting immediate feedback that you don't need to do that.

8
  • 7
    With the notable exception of when you're notifying post editors who haven't also commented.
    – Tim Stone
    Sep 20, 2011 at 0:24
  • yes, that would require a lot more work and turn a simple-ish feature into a rather complex one. It's a rare use case anyway. Sep 20, 2011 at 0:37
  • 2
    It's better than nothing, but I have to say for me it misses out key educational and clarity aspects. It does nothing to tell you who will already be notified (for instance, didn't tell Tim you'd be notified when he commented, didn't tell you Tim would be notified when you commented). In fact, for my money, it's different enough that this request should be marked "status-declined". It's nice, but it's different. Sep 20, 2011 at 8:54
  • @T.J just like answers obviously notify the person who asked the question, comments obviously notify the person whose post you are commenting on. Point taken about Tim, above, but when you type @ and don't get completion.. that's a superior "Just in Time" education versus assuming that users will read anything we put on the screen (hint: they won't). Sep 20, 2011 at 9:01
  • 1
    @Jeff: I fail to see how generating the question "why doesn't 'Tim' show an auto-completion?" is "superior." BTW: I really really should have had some form of auto-completion in my original suggestion. Astonishing that I didn't. The auto-completion is a good thing, kudos on that. It's just not at all the same thing, and doesn't achieve the goals my proposal would have. Sep 20, 2011 at 9:13
  • @Jeff: I almost hesitate to ask this, but why do I get an auto-completion for you? And I notice that my "@Jeff" stays there. Have you relaxed the rules for directing at the postowner if there's been someone else (Tim, in this case) in the comment stream? If so: Nice one, thanks, much appreciated. That is definitely an improvement over the original. Sep 20, 2011 at 9:20
  • @T.J the completer knows the rules, and will only complete when it is necessary. There are three people talking here (Tim, you, me). We only remove when there are two, and it is obvious in that case. Sep 20, 2011 at 9:23
  • 13
    @Jeff: I won't rehash the whole issue again. I do strongly believe that this request should not be marked status-completed, though. The auto-completer has little to do with what this request requested. But it's your site, I won't labor the issue. Sep 20, 2011 at 13:05

You must log in to answer this question.

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