DEVEL: Noticias no leídas

Desarrollo técnico e información sobre proyectos pendientes del foro. Ayuda para problemas técnicos relacionados con la página.
Responder
Avatar de Usuario
beniamino
Mensajes: 591
Registrado: Lun 10 Feb, 2003 01:00
Ubicación: Santa Cruz

DEVEL: Noticias no leídas

Mensaje por beniamino » Sab 22 Feb, 2003 01:25

Esto es una sugerencia a los administradores/desarrolladores del sitio.

Para un usuario no es fácil localizar los posts que han sido recién creados o modificados desde que los consultó por última vez. Las noticias se ordenan precisamente por este orden de creación/modificación, lo que podría ser suficiente cuando el ritmo de actualizaciones no es alto, pero no en el momento actual. Un usuario ha de perder demasiado tiempo revisando la fecha de última modificación y el número de respuestas en cada hilo, si no quiere perder ninguna.

Al efecto de aminorar este problema sería beneficioso establecer un código de colores resaltando, para cada usuario, aquellos hilos de creación reciente que nunca ha visitado y aquellos que habiendo sido visitados en alguna ocasión contienen nuevos mensajes.

Para lograr ese objetivo se necesita almacenar para cada usuario y cada hilo el número de respuestas presentes la última vez que el usuario accede a él. Cuando se muestra una lista de hilos se confronta esa información con el número actual de respuestas en el hilo y se representa su título con el código de color oportuno (actualmente siempre es azul oscuro, al menos en mi theme[/b]).

La solución implica tanto un mayor consumo de espacio como una mayor carga en las consultas. Lo cual la hace inviable, pero sólo si éstos dos esfuerzos se dejan en el servidor web. Mi propuesta, que no sé si es técnicamente viable, consiste en diferirlos al cliente.

Por una parte la información debería quedar almacenada en los cookies presentes en cada cliente/usuario. El trabajo de confrontar el último estado de cada hilo con el actual, así como llevar a cabo la actualización de los mismos la realizarían funciones script al efecto. Que sería lo único que habría que desarrollar. El servidor incluiría siempre en el código html generado para las páginas con listas de hilos, las mismas funciones.

Para que este esquema funcione es necesario que desde un script se pueda consultar y modificar localmente el contenido de las cookies. Lo cual desconozco si es posible, ni en caso de que sea posible cómo se haría exactamente.

A todas estas, he de decir que no tengo demasiada idea ni sobre cookies, ni scripts, ni php y ni tan siquiera html si me apuran. Sin embargo espero, al menos, despertar la imaginación de los que sí sepan. Lo que sí considero es que el actual sistema es ineficiente y sería preciso realizar alguna mejora en este sentido. Sobre la viabilidad de mi propuesta, espero que los entendidos no se hayan reído demasiado al ver tantas incongruencias juntas ;)

[Editado el 22/2/2003 por beniamino]

malaga26
Mensajes: 947
Registrado: Sab 29 Jun, 2002 02:00

Mensaje por malaga26 » Dom 28 Sep, 2003 07:29

Para un usuario no es fácil localizar los posts que han sido recién creados o modificados desde que los consultó por última vez.
Basta leer el bloque de ultimos posts del inicio de la web :D no parece tan complicado :D
pero no en el momento actual. Un usuario ha de perder demasiado tiempo revisando la fecha de última modificación y el número de respuestas en cada hilo, si no quiere perder ninguna
Hombre, esto ya es algo subjetivo, hay personas que entran al foro de links, barren y se terminó. Otros prefieren tener mas presencia en todos los ambitos.

Yo me rijo por las estadísticas que son fieles compañeras :D

http://x.arkania.org/phpnuke/modules.ph ... file=stats

Medias:
7.61 envíos por usuario
518.96 envíos por foro
6.78 respuestas por hilo
54.66 envíos diarios
7.13 nuevos usuarios al día
29.45% porcentaje de miembros que publican.

Con un barrido cada 12 horas, cubres todos los nuevos envíos :D
aquellos que habiendo sido visitados en alguna ocasión contienen nuevos mensajes
Esto ya se puede hacer, marcando "recibir respuestas por email" al abrir o contestar un hilo, siempre que hayas intervenido en el hilo claro :D
Para lograr ese objetivo se necesita almacenar para cada usuario y cada hilo el número de respuestas presentes la última vez que el usuario accede a él
Por cada usuario (2000 ahora mas o menos) y por cada hilo (1600 mas o menos) eso supone almacenar unos 3.200.000 registros. Si encima para cada caso añadimos el numero de respuestas, que estadisticamente es de 6,78 (veanse las estadisticas) nos vamos a 22 millones de registros :D un handling excesivo, si cada registro ocupa 1 kb, 22 megas de transferencia sólo en ese concepto..... revienta la SQL pero fijo :D

Es por esto que se hace sin discriminar por usurios, una info para todos :D he aquí la razón.
La solución implica tanto un mayor consumo de espacio como una mayor carga en las consultas. Lo cual la hace inviable
Tu mismo lo dices :) inviable
Mi propuesta, que no sé si es técnicamente viable, consiste en diferirlos al cliente
Como poder se puede, pero este hosting no permite ess cuotas y las conexiones de españa no son T3 ni T1 la carga sería eterna
Por una parte la información debería quedar almacenada en los cookies presentes en cada cliente/usuario
22 megas de cookie y sólo si actualizas una vez en la vida :D si lo haces cada día en 10 días tienes una cookie de 220 megas ?donde la metemos? jajaja :D
Para que este esquema funcione es necesario que desde un script se pueda consultar y modificar localmente el contenido de las cookies. Lo cual desconozco si es posible, ni en caso de que sea posible cómo se haría exactamente
Escabroso asunto la seguridad del usuario, si ya mandar una cookie es vulnerar su sistema (a fin de cuentas te meten algo en tu ordenador y me juego a que el 99% no sabe ni que le mandan), meter mas info en las cookies... es perturbar más la privacidad del usuario. No estoy a favor :D
Sin embargo espero, al menos, despertar la imaginación de los que sí sepan. Lo que sí considero es que el actual sistema es ineficiente y sería preciso realizar alguna mejora en este sentido
Gracias por tu comentario en público (pocos lo hacen, la verdad) y por intentar sugerir y ayudar. Esto siempre beneficia, sin duda alguna. A raiz de esto quizás se invente algo por parte de alguien para mejorar más esto, amigo beniamino

En lo que no estoy de acuerdo es en la ineficiencia actual :)

Un saludo y gracias, esperamos más aportaciones futuras tuyas.

A ver si alguien quiere comentar el tema con nosotros :)

Ciao :cool:


[Editado el 22/2/2003 por malaga26]

Avatar de Usuario
beniamino
Mensajes: 591
Registrado: Lun 10 Feb, 2003 01:00
Ubicación: Santa Cruz

Mensaje por beniamino » Dom 28 Sep, 2003 07:30

Gracias por la respuesta. Sin embargo quiero apuntar algunas cosas y a ver si alguien más da su opinión.
Con un barrido cada 12 horas, cubres todos los nuevos envíos
A esto me refiero con que es, ineficiente, o mejor cambialo por poco satisfactorio. Un usuario que consulte la web cada 2 días pierde 3/4 de los mensajes en la lista inicial. Y para ver los que no le aparecen de inicio tiene que consultar en todos los subforos.

El objetivo de la medida que propongo es poder localizar de un vistazo todos los mensajes potencialmente interesantes descartando los que no aportan nada nuevo. Un vistazo, no un barrido. Ten en cuenta que tú eres el moderador y no es el mismo el tiempo el que le echas que el de un "espectador casual".
Esto ya se puede hacer, marcando "recibir respuestas por email" al abrir o contestar un hilo, siempre que hayas intervenido en el hilo claro
Como solución tiene sus problemas: primero no contempla para nada los nuevos hilos, y segundo es una solución ajena a la web. Implica al servidor de correo de cada cual y a su agente de correo. En mi caso, sólo lo use en los 3 primeros hilos que creé, desde entonces opto por hacer barrido porque es más rápido.
...22 megas de transferencia sólo en ese concepto...
...Es por esto que se hace sin discriminar por usurios, una info para todos...
Las cifras que expones ya me las esperaba, tan sólo estaba planteando el problema, para explicar cuál es mi idea. Pero creo que no me expliqué claramente.
diferirlos al cliente...por poder se puede
A ver si ahora me explico más claramente. Hay 1600 hilos tras ¿2 años? de funcionamiento. En mi propuesta cada usuario necesita conocer (tener almacenada en su máquina) el número de respuestas que había en un determinado hilo cuando la visitó por última vez. Si no la ha visitado no tiene almacenado nada. Luego, como máximo, el usuario que las haya visitado todas tendrá registrado 1600 valores de tipo (id del hilo, no. de respuestas).Cada valor requiere 16bits, total 4 bytes*1600 = aproximadamente 6 Kbytes. Eso en el peor de los casos de haber entrado en todos los foros. Para un usuario como que lleve poco tiempo y no visite todos los foros, el tamaño requerido seguramente sería inferior al tamaño mínimo de fichero por tipo de FAT. Con 50K por usuario seguramente se podría implementar toda la historia del foro de aquí a que lo cierren (Dios no lo quiera). Pero aún en el caso de que 50K se estime excesivo siempre se podría arbitrar un método de extinción de los registros más antiguos. Tengan en cuenta que cada nueva visita no implica la creación de un nuevo registro, sino la actualización del valor precedente.

Supongo que tus cuentas de 220 megas y ancho de banda T1 y T3 se deben a que hacemos interpretaciones distintas, porque insisto el servidor sólo tendría que enviar con las páginas html que muestran listas de hilos dos o tres funciones en Java Script o VisualBasicScript (nada más que de nombrarlo, la boca me sabe a mierda ;), ya sé que lo tecleo pero si no no encaja), que siempre serían las mismas. Estas funciones gestionan el almacenamiento y el cálculo de los valores (id hilo, #respuestas) en los clientes. Si quieren olvidénse de los cookies, lo que necesitamos es una manera de almacenar esos pocos Kbytes en las máquinas de los usuarios. Insisto en que necesitamos a alguien al día del "state-of-the-art".

Como tú dices por poder se puede y yo inisito en que es sólo cuestión de aprovechar el cómputo y almacenamiento de los 2000 usuarios.

De todas maneras también veo que es un tema que podría ser difícil de llevar a cabo y no es "estríctamente" imprescindible. Era tán solo una propuesta para mejorar ligeramente el foro, sólamente si la solución era ligeramente complicada. Lo importante es seguir poniendo buenos e-links.

Un saludo.

Avatar de Usuario
raul2010
Mensajes: 3203
Registrado: Mié 24 Jul, 2002 02:00

Mensaje por raul2010 » Dom 28 Sep, 2003 07:31

pues no es q yo tenga mucha idea de temas técnicos

pero si q es verdad q estar al tanto de todo pide tiempo, a veces se te escapan cosas y es dificil de evitar :(

en los posts de beniamino hay cosas interesantes

digamos q él ha tenido la primera idea, q ha sido proponer una mejora

ahora hace falta alguien q tenga otra idea, q cubra esa mejora de forma sencilla y satisfactoria (no digo ni siquiera q sea posible :))

en fin, q gracias a todos por intentar mejorar esto un poco cada dia!!

salu2

malaga26
Mensajes: 947
Registrado: Sab 29 Jun, 2002 02:00

Mensaje por malaga26 » Dom 28 Sep, 2003 07:34

Un usuario que consulte la web cada 2 días pierde 3/4 de los mensajes en la lista inicial. Y para ver los que no le aparecen de inicio tiene que consultar en todos los subforos
Hombre con todos mis respetos para quien no puede acceder con continuidad, la web está pensada para el usuario asiduo, igual que un periódico esta pensado para la lectura diaria. Siempre que se meta mano a una mejora, se pensará antes en el usuario asiduo.
El objetivo de la medida que propongo es poder localizar de un vistazo todos los mensajes potencialmente interesantes descartando los que no aportan nada nuevo. Un vistazo, no un barrido. Ten en cuenta que tú eres el moderador y no es el mismo el tiempo el que le echas que el de un "espectador casual"
¿Basar el interés en que la gente haya visitado mas o menos el link? Muy subjetivo eso, la verdad. Hay posts muy interesantes con 4 lecturas y 2 respuestas.
Como solución tiene sus problemas: primero no contempla para nada los nuevos hilos, y segundo es una solución ajena a la web. Implica al servidor de correo de cada cual y a su agente de correo. En mi caso, sólo lo use en los 3 primeros hilos que creé, desde entonces opto por hacer barrido porque es más rápido
Cada cual que la use o la desuse según crea :) la web entera depende de un proveedor, si el proveedor falla no hay correos ni hay visionado.

Para los nuevos posts nunca se recibe automaticamente email, más que nada por el colapso que se puede producir y la complejidad de llevar a la unidad ( a un solo usuario) la facultad de querer o no recibir todos los nuevos correos. Es la práctica más extendida.

A ver si ahora me explico más claramente. Hay 1600 hilos tras ¿2 años? de funcionamiento
No no, 7 meses :D

Ahora entiendo mejor tu propuesta. Mis nociones son limitadas, y el tema de cookies no es lo mío. EL código de phpnuke es libre, y por tanto modificable. No conozco ningún script que altere el sending de cookies, y por tanto mi experiencia es nula. Si alguien sabe algo..... podría al menos ojearse.
sólo tendría que enviar con las páginas html que muestran listas de hilos dos o tres funciones en Java Script o VisualBasicScript (nada más que de nombrarlo, la boca me sabe a mierda ;)
El visual olvídalo, que trabajamos en Unix. Y el Java Script... no alcanzo a ver donde lo empleamos para la gestión del conteo y análisis de tráfico (lecturas, posts, respuestas... etc)
Si quieren olvidénse de los cookies, lo que necesitamos es una manera de almacenar esos pocos Kbytes en las máquinas de los usuarios. Insisto en que necesitamos a alguien al día del "state-of-the-art"
Para llevar a una máquina remota información, sin usar cookies, y sin comprometer la privacidad y la seguridad, lo que necesitamos es un milagro :D
Como tú dices por poder se puede y yo inisito en que es sólo cuestión de aprovechar el cómputo y almacenamiento de los 2000 usuarios
Es complejo pero posible. Sólo hace falta alguien que codifique todo y me remita el código para las pertinentes pruebas. Nunca he visto nada al respecto, insisto que la complejidad es máxima. Yo no sabría como meterle mano de un manera óptima.
De todas maneras también veo que es un tema que podría ser difícil de llevar a cabo y no es "estríctamente" imprescindible. Era tán solo una propuesta para mejorar ligeramente el foro, sólamente si la solución era ligeramente complicada. Lo importante es seguir poniendo buenos e-links.
Es lo que opino yo sinceramente. Aún así créeme que de comentar intenciones de mejoras se aprende y mucho. Por tanto, te agradezco el esfuerzo, pero en esta materia o alguien me pone delante de los ojos una solución contrastada y eficaz, o la verdad, no creo que se lleve a cabo. Muy complejo para un servidor :)

Saludos :)

[Editado el 22/2/2003 por malaga26]
Última edición por malaga26 el Dom 28 Sep, 2003 07:36, editado 1 vez en total.

Avatar de Usuario
carbayonjovial
Mensajes: 743
Registrado: Dom 10 Nov, 2002 01:00

Mensaje por carbayonjovial » Dom 28 Sep, 2003 07:35

Cojonudo (¿se permiten palabrotas en el foro? niños no leais esto) lo que has hecho en el bloque de los últimos post, lo de poner el foro al que pertenecen hace mucho más efectivo la consulata de los temas.
UN 10 y pico....

Responder