

Tell HN: upvotes don't register if you take the time to read the article - hyp0

Instead, you have to refresh the comments page.
This is caused by the specific upvote hyperlink becoming stale.<p>Unfortunately, the consequence is a systematic bias towards knee-jerk votes based on the title; and towards people who quickly skim the article, as opposed to taking the time for careful reading and reflection.
======
kogir
I'm not sure how you came to this conclusion, but as stated it's false. Vote
links don't expire, and require no saved state on the server. In fact, they
never change.

If you're still seeing strange behavior, please email me at
nick@ycombinator.com, since I'd like to track it down and fix it.

~~~
hyp0
It's exactly as e12e describes: if you've had the page open for a while, and
click an upvote, then the arrow disappears and it looks like you have voted.

But if you refresh the page, you'll see that the arrow is still there. If you
upvote now, on this fresh page, the upvote is counted - you can tell, because
if you refresh the page now, the arrow will be gone. (This proves to me that I
haven't been disenfranchised or banned in some way - I can vote, it just has
to be on a fresh page.)

I get the same behaviour on both firefox desktop, and the stock android
browser.

Why not try it, and see if you get the same behaviour?

Of course, I don't know the details of how HN implements voting - it just
behaves as if the link expires in some way...

For a regular link on HN, if you leave it too long, it will explicitly say
"link expired". But for upvotes, you don't see that message (presumably it is
what gets returned to the up arrow though).

~~~
kogir
Voting uses a completely different mechanism. There is no saved state or time
component. Unless your login cookie has expired, votes will count.

Can you tell if your browser actually makes the request?

I'm going to try it with your comment, though I don't expect I'll be able to
reproduce it.

Update: Just tried it. Waited 1 hour, 36 minutes and upvoted your comment.
Success.

~~~
kogir
In fact, looking through our server logs, you've never voted more than once
for the same item in the last 12 days. These are logs of all requests, before
the code could even potentially error or filter them.

For some reason, your browser isn't making the request, or it's getting
dropped before we see it. If you have any ideas I'd love to hear them, but
right now I've got nothing to go on.

~~~
hyp0
Thanks for looking into it. That does sound strange.

My mobile internet connection _is_ flakey at times; but unlike a regularly
failed request, there isn't any evidence of failure for voting (BTW I noted
that SO does give an alert if this happens for their votes.)

I also tried it again and found sometimes it fails even on a "fresh" page (and
as you've explained, that shouldn't make any difference anyway). It may have
just been a coincidence when refreshing worked.

I'm having a lot of network problems recently, so that may be it. But it's
also definitely happened in the past, when I wasn't having any such problems.

 _" The network is unreliable"_ \- this would also explain why several other
people have experienced this behaviour, that _looks_ like expired links. Heh,
probably the HN maintainers have great network connectivity, and so you
mightn't ever see it yourself.

------
e12e
I think the main issue is that upvotes will _seem_ to work, even if the link's
timed out (ajax magic!).

So for me, that often look at the front page, open up a handful of interesting
stories (comment pages) in new tabs -- read a few of the stories -- and maybe
go an errand -- and _then_ come back and decide, yup, I'll "save" (and upvote)
those stories, because they were intersting -- I'll click the upvote, the
arrow dissappears -- and then I'll reload the front page and see that my
upvotes weren't registered after all.

I'm not asking hn to cater to my (perhaps eccentric) use-pattern -- but there
should be some feedback that voting isn't registered (eg: an on timeout in the
page, that disables the vote-arrow a little while before the link expires).

~~~
kogir
What I'm saying is that the link _can 't_ time out.

~~~
e12e
Strange. Perhaps it's a cache coherence issue then - but I certain I've on
occasion clicked the up-arrow, seen it disappear, and the reloaded the page,
and see the arrow come back (allowing me to up-vote "again"). AFAIK on those
occasions the story in question hasn't been listed as a "saved story" on my
profile page (until after the "second" vote).

[edit: seeing your other reply, I'm guessing either a network issue or a
network issue coupled with an ajax issue. Any chance the browser caches the
dns name for the url, an then makes the request to the wrong ip? ]

------
jon2512chua
Any idea what the upper limit is? Pretty sure an hour's fine, as I usually
open a few article together with their respective comments page and then go
through them at leisure. I would upvote after I finish reading, then reload
the comments page to see the latest comments, and the upvotes stay.

------
_pmf_
> the consequence is a systematic bias towards knee-jerk votes based on the
> title

That's the success recipe of all social news sites (all news in general, in
fact).

------
justintocci
wow, that is going to be a challenge to fix.

