La Web fue en su nacimiento solo una serie de documentos de texto asociados entre si por enlaces hipertextuales. Basó su funcionamiento en la tecnología cliente/servidor, en el lado de Internet está el servidor, que a un requerimiento del cliente/usuario, recolecta textos, imágenes, sonidos, etc, y los envía en un fichero .htm que contiene además las instrucciones para su presentación en pantalla. En el PC actuando como cliente, mediante un programa especializado, el navegador, lee el fichero enviado por el servidor y compone una imagen que muestra en pantalla.
Pronto el éxito del la Web superó las expectativas
y nuevos añadidos tanto en el lado del servidor, como el lenguaje
PHP, como en el cliente, como plugins y JavaScrip, hicieron posible
pasar de dar una respuesta fija e inmutable a un requerimiento del
cliente, a una respuesta variable y dinámica, dependiendo de los
parámetros que acompañan a la consulta del cliente. La página Web
pasó con ello, de dar solo información, a dar respuestas, abriendo
una era de nuevas posibilidades de interactividad entre el usuarios
y la web, que ha ido evolucionando hasta la que hoy se ha dado en
llamar la WEB
2.0.
Arranque-frenazo-arranque-frenazo
Si bien la web ha evolucionado rápidamente, arrastra una rémora del pasado que hace molesto y pesado su uso intensivo, su funcionamiento intermitente. Haces clik, y descargas un página y desde ella, realizas cualquier solicitud, introducir un dato o presionas un hiperenlace. Se produce una espera mientras bajan los datos y se compone la nueva pantalla, aparece el nuevo documento web, y vuelta a empezar.
Navegando entre grandes documentos de mucho texto, es soportable, pues comparado el tiempo destinado a la lectura de una página, el tiempo de carga es razonablemente reducido. Pero, ¿no sería más agradable que cuando buscamos en Google, con solo pasar el cursor por encima de las páginas seleccionadas, se abriera inmediatamente la página? Parece magia, pero es lo que hace Google Maps, o más cerca a nosotros el callejero fotográfico de QDQ, navegen por estas webs y verán lo que les quiero explicar. Una imagen se observa de un vistazo, si entre imagen e imagen, hubiera que esperar que se descargue la nueva página, la navegación en estas webs se transformaria en algo insoportable, hubo pues que encontrar otro sistema mas ágil de presentación para estas webs.
Que es Ajax
Una respuesta posible es utilizar AJAX, un nuevo concepto que comienza a dar mucho que hablar. AJAX no es una tecnología, es usar de forma conjunta varias técnicas existentes, la presentación según estándares XHTML y CSS, exhibición dinámica de objetos, intercambio y manipulación de datos XML, comunicación de datos asíncrona y al final el JavaScript elaborando los datos para generar constantes visualizaciones. AJAX es el acrónimo de Asynchronous JavaScript + XML, y tiene por objeto cargar una página y mantenerla en pantalla, mientras los scripts llaman al servidor de manera transparente al usuario, (forma asíncrona), en busca de los datos necesarios para, mostrando u ocultando porciones de la pantalla, actualizar solo una parte mediante sucesivos y rápidos refrescos de pantalla, que consiguen un efecto parecido a la televisión, la sensación de movimiento mediante pequeños y constantes cambios en la imagen de la pantalla.
Solución, la comunicación asíncrona
En el gráfico se representa la diferencia entre la forma de trabajar tradicional y la forma de trabajar de una página con motor AJAX. Eliminamos el efecto arranque-frenazo- arranque-frenazo típico de la antigua Web con la interposición de una nueva capa, AJAX, entre el usuario y el servidor. Esta capa no frena la velocidad de proceso, pues con una técnica parecida a la de los aceleradores del navegador, descargar por anticipado automática los datos que el usuario puede solicitar, pero aquí, en vez de bajar masivamente todas las pantallas que linkan la que se esta visionando, solo se bajan los datos precisos para modificar un trozo de la pantalla a requerimiento del usuario, de modo que el usuario interactúa con la aplicación suavemente, sin necesitar parar para las descargas del servidor, de manera que solamente en caso extremos verá el reloj de arena que confirma que la parada observada no se debe a una caído del sistema, sino que el servidor esta actuando, aunque el aún el usuario no vea el progreso.
Unos ejemplos, con Ajas y con Macromedia
Aconsejo visitar la web www.dontclick.it, para mi gusto, excesiva y mareante, pero un buen exponente de lo que se puede hacer con esta tecnología. No es Ajax el único medio de dar continuidad a una web, la British Library tiene una interface hecha con Flash de Macromedia , que permite manejar libros, pasando páginas. Especialmente curioso es ver un manuscrito de Leonardo da Vinci, donde además se puede usar una lupa, y un espejo para ver el texto en el sentido normal, (Leonardo, probable disléxico profundo, escribía en privado invertido), también es curioso explorar un rollo chino, que es el libro impreso más antiguo que se conoce, (siglo IX, 500 años antes de Gutemberg). Con Ajax podrían haberse conseguido algo similar, pero posiblemente el tiempo de carga inicial sería más reducido, pues basta con cargar solo la página inicial y no todo el libro de golpe.
En el futuro será cada vez mas corriente toparse con web parecidas a estas, hechas con Ajas u otras herramientas. La dificultad de crear aplicaciones AJAX, no es tanto técnica, como mental, a un experto en páginas web, le resultará al comienzo dificil olvidar las limitaciones que siempre se ha encontrado en la Web, y por ello tenderá a imaginar aplicaciones con funcionamiento secuencial y no continuo. Pero una vez imaginadas, para crearlas, se utilizan herramientas conocidas, por tanto no debe resultar más compleja una página Ajax, que un desarrollo clásico que funcionalmente haga lo mismo.
Post data
Con este artículo solo pretendo divulgar entre los interesado la existencia de una técnica puntera en la construcción de páginas webs, mi conocimiento sobre este tema, tampoco me permite más. El profesional o quien desee alcanzar una mayor profundidad técnica, le aconsejo la lectura de los siguientes documentos en español:
En Alzado.Org, un artículo de Luis Villa, que como el mío, tiene el único afán de divulgar lo que es AJAX, si bien destinado a lectores con experiencia en desarrollos Web. No os perdáis tampoco en este mismo blog y por el mismo autor, un articulo sobre Ruby on Rails, el no va mas de la modernidad en cuanto a herramientas de desarrollo de páginas AJAX.
Este de Denken Über, aunque su título lleve a confusión, este blog está entre los mejores dedicados a la tecnología en español. Encontrarán una traducción de un documento de Jesse James Garret, uno de los fundadores de Adaptive Path, la empresa que más está utilizando este nuevo concepto. A continuación trae una interesantísima entrevista con el autor sobre lo que es y no es AJAX.
A partir de los enlaces existentes en estos documentos, se puede profundizar, (quien tenga un buen inglés), tanto como se precise. Deseo expresar mi agradecimiento a ambos autores, pues de la lectura de sus artículos y de alguno de los enlaces que me proporcionaron, he obtenido los conocimientos necesarios para preparar este artículo.


Me gustaría saber si se pueden porgramar aplicaciones cliente servidor tipicas (como por ejemplo un chat dinamico, o un ta te ti multiplayer) mediante Ajax. De ser así agradecria algun vinculo a algun ejemplo y si es posible algun codigo fuente ilustrativo. Mis cordiales saludos. ferruloso at gmail.com
Mi opinión es que se puede hacer cualquier cosa en la que lo que cambie entre secuencias consecutivas esa una parte de la pantallay se pueda preveer el posible cambio a realizar. Por tanto juegos como el ajedréz o el Ta te ti son adecuados para aolicar esta técnica.
Lo que debe quedar claro, es que no tengo esperiencia profesional con Ajax y que mi conocimiento sobre el tema no excede en mucho, al imprescindible para escribir este artículo, por tanto lo que doy es una opinión de escaso valor. Creo que en Internet hay foros donde te podrían dar respuestas mucho más solventes a tu pregunta.
En las dos direcciones que doy al final del artículo,Alzado.org y Danken Über, tiene un buen punto de partida para comenzar a explorar el tema. En español no conozco webs mas esclarecedoras y a partir de ellas, puede enlazar a artículos en ingles y documentacion fundamental.
Muy bueno el articulo, lastima q el manejo de AJAX no sea standar para todos los navagadores ya q javaScritp no los es
Tienes razón, esa es una limitación de determinados navegadores, no del sistema.
Hola: donde puedo encontra documentacion para comenzar a programar AJAX, perdon y gracias
quisiera saber si en todos los paises el ancho de banda es igual ,y si la red no es lenta