As to why pg can't use normal pagination instead of user-specific state, I dunno, why not just use Ruby or Python (or PHP!) for the site instead of Arc? Short answer is, I suppose, because he can, and he's likely more interested in satisfying intellectual curiosity than designing a normal pagination system. jm2c.
"I suppose, because he can, and he's likely more interested in satisfying intellectual curiosity than designing a normal pagination system."
I suspect that PG's approach is something more than peccadillo. The HN software appears to afford a great deal of power for managing the community, and managing the community is much more important than worrying over expired links. I'll add that I've never seen someone quit HN over expired links, but several over community behavior.
Seeing as YC applications require HN accounts, it is unlikely that YC takes HN's functions lightly.
There is no excuse for having broken pagination, table-based layout and GIF images on a modern site, especially when you are targeting tech users. Those are obvious bugs, not features, that should be fixed right away even if it means introducing more code complexity and some refactoring.
> As to why pg can't use normal pagination instead of user-specific state, I dunno ...
I can think of one reason:
* A user loads the front page.
* By the time the user clicks "More" at the bottom, page 1, and all subsequent pages, have been updated with new content.
* So the server can't provide the old page 2 to a user who just saw the old page 1, for the reason that neither of the original pages even exists any more.
* To avoid confusing the reader, instead of providing an out-of-sync page 2, the server instead shows a "expired link" message.
I bet that the percentage of people who go to the second page is in the single digits. Personally, I'd happily trade off a little confusion for a simpler, more scalable piece of software. That said, it looks like the HN software is scaling well enough, so more power to the man.
As to why pg can't use normal pagination instead of user-specific state, I dunno, why not just use Ruby or Python (or PHP!) for the site instead of Arc? Short answer is, I suppose, because he can, and he's likely more interested in satisfying intellectual curiosity than designing a normal pagination system. jm2c.