2010-09-26 9 views
5

Reddit usa un algoritmo de disminución de tiempo. Eso significaría que el orden de clasificación está sujeto a cambios. Cuando un usuario va a la página 2, ¿hay un mecanismo para evitar que vea una publicación que estaba en la página 1, pero que se bajó a la página 2 antes de que se localizara? ¿Es solo una falla aceptable del método de clasificación? ¿O las primeras dos páginas están almacenadas en caché para el usuario, por lo que esto no ocurre?¿Cómo funciona la paginación en la página de inicio de Reddit?

Nota al margen: Entiendo que Digg no puede sufrir este problema, pero que HackerNews y Reddit sí pueden.

+0

Esto no es exclusivo de sistemas como Reddit - any sistema que ordena por 'más nuevo' tiene el mismo problema potencial. –

+0

Una nota para cualquier persona que no sabía que Reddit ahora es de código abierto. Puede ver la fuente en [GitHub] (https://github.com/reddit/reddit). –

Respuesta

4

De la siguiente dirección URL que se ve: http://www.reddit.com/?count=25&after=t3_dj7xt

Así que claramente la siguiente página asegura que la página 2 se inicia en el cargo después de t3_dj7xt - lo que sea que se traduzca a. Esto podría lograrse usando identificadores para que pase after = 188 y luego la siguiente página comience en 189, asegurándose así de no ver la misma publicación si se produce un retraso de tiempo

+0

Me di cuenta de eso. Aunque eso deja la posibilidad de que te falten publicaciones que en ese momento fueron promocionadas para aparecer en la página 1. En esencia, estás saltando después de publicar t3_dj7xt, incluso si en este momento esa publicación estaría en la segunda página. –

+0

Pero técnicamente esa es la forma correcta de manejarlo. Esperaría que la página 2 siempre muestre la página 2 en el momento en que solicité la página original. Si quiero ver la más reciente, simplemente actualizo o con suerte presiono el botón "2 publicaciones más" similar a Twitter, etc. ... Nunca me gustó presionar la página 2 y hacer que parezca ser la página 1, ya que nunca actualicé la página;) – methodin

0

Se podría estar utilizando la última ID en oposición a la limitación de. Tome estos dos ejemplos de SQL:

SELECT * FROM Stories WHERE StoryID>$LastStoryID; 

en lugar de:

SELECT * FROM Stories LIMIT 20, 10; 
+0

Así que puede perder algunas historias en el proceso si el orden de clasificación ha cambiado y el $ LastStoryID no estaría en la página 2. –

Cuestiones relacionadas