Ajax no es el camino (o al menos, no es el unico).

Después de los primeros intentos de hacer funcionar aplicaciones web, desarrolladas con funcionalidad AJAX, me convenzo cada vez mas que dicha tecnología es buena, para determinado conjunto de aplicaciones, relativamente sencillas, pero que no esta bien situada para

Los problemas que se han dado:

Performance.
La performance de las aplicaciones AJAX es decepcionante en muchas máquinas. Los factores son variados, influyendo mucho la versión del navegador que se utiliza. El peor de todos es IE 6.0 y el mejor es Firefox. La versión 7.0 del IE mejoro, pero aun es mala.

Usabilidad.
Mezclado con los problemas de performance, se mezclan problemas de usabilidad, porque al ser los llamados asincronicos, se disparan en momentos no deseados. Pasa varias veces se esta digitando un campo y saltan controles correpondientes a otro campo de la pantalla o limpia el contenido de lo que estamos digitando.

Practicidad de instalación.
Una de las mejores caracteristicas que tienen las aplicaciones web, es que su instalacion es facil. Alcanza con copiar todo al servidor web y a partir de ahi, todos los usuarios tienen disponible la nueva versión. Con los javascripts necesarios donde se programan algunas reglas y los eventos, están habiendo problemas pues los diferentes navegadores no se dan cuenta que se han actualizado los archivos *.js en el servidor, y continúan ejecutando los viejos. Esto trae una cantidad de errores no deseados y difíciles de entender por el usuario, pues saltan errores en lugares insólitos. La ventaja de instalar una vez y que todo quede funcionando, tampoco se esta cumpliendo.

Creo que como industria de software, deberíamos contar con una base mas solida que los navegadores e Internet para aplicaciones de misión critica. Siento que estamos haciendo aplicaciones que manejan temas critico con una infraestructura demasiado endeble y eso nos va a costar caro, fundamentalmente en imagen como "gremio tecnológico" que somos.

Los navegadores, no son mas que una aplicación de escritorio (bastante sobre valoradas, desde mi punto de vista) y deberíamos enfocar nuestros esfuerzos en encontrar una mejor plataforma para las aplicaciones de los próximos años.

No quiero que se entienda que no me gustan las aplicaciones WEB. Todo lo contrario, creo que todo sistema hoy en día, debe tener una interfaz web, para determinado conjunto de operaciones. Esta interfaz es una de las que le entregan mas valor a los usuarios. Lo que aun no me convence es la exigencia del mercado de tener aplicaciones FULL WEB. Creo que eso es un paso atrás y la incorporación de Ajax, no mejora drasticamente la ecuación.

Deberemos esperar a que el "péndulo tecnológico" vuela a alguna otra tecnología ya usada en los años anteriores y volver a reinventar la rueda entre todos.

Blogged with Flock

Comentarios

  1. Daniel Mendez, del grupo de desarrollo de GeneXus, me dijo que estaban trabajando en mejorar varios aspectos de la implementación de Ajax/Genexus.

    Performance. Se mejoró la performance en U3 de la 9.0, evitandose el llamado duplicado en algunos casos.

    Deploy. Se esta pensando en ponerle algun tipo de version a los javascripts generados, para evitar el problema de llamar a funcionalidades viejas.

    Usabilidad. Van a corregir el que salte de un campo si el mismo tiene error.

    Son todas, muy buenas noticias, y las publico yo pues Daniel es muy timido como para escribir en mi blog :)

    ResponderBorrar
  2. Yo coincido con vos que ajax es basicamente un parche a la tecnologia web (html) que esta siendo empujada totalmente mas alla de su disenio original. De todas formas estoy convencida que por su simplicidad (me refiero al web en general, even before ajax), por ser ubiquitous, por ser 0 install, por la alta user adopcion, por ser multiplataforma, y por toda la infraestructura de profesionales, empresas y servicios alrededor de el, el web llego para quedarse y ahi lo tendremos por un rato laaargo y no dudaria en volver mis apps full web salvo casos bastante particulares. Se seguira emparchando como en el caso de ajax, se volvera semantico, se volvera un sistema operativo en si mismo corriendo arriba de cualquier otro OS, pero va a seguir ahi ... algo para pensar acerca de como evolucionamos, razones varias intermezcladas ...

    ResponderBorrar

Publicar un comentario

1) Lee el post
2) Poné tu opinión sobre el mismo.
Todos los comentarios serán leidos y la mayoría son publicados.

Entradas más populares de este blog

La nefasta influencia del golero de Cacho Bochinche en el fútbol uruguayo

Aplicación monolítica o distribuida?

Funcionalidades de GeneXus que vale la pena conocer: DATE Constants.