
Fix HackerNews Issue #11, which is driving us all crazy: Unknown or expired link - cortexman
Folks, this isn&#x27;t brain science. When a user clicks the More link, they <i>don&#x27;t care</i> that the order of links has changed. Just take them to what you are presently showing users for that page.<p>This is driving every. single. one. of. us. CRAZY. Whoever knows the code - I am shaming you! GO FIX IT NOW!<p>https:&#x2F;&#x2F;github.com&#x2F;HackerNews&#x2F;HN&#x2F;issues&#x2F;11
======
grinich
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)](http://en.wikipedia.org/wiki/Closure_\(computer_programming\))

~~~
sillysaurus3
_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.

~~~
aaronem
I actually just grabbed a copy of the HN source a few days ago in pursuit of a
potential side project I'm screwing around with on behalf of a community I
frequent. I'm half tempted to dig into it and see what I can come up with in
terms of a fix, but before doing so I'd want to know where I could submit a
pull request or send a patch, and I'd want to know that such a pull request or
patch would receive serious consideration from those responsible for HN,
rather than a "thanks, we'll check it out never" sort of response.

(It's one thing if I end up with something that doesn't work in a test case I
failed to consider beforehand, or doesn't fit in well with whatever plans
exist on the part of HN's current maintainers; that's something I can
understand, and I'm not about to get my nose out of joint over it. What would
raise my ire would be to put in the effort and see it go zinging off into the
ether, never to be heard from again.)

~~~
jaredsohn
Another comment linked to some comments from dang:

"It's on our list. There are a lot of things on the list; we don't know yet
when we'll get to it."

[https://news.ycombinator.com/item?id=7651770](https://news.ycombinator.com/item?id=7651770)

So I imagine that if you submitted a pull request, they would at least look at
it when trying to fix it.

------
aaron695
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
I use hckrnews.com and this doesn't happens so much--still does on comments
pages cause that's still on ycombinator.

------
ivank
It's not driving me crazy because I'm using AutoPager to load the continuation
pages before they expire.

~~~
aaronem
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.

------
dmunoz
Here is dang's official response on the matter from 10 days ago:

[0]
[https://news.ycombinator.com/item?id=7651770](https://news.ycombinator.com/item?id=7651770)

------
justplay
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
_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.

~~~
justplay
And you are okay with it?

~~~
sillysaurus3
Of course. Their time is limited, and they spend it on more important matters:
how to get better stories, how to detect voting rings, how to eliminate
randomness of whether stories are upvoted during their short time in the
/newest queue, etc. I'm happy they spend their time working on what matters;
unknown/expired link is a nonissue in comparison.

------
TheZenPsycho
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...](http://www.reddit.com/r/programming/comments/67iza/patent_on_continuation_based_web_servers_as_used)

~~~
judk
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.

------
abaker87
#opensourcehn

------
theseoafs
Won't happen. Hacker News is the Minimum Viable Product.

~~~
mh-
until it's not [viable|minimum]. we'll see which.

------
BorisMelnik
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
> This is driving every. single. one. of. us. CRAZY.

I'd consider it more of a minor inconvenience.

------
pdknsk
Just sign up for HN Gold to get infinite scrolling and more.

~~~
slashnull
_this insightful comment is only visible to HN Gold members_

------
mindslight
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
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
pg is gone, who will fix it now

~~~
Dorian-Marie
Releasing the source code would be an obvious answer.

------
staunch
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!

