It's not a single thing. There are multiple places that use dynamically-generated links. They make the source very simple. I've gradually replaced them in the most common situations. Replacing more is not in my top 10 priorities for things to fix. The reason is that it's not really what users want. What people come here for is good stories and comments. I doubt we have ever lost a single user over expired links. Whereas stupid or uncivil comment threads have probably cost us lots of users, and indeed, some of the ones I'd least like to lose. So that's the sort of issue I spend time thinking about.
Incidentally, for those of you working on startups, this is a good example of why making something people want is not a simple matter of making what they say they want.
>>The reason is that it's not really what users want. What people come here for is good stories and comments. I doubt we have ever lost a single user over expired links.
Yes, you probably haven't lost any users over expired links
However, I think you have inconvenienced a lot of users through the expired links. Sometimes, I think it is good to spend a little bit of effort on helping a large number of users.
I'm assuming among readers (who attempt to go past page-1), an overwhelming majority has hit this problem multiple times (and lost time because of this problem)
Amen. What a nuisance. You can keep clicking the next page button to see what other stories there are until you actually read one, after which the next page button will fail, and you'll have to start over again. What's the point of even having more than about three pages? The only way to reach those pages is to keep clicking next while carefully avoiding the temptation to read anything along the way, lest you get sent back to Level 1.
I'm not buying the argument that if HN has good stories and comments people will keep coming back and if they come back, it means they want a next page button that fails. A doesn't imply B.
If frequent expiration is to remain a feature, would it be possible to have a preference setting allowing us to put the first four pages or so on our front page? Then we could read whatever looks most interesting among the first 120 items instead of the first 30 before we get that expired next button we supposedly don't mind.
To avoid that I use this website: http://hckrnews.com/
Maybe you should take a look. Just simple and useful.
And to share everything I also use a theme for HN. It makes the design a little more as a flat design and with bigger letters which is especially what I wanted.
https://github.com/gabrielecirulli/hn-special
but I always use vanilla HN because I'm fond of it and the UI is pretty much the best for me.
That said, it would be very cool if users could implement their own custom CSS natively like you can on http://yayhooray.net
I personally detest browser extensions and I don't like how they slap custom CSS over the top of sites like make-up. Even those who aren't up for fiddling with style sheets could share in what others make.
Thank you to share. For extensions, I do like the good old design of HN but I really prefer to have bigger letters. That's mainly why I use the other one.
I've been a user for 5+ years, for more hours a day than I would care to admit, and have never run into an expired-link problem that couldn't be resolved with a BackButton, copy+paste.
Honestly, it gives HN a bit of charm, and it's never ever really bothered me.
However, I think you have inconvenienced a lot of users...
'Inconvenienced' is broad word. Plenty of people eventually get the hang of driving a motorcycle with the front-brake in the "wrong" spot, and are no longer inconvenienced by that. But it is not truly dangerous or troublesome in the way that having the control pedals in a Car were to be put in the wrong place (eg swap the throttle and brake pedal location). So, in this case its more an inconvenience of having some learning curve; it's not the more dangerous or nefarious inconvenience of something that is truly troublesome, random, or wasteful.
> I think you have inconvenienced a lot of users through the expired links.
I suspect that fixing expired links would improve HN's front-page story quality. I seem to recall patio11 or tptacek once saying if you really want to help out HN, you should sit on the New page and upvote stories. That's too much of a pain for me, but if I could get to pages 2-4 without friction, I'd see more non-front-page stories I could upvote. This would help good stories make it to the front page or stay there longer. So perhaps making things easier for users would also help HN. It may even make it easier for content-rich stories to compete against link-baity ones. What if fixing expired links kept HN from becoming like Reddit?
Fixing the New-page should be much easier than fixing the Front-page. In the New-page you only must remember the last index and the last submission shown, so https://news.ycombinator.com/newest?count=60&id=777777 should work, because they don’t exchange order. The Front-page is much more difficult because you must remember all the shown submissions, because they change of order in time.
Yes, but I'm not saying they should fix the New page. The New page has too many garbage submissions for me to want to spend time there. But if they fixed pages 2-4 behind the front page, I would visit those pages. Those pages have more signal-to-noise than the New page, so I want to read them. And if those pages were getting upvotes, maybe their stories would make it to the front page.
I click more. I find the stories that I am interested in. I open the submission in a new tab and the comments in a new tab. I repeat this until I get to page 4.
I read an article. I upvote it if needed. I read the comments page. I then refresh the page before making any comments. Once i've finished reading and voting and commenting i close the pages and move to the next article.
I use a method similar to the described by DanBC, but I open the comment page in a new tab and I immediately open the submission from that tab, because it’s easier to hit the back button than to remember where each story came from.
Fixing the new page is relatively easy, and it could free more closures to the other pages, so it increase the time that the links live before expiring.
I also sometimes use the “filtered 2+ new page”: http://hnapp.com/filter/d3a308f2ac9a071c0bf174e0c1a8fd22 , i.e. someone else thought that it is interesting. It’s not so painful and it’s also good for days where a single new saturate the front page.
The solution is ctrl-left click (in chrome) so articles open in a new tab in the background, queue up everything you want to read before reading the articles, simple.
Is there value to maintaining this site yourself? I agree that you shouldn't spend the time to fix this issue yourself, but couldn't a contractor fix it for pocket change, at a low cognitive burden to you? Hasn't this issue been surfaced repeatedly by users, wasting the time of a good many people (including you)? Doesn't it hurt your reputation as a thoughtful and detail oriented organization?
I'm not the only person working on it anymore. For the past year or so we've also had Nick Sivo (kogir), who handles all the systems stuff. And we also have a moderator who is a hacker and has written a bunch of code for identifying voting rings, sockpuppets, and so forth.
I just want to put my hand up against the selection bias in this thread and say that I totally don't care about the broken links, and that rock-solid moderation is a far more important issue for any online community.
I would say that the site should actually be opened up to the whole community to add to it. Hackers may be able to help in ways never imagined before. Some examples:
1. Auto assign upvotes to new stories using machine learning algorithms that use older, already upvoted, stories for learning. This can fix one of the issues often encountered where good stories go ignored because too few people have time to screen new stories.
2. Instead of using ad hoc rules for ordering stories and comments, use machine learning engines again.
Some stories get flagged. These would also provide good data for supervised learning.
I understand some control would need to be exercised to prevent gaming of the system.
The true hacker solves the right problem. Expired links are just the visible problem. The real problems are more subtle: users voting up fluff posts, nastiness in comment threads...
If one clicks next to go beyond the first page repeatedly, there is effectively a timeout how much time can be spend until the link expires and one has to start from the beginning.
I think this makes it more tempting to upvote something just after looking at the headline instead of after reading it, because one has to remember so much or use so many tabs or bear with going back to the front page and clicking next again.
I have no idea about everone's behaviour, but maybe expired links in the end also affect something like users voting up fluff posts?
Do you really think you can't solve both problems, or that fixing links hurts your ability to solve bigger problems? It's $500 to a contractor. You can even have someone else find the contractor. This smells fishy.
I suspect the fix will result in a large change to the code base and you want to always own/understand the code for some reason. So if you can't fix it yourself, nobody is allowed to, either. That's fine--just admit it's your baby and you don't want to let it go.
I guess it's also because of the technical elegance of using closurees for page actions. It's hard to admit that a technique that feels elegant and expressive fundamentally doesn't scale.
That's part of being a mature developer. We've all stood stubbornly by a piece of inappropriate code that we want to use because it's so clean and elegant, but most of us have gotten past that stage of ego development by the second or third year of school or professional life. It goes without saying that Paul Graham has long since transcended that level.
So, the only answer that fits all of the parameters is that he's trolling us.
You're not far off to assume it hijacks your thinking process and steers it to the unimportant.
The change to the code base would be easy. You can increase the expiration timeout or keep around more closures. It would come at the expense of using more computer hardware, which is an elegant technique of scaling: you free your human hardware to work on more important things.
When a fluff post gets posted some users flag it and some users upvote it.
Is there anyway to penalise the people upvoting a fluff link? Mods have a 'fluff link' flag, and using that applies some karma loss to everyone who upvoted the post and puts a notice on their user page? (This is an ugly kludge. It's meant as a thought experiment rather than a serious implementation idea).
I have made some comments on HN which should have been heavily downvoted but which got no downvotes or even upvotes. I have no idea how this can be fixed.
Some people on HN have an aversion to down voting and flagging and will only use these tools for the most egrarious examples of bad posts. It would be good if people accepted getting and giving downvotes as a useful tool in running the site.
There's another problem with people responding to people who are effectively trolls rather than ignoring or downvoting those posts. I know there are few moderators with very little time. More mods is not the answer, but perhaps 'big downvotes' for those mods would help. Applying a -5 or -10 downvote to people posting aggressive dumb comments would help set tone.
Perhaps having links to all the guidelines (including the links provided to new users) under the submission box would be useful?
My main problem with the "More" button is that it doesn't always give you more. I suggest a text change on the anchor tag to "More, if you're quick about it", and the error message to "You weren't quick enough."
This way I can only blame myself when pressing the button doesn't work as expected.
There is so much more educational value in this conversation than just people saying "serve your users but question what they say they want", as it is right in the action - with all its nuances.
Even if the site had blinking text with glitter background the regulars would still come. Those very regulars click on the pagination and get inconvenienced frequently (also typing and comment and losing it). Since this seems like a highly visible problem and probably the only bug I encounter, I'm a little surprised that it is not in top 10.
Count me in as this being the most annoying issue for me. (Maybe that means you’re doing a lot of things right, but it’s still plenty irritating.) So much so as I have been using sites which mirror or display HN submissions because they don’t have this problem.
Here's a simple thing that has helped me avoid the issue (which otherwise is quite nagging):
Starting from the HN main page, I first open the discussion pages of all the stories I potentially want to read in new tabs (till I start encountering older stories that I have already gone through). This process is fast enough to not encounter expired links.
For each story now, I click the link leading to the story from the HN discussion page, and get back to the discussion page simply using the back button. When done, I simply close the tab.
While I agree with the overall sentiment, it is like optimizing a program. You profile the program and see that foo (lets relate this to the expired link problem) takes 5% of the cpu and bar (the upvoting problem) which takes 50% of the cpu. Naturally, youd want to optimize bar. However, if it takes 50 hours to optimize bar and 1 to optimize foo you're better off going with foo. This too is said with the caveat that 5% better is worthwhile: nobody cares if a 1 second operation is shortened to 950 milliseconds whereas shortened to .5 seconds is something more noteworthy.
Ironically, the only time I really run into this is when reading through bestcomments.
I'm often more interested in interesting discussions rather than the original links and bestcomments is a good way to jump right into these discussions.
It'd be great if bestcomments could me migrated away from the fnid mechanism, but I appreciate this is a side project and this is low priority.
What considerations have been taken into account to dissuade making HN open source? (I know there are some copies of older versions of the source on GitHub) (Arc code could be rewritten in Clojure (don't kill me!)) (I'm assuming there is some concern that transparency would increase ability for spam or 'gaming' the system)
The main reason I haven't published a new version lately is just that I've been too busy working on YC itself. It would take a day of work to strain out the bits of code we don't want to publish, and I don't have any spare days now.
Incidentally, for those of you working on startups, this is a good example of why making something people want is not a simple matter of making what they say they want.