top | item 7708312

Fix HackerNews Issue #11, which is driving us all crazy: Unknown or expired link

78 points| cortexman | 12 years ago | reply

Folks, this isn't brain science. When a user clicks the More link, they don't care that the order of links has changed. Just take them to what you are presently showing users for that page.

This is driving every. single. one. of. us. CRAZY. Whoever knows the code - I am shaming you! GO FIX IT NOW!

https://github.com/HackerNews/HN/issues/11

33 comments

order
[+] grinich|12 years ago|reply
The reason this happens is that the link is actually a reference to a live closure[1] held in memory on the server. Notice how the URL has `fnid=...`? Well fnid is short for function ID.

There isn't an obvious way to fix this without dramatically changing the way pages are rendered. The reason the link expires is probably that the garbage collector picks them up after a timeout interval. I remember this was something on the order of 10-30 min.

Honestly though, HN is a free service built with an experimental programming language buy a guy who worked full-time as a seed-stage investor. That's a miracle in itself. You're not going to "shame" anyone into fixing it.

[1] http://en.wikipedia.org/wiki/Closure_(computer_programming)

[+] letstryagain|12 years ago|reply
> HN is a free service

This is just a cop-out. HN gets massive amounts of traffic and obvious problems like this one should be fixed.

[+] slashnull|12 years ago|reply
Just making a redirect to the latest front page, or nth page of the latest rendering closure would already much better.

Is there any obvious reason why this isn't done?

[+] Dylan16807|12 years ago|reply
Having a parameter for how many pages to skip (and purposely not care about changes between clicks) would not be dramatic at all.
[+] sillysaurus3|12 years ago|reply
There isn't an obvious way to fix this without dramatically changing the way pages are rendered.

Actually, it's easy to fix, because it's easy to turn dynamic urls ("fnid" urls) into regular URLs (something like "/submitreply?id=xxx").

They just haven't gotten around to it yet, which is fine.

[+] aaron695|12 years ago|reply
Actually I've gotten to find it a nice tick of the site. Meh so you have to refresh and try again. It's kinda telling you you've spent to much time here and to move along.
[+] gremlinsinc|12 years ago|reply
I use hckrnews.com and this doesn't happens so much--still does on comments pages cause that's still on ycombinator.
[+] ivank|12 years ago|reply
It's not driving me crazy because I'm using AutoPager to load the continuation pages before they expire.
[+] aaronem|12 years ago|reply
I wish I'd known about AutoPager before I spent all that effort writing a Greasemonkey script that does essentially the same thing. The script's on my Github account (in my profile) if anyone wants to use that instead of installing an extension; in any case, thanks for the heads-up.
[+] justplay|12 years ago|reply
Technically i understand its importance but in terms of UX this thing is terrible. For a non English speakers, they usually take some time to reply and most of the time they end up with `expired link`. I doubt the user who wrote very big comment (usually highest rated comment in that thread) use HN editor, I guess they first write in the word processor and then copy it here since the amount of time it involved in writing comment is not sufficient.
[+] sillysaurus3|12 years ago|reply
For a non English speakers, they usually take some time to reply and most of the time they end up with `expired link`. I doubt the user who wrote very big comment (usually highest rated comment in that thread) use HN editor, I guess they first write in the word processor and then copy it here since the amount of time it involved in writing comment is not sufficient.

I use the HN edit box. On mobile, I take care to copy my comment to clipboard before submitting it, so that if I hit the unknown/expired issue then I can hit the back button, refresh, paste, and resubmit. On desktop it's a nonissue because when it happens you can hit the back button and (in firefox/chrome) the edit box will have dutifully saved your whole comment, so nothing will have been lost.

[+] TheZenPsycho|12 years ago|reply
It is hard to convince someone to fix what you see as a bug, when the author of the software is really so proud of this "feature" he's filed a patent on it: http://www.reddit.com/r/programming/comments/67iza/patent_on...
[+] judk|12 years ago|reply
That's one of those ideas that seems so cool, and then you try it at your real job and get fired because pages fail to load. Must be nice to sell your site before you have you scale it up. Or be so popular you can ignore bad user experience.
[+] theseoafs|12 years ago|reply
Won't happen. Hacker News is the Minimum Viable Product.
[+] mh-|12 years ago|reply
until it's not [viable|minimum]. we'll see which.
[+] evv|12 years ago|reply
That made me smile. But HN isn't a product- its a marketing tool.
[+] BorisMelnik|12 years ago|reply
Everything has really been working great overall on the site. I don't normally chime in on these HN political pages, but this issue is quite bothersome.
[+] 8ig8|12 years ago|reply
> This is driving every. single. one. of. us. CRAZY.

I'd consider it more of a minor inconvenience.

[+] pdknsk|12 years ago|reply
Just sign up for HN Gold to get infinite scrolling and more.
[+] slashnull|12 years ago|reply
this insightful comment is only visible to HN Gold members
[+] mindslight|12 years ago|reply
mzscheme-372 4-life.

Honestly it's nice to see an esoteric correct approach. If you're using a web "app" you shouldn't expect anything but a toy anyway. The only place it ever actually bothers me is paginated topics.

Probably the most straightforward way to 'fix' this would be to serialize delimited continuations to disk, but who knows if it would be easy to import that functionality into Arc.

On the other hand, C-a C-c C-r <submit>.. the mousing is by far the hardest part.

[+] murf13001230|12 years ago|reply
Truth has been spoken. What the effing eff? I can only browse two pages and then i have to browse them again because after page 3 it never works. Totally stupid.
[+] grandpoobah|12 years ago|reply
pg is gone, who will fix it now
[+] Dorian-Marie|12 years ago|reply
Releasing the source code would be an obvious answer.
[+] staunch|12 years ago|reply
Make sure to get a full refund on all the money you've paid to Hacker News. They clearly owe you and are failing terribly. The bastards!