With the new reputation system I get a lot of useless reputation up and down information in my history. This happens when a user upvote, unupvote and then upvote again in a small time window.

upvote/unupvote example:


accept/unaccept example:


This is very annoying and doesn't reflect anymore my common-sense-inspired reputation history.

Could something be done to fix this behavior?

For example show it only if the answer has been edited in between the upvote-unupvote?

Should it also be disabled for the first 5 minutes (like the edit notification)?
(I don't know if this 5 minutes limbo is already in place or not)

Note: I believe that such users are in good faith and/or just newbies, but this seems to me like a highway for trolling:



We now rollup in a fairly simple way: if there are 2 of a reversible vote type, we hide that group if it's within the context of a day. We won't hide something accepted yesterday then unaccepted today for example.

If you accept/unaccept, that's hidden as there's no net-effect. Behind the scenes this is really one vote with a DeletionDate set...so we can group by that vote's Id and detect that. This works if someone does it 50 times in a row as well.

For example: if you accept/unaccept/accept then that's one deleted vote, one new vote...the first gets eliminated and only the last +15 accept shows. This same logic applies to upvotes, downvotes, and accepts (this also works on the voter side for downvotes and accepts, the -1/+1 and +2/-2).

This is already live.

  • Great! Thanks for your support :) – Rik Poggi Mar 9 '12 at 11:41
  • 3
    Is there a time limit on this? Because if an old answer gets unaccepted I do want to see that. That shouldn't just quietly cancel out. Also if someone votes up and then immediately takes back that vote that is interesting to know: there seems to be something about the post that made him change his mind. – sth Mar 9 '12 at 13:29
  • @sth - it's within the context of a day, so you'd see something accepted yesterday then unaccepted today for example. – Nick Craver ModStaff Mar 9 '12 at 14:41
  • Hmmm, that can still leave you with, for example, 15 rep removed in the evening and then no trace of an explanation in the log (an accept you got in the morning got removed, but if you don't remember that accept, you are left scratching your head) – sth Mar 9 '12 at 14:51
  • 1
    @sth - we by default expand the first 3 days, I don't see this being an issue, and no matter what solution we pick someone will complain here, we just pick the best possible solution we can. – Nick Craver ModStaff Mar 9 '12 at 15:26
  • @NickCraver Is this meant to be rolled out on the mobile version as well? See meta.stackexchange.com/questions/127357/… – Shawn Chin Mar 29 '12 at 11:17

In my duplicate question, I suggested we deal with this like this:

Apparently, users constantly accept, then unaccept, then accept answers — usually doing all three within seconds of each other. Similarly people upvote, then un-upvote, then re-upvote again, within seconds. See the image below.

As engineers, we know that the usual response to this kind of noise is to throw a bit of hysteresis into the system, as when debouncing the input from a keystroke or mouse click.

I suggest that events on the same object (question or answer) within, say, a minute of each other that cancel each other out should be filtered out of the display. So referring to the image below, rather than

+30 41 mins ago  accept    Select all input tag in without certain attribute in Jquery
-15 41 mins ago  unaccept  Select all input tag in without certain attribute in Jquery

...we'd just see

+15 41 mins ago  accept    Select all input tag in without certain attribute in Jquery

...as we used to.

rep display showing noise

  • 7
    This is my goal, hopefully get to it today... currently focused on making sure everyone's number is right at all times (few edge cases left to investigate), then give the UI a bit more love. – Nick Craver ModStaff Mar 7 '12 at 12:03
  • 2
    @NickCraver: You're a man with his priorities right. :-) – T.J. Crowder Mar 7 '12 at 12:22
  • 1
    Thanks! I'm not an engineer and I didn't know that was the usual approach to this kind of situations, but god if I do love physics :) – Rik Poggi Mar 7 '12 at 13:57
  • Rather than an arbitrary amount of time, how about collapsing the entries after the relevant timeout for changing it? That is, when it's locked. – l0b0 Mar 7 '12 at 15:50
  • @l0b0: There's no timeout for unaccepting an answer, is there? – T.J. Crowder Mar 7 '12 at 15:58
  • @T.J.Crowder: Looks like it, but there is one for up-/downvotes. – l0b0 Mar 7 '12 at 17:40
  • @l0b0: Just in my opinion, a time range makes more sense -- not least because I think the "locked in" thing is wrong and should be removed. ;-) – T.J. Crowder Mar 7 '12 at 17:41
  • There is an explanation for this (up/down/up): try navigating SO using a smartphone :-) Another explanation: let's say you Down a response... How do you cancel the Down? By pressing Up? (-1 + +1 == 0?) Wrong! You de-down by pressing Down :-) It isn't exactly intuitive... – xanatos Mar 9 '12 at 11:36

You must log in to answer this question.

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