| 2 objeciones |
iFrames... el AJAX para pobres
por Fernando Plaza en Programación, Ajax, CMS, El Reto Blogger
Una de las ventajas de AJAX es que puedes renovar una parte de tu página sin necesidad de refrescarla por completo... con lo que ganamos mucha velocidad y el usuario percibe mayor agilidad en el uso de tu web. Por ejemplo, en Gmail cuando marcamos con una estrellita un e-mail, la página no se refresca, simplemente la estrella aparece mágicamente (y por detrás corre un proceso en el que se guarda ese cambio de estado).
El problema es que hacer desarrollos en AJAX es complejillo porque el Javascript es muy pejiguero... por lo que hay que valorar si puedes conseguir un resultado similar sin tantas complicaciones, sobre todo si no tienes un equipo de desarrollo tan numeroso como el que trabaja en el proyecto Gmail.
Conseguir algo similar de una manera más sencilla, más simple... te permite destinar el tiempo que ahorras a hacer más cosas y en el futuro tú o a quien le toque no tendrás que invertir mucho tiempo en investigar como estaba hecho algo, porque lo sencillo lo entiende todo el mundo.
Abandonando un poco el romanticismo 2.0 que nos invade a todos, a veces analizándolo fríamente podemos llegar a la conclusión de que un par de iframes pueden resolvernos la papeleta sin muchas complicaciones o que no es tan complicado seleccionar una opción en un desplegable con 100 elementos ordenados alfabéticamente (y no es necesario que nos lancemos a programar un auto-fill en AJAX a lo Google Suggest... como decía Joel Spolsky: The Jury Is Not In, So Why Take The Risk When Your Job Is On The Line).
En otras ocasiones nos daremos cuenta de que no hay otra manera de resolver el problema de una manera decente, entonces sí... recurriremos al AJAX o a lo que sea necesario para conseguir nuestro objetivo.

Todo esto viene a cuento de que en nuestro CMS hemos mejorado la manera en la que se asignan las etiquetas a los posts, pasando esa funcionalidad a una página independiente (como si fuera un módulo) e incrustándola posteriormente en los lugares necesarios a través de un iframe. Esto nos permite hacer cambios en etiquetas muy rápidos, sin refrescos completos de la página -efecto similar al que conseguiríamos con AJAX- y además añadir con mucha facilidad ese mismo módulo en otras páginas, por ejemplo en nuestra integración con el API de 11870:

Otra ventaja es que ahora podemos seguir toqueteando ese módulo de manera independiente, con la tranquilidad de que no nos vamos a cargar otra funcionalidad más compleja.
La solución no es sofisticada, pero no hemos tardado ni dos horas en hacerlo, mientras que con AJAX habríamos tardado mucho más... y no tengo claro cómo hubiéramos podido luego re-utilizar ese código en otras secciones de la herramienta.
Por lo tanto: se práctico, ahorra tiempo y si funciona bien, no lo toques.
Tranquilos que no soy tan zote, sé que AJAX y los iframes no tienen nada que ver... pero con este título hiperbólico intento transmitiros una idea importante: no mates moscas a cañonazos.
Una de las ventajas de AJAX es que puedes renovar una parte de tu página sin necesidad de refrescarla por completo... con lo que ganamos mucha velocidad y el usuario percibe mayor agilidad en el uso de tu web. Por ejemplo, en Gmail cuando marcamos con una estrellita un e-mail, la página no se refresca, simplemente la estrella aparece mágicamente (y por detrás corre un proceso en el que se guarda ese cambio de estado).El problema es que hacer desarrollos en AJAX es complejillo porque el Javascript es muy pejiguero... por lo que hay que valorar si puedes conseguir un resultado similar sin tantas complicaciones, sobre todo si no tienes un equipo de desarrollo tan numeroso como el que trabaja en el proyecto Gmail.
Conseguir algo similar de una manera más sencilla, más simple... te permite destinar el tiempo que ahorras a hacer más cosas y en el futuro tú o a quien le toque no tendrás que invertir mucho tiempo en investigar como estaba hecho algo, porque lo sencillo lo entiende todo el mundo.
Abandonando un poco el romanticismo 2.0 que nos invade a todos, a veces analizándolo fríamente podemos llegar a la conclusión de que un par de iframes pueden resolvernos la papeleta sin muchas complicaciones o que no es tan complicado seleccionar una opción en un desplegable con 100 elementos ordenados alfabéticamente (y no es necesario que nos lancemos a programar un auto-fill en AJAX a lo Google Suggest... como decía Joel Spolsky: The Jury Is Not In, So Why Take The Risk When Your Job Is On The Line).
En otras ocasiones nos daremos cuenta de que no hay otra manera de resolver el problema de una manera decente, entonces sí... recurriremos al AJAX o a lo que sea necesario para conseguir nuestro objetivo.

Todo esto viene a cuento de que en nuestro CMS hemos mejorado la manera en la que se asignan las etiquetas a los posts, pasando esa funcionalidad a una página independiente (como si fuera un módulo) e incrustándola posteriormente en los lugares necesarios a través de un iframe. Esto nos permite hacer cambios en etiquetas muy rápidos, sin refrescos completos de la página -efecto similar al que conseguiríamos con AJAX- y además añadir con mucha facilidad ese mismo módulo en otras páginas, por ejemplo en nuestra integración con el API de 11870:

Otra ventaja es que ahora podemos seguir toqueteando ese módulo de manera independiente, con la tranquilidad de que no nos vamos a cargar otra funcionalidad más compleja.
La solución no es sofisticada, pero no hemos tardado ni dos horas en hacerlo, mientras que con AJAX habríamos tardado mucho más... y no tengo claro cómo hubiéramos podido luego re-utilizar ese código en otras secciones de la herramienta.
Por lo tanto: se práctico, ahorra tiempo y si funciona bien, no lo toques.
| UTF-8, probado, probando... 漢音 | |
| Estamos migrando el charset de todos nuestro CMS a UTF-8 y con ello el de todos los blogs que gestionamos con él. | |
| Capturando pantallazos de webs para obtener logotipos y thumbs | |
| Gracias al API de bluga.net se pueden obtener pantallazos de cualquier web, incluidas las desarrolladas en Flash, a partir de las cuales obtener con facilidad los logos de los establecimientos. | |
| Profesión: Ahorrador de tiempo | |
| El espiritu de un desarrollo informático debe ser la busqueda del ahorro del tiempo del usuario, eliminando tareas monótonas y repetitivas: ¿puedes conseguir que el trabajo se convierta en un juego? | |
| Thumbs en condiciones: como en Gmail y Facebook | |
| Había algo de nuestro CMS que me llevaba asqueando desde hace bastante tiempo: la generación de thumbs... asi que hemos mejorado el sistema, aquí explico cómo funciona y cómo está programado. | |









El 12 octubre 2008 a las 23:06 #
La verdade es que con todos los frameworks javascript que hay, casi es más fácil meterle el ajax que poner el iframe :)
De todas formas, veo que es en backend de gestión, por lo que en realidad, importa poco si es un iframe o ajeax. Como dices, si funciona no lo toques.
Es en la cocina, y en la cocina todo vale :)
El 13 octubre 2008 a las 18:05 #
La verdad es que con Visual Studio por ejemplo es muy fácil meterle AJAX a un formulario... pero como está hecho con Vbscript sobre ASP es más aparatoso (al menos con mis conocimientos).
Por lo que sí, mientras que funcione bien... no tocarlo. Menos sofisticazión... luego será mucho más sencillo de aprender para el que venga detrás.