Persistencia y dinamismo (e Internet)
Antes de comenzar quiero prevenir a quien vaya a leer estas ideas que no estoy muy seguro de cómo explicarlas de forma clara. Voy a hacer mi mayor esfuerzo, y espero lograr al menos un éxito parcial. También, por supuesto, son ideas en desarrollo, por lo que sus comentarios serán muy útiles. Ahora sí a lo que vamos.
Tomemos en cuenta la vieja pregunta sobre la persistencia de los objetos cuando no los percibimos. Yo en este momento sé, por ejemplo, que la leche está en el refrigerador, aún cuando no la percibo, dado que ahí la dejé yo esta mañana y he aprendido que siempre que dejo algo en el refrigerador, cuando regreso sigue ahí en el mismo lugar, por lo que, para mi conocimiento, ese objeto persiste en ese lugar de forma contínua.
Apliquemos esa idea ahora a lo que veo en una página web. Supongan que entran todos los días a la misma página y siempre ven lo mismo. Cada vez que ponen la misma dirección, aparece siempre lo mismo, incluso el código HTML que lo produce es siempre exactamente el mismo. ¿Podríamos decir que esa página persiste de forma contínua? En otras palabras, durante el tiempo que no vemos la página, ¿esa existe ahí (digamos en el servidor)? Supongamos que la página está escrita en algún lenguaje del estilo de PHP y, dependiendo del usuario, muestra una página distinta.
Aún cuando el código original en PHP no cambie, el resultado de visitar la misma dirección será distinto para distintas personas, y el código HTML que reciben es únicamente el resultado de una interpretación del código original. En ese sentido, no podemos decir que la página que vemos todos los días persiste; al contrario, es interpretada en cada ocasión, aunque el resultado de esa interpretación sea siempre el mismo (para nosotros). La página per se no existe mas que cuando la estamos mirando; y en ningún otro momento. Pero sí persiste algo, que es el código PHP que genera la página en cuestión; desafortunadamente, este código se encuentra fuera de nuestro alcance, es decir, hay algo etéreo que no cambia, pero que somos incapaces de conocer. Más aún, somos incapaces de saber si lo que persiste es la página HTML o si hay un código interpretado detrás de ella. Ante nosotros únicamente se presenta esa interpretación, indistinguible de una verdadera página estática.
Vayamos más lejos y entremos a los mundos virtuales, como el de Second Life (ojo que yo nunca he entrado a uno, así que mi interpretación de ellos puede ser un tanto errada). Digamos que yo poseo un pedazo de tierra virtual y pongo en ella un árbol. Cada vez que yo me conecto, veo ese árbol, pero, ¿el árbol persiste ahí cuando yo no estoy conectado? Dudo mucho que los servidores resistirían mantener el nivel de detalle necesario para representar contínuamente todo lo que todos los usuarios han hecho en el mundo virtual. Por tanto, yo supondría que en esa zona de tierra, si yo no estoy conectado, no se mostraría nada. Aún así, persiste la información de que ese árbol se encuentra ahí para que, cada vez que me conecte, aparezca donde debe. Una vez más, el objeto en sí no persiste, aunque sí persiste una información que se encuentra en un nivel de abstracción más lejano que aquel al que tenemos acceso, y que, desde nuestra perspectiva es completamente indistinguible de la persistencia física.
Si para ahora no se han aburrido y siguen leyendo, por favor dejen un comentario con sus ideas al respecto.