Mostrando entradas con la etiqueta ajax. Mostrar todas las entradas
Mostrando entradas con la etiqueta ajax. Mostrar todas las entradas

martes, diciembre 02, 2008

Utilidad para crear imágenes de progreso para tu aplicación web

martes, diciembre 02, 2008 por Martín

Estaba necesitando un gif animado para mostrar una página de progreso y me he encontrado con esta pequeña utilidad para crear las típicas imágenes de progreso que se pueden encontrar por todas partes.

Por si a a alguno le resulta útil.



domingo, enero 13, 2008

High Performance AJAX Applications

domingo, enero 13, 2008 por Martín

En la Yahoo Developers Network se puede ver el video de una presentación muy interesante de Julian Leconte titulada High Performance AJAX Applicatons.



Julian Leconte es ingeniero del equipo de desarrollo web de Yahoo y en esta presentación trata temas tan interesantes como el rendimiento de JavaScript, DHTML, CSS, AJAX y como utilizar algunas herramientas para medirlo. La presentación se construye sobre el fenomenal trabajo que ha realizado Steve Souders con su High Performance Web Sites. Por cierto, la presentación es totalmente agnóstica y aunque utiliza ejemplos de YUI (Yahoo User Interface), todo lo que se puede aprender en ella es aplicable a cualquier otro entorno y frameworks.

sábado, septiembre 08, 2007

Rich Ajax Platform

sábado, septiembre 08, 2007 por Martín

Hace tiempo (desde que vine a Irlanda) que vengo estando desconectado del desarrollo con Eclipse. No me entendáis mal. Sigo trabajando con Eclipse diariamente (sigue siendo mi IDE preferido), pero ya no estoy al día de los diferentes plug-ins que van saliendo, de las diferentes versiones de los frameworks, etc.

Sin embargo, hoy en sus blogs me ha llamado la atención una entrada que referenciaba al proyecto Rich Ajax Platform. La verdad es que desde que coincidimos en los JAX Innovation Awards del 2006 no había sabido más del proyecto (si a alguien le interesa en esos Awards consiguió el tercer puesto sin tener nada que funcionase minímamente, y es que vale más una buena buzzword hace más que mil desarrolladores ;-)).



La captura de pantalla que se ve arriba es de una demo online que tienen en la página web del proyecto ejecutándose sobre Firefox. Es una especie de mashup de Google Maps incluyendo funcionalidades de chat (Eclipse ECF supongo). El caso es que hay que reconocer que el interfaz es exactamente igual al de una aplicación desarrollada con Eclipse RCP.

Según se puede leer en la página web del proyecto, todavía no se soportan todos los widgets, pero sí una buena cantidad de ellos a juzgar por esta demo.

Parece que según algunos creen, parece que el desarrollo web podría estar cambiando y ahora mismo es ya posible crear un núcleo compacto basado en RCP común a varias aplicaciones y desplegar éstas en el escritorio, dispositivos móviles (eRCP) y la web (RAP) "simplemente" creando algunos adaptadores para cada plataforma.

La verdad es que aunque discrepo con esta opinión, lo cierto es que la demo me ha sorprendido por su similaridad a Eclipse. Eso sí, como comprobaréis es terriblemente lentoooooo.

jueves, mayo 31, 2007

Google presentará hoy Gears su apuesta para el desarrollo offline de aplicaciones Web

jueves, mayo 31, 2007 por Martín

Quedan 3 horas para que comienze en Londres el Google Developers Day, una reunión global de todos los desarrolladores de Google. Independientemente de la amplia agenda de sesiones, el principal anunció del día parece que será Google Gears.

Google Gears es un plugin open source para navegadores web que ofrece un API Javascript para el desarrollo de aplicaciones que se pueden ejecutar tanto offline como online e independientemente del navegador. Parece ser que Gears ofrece, en sus 700K de tamaño, tres APIs: 1. para manejar objetos, 2. una base de datos relacional para almacenar los objetos y realizar búsquedas, y 3. un API para la sincronización de datos mediante Javascript.

Después de que Adobe haya apostado fuerte por Apollo este movimiento de Google parece encaminado definitivamente a popularizar este tipo de aplicaciones web "persistentes". ¿Estamos pues ante el futuro de la programación web?

Más sobre esto en la noticia en Techcrunch.

lunes, mayo 14, 2007

¿Son los applets el auténtico AJAX killer?

lunes, mayo 14, 2007 por Martín

Mientras la gente todavía se está preguntando como se va a distribuir JavaFX en la JavaOne 2007 el equipo de Jasper Potts demostró la potencia que se puede conseguir al mezclar los mundos de JavaScript y Applets.

Jasper realizó una demo impresionante sobre como reaccionar desde applets a eventos Javascript y viceversa. En la demo se muestra como realizar cosas que actualmente no es posible desde AJAX como la gestión de threads, el interactuar con el escritorio o el aprovechamiento del hardware 3D, y todo ello parece que soportado en todos los navegadores más importantes.

Ellos lo llaman la nueva generación de Applets, y desde luego que lo parece.

Muy bueno. Echarle un vistazo al video porque vale la pena verlo.

jueves, marzo 01, 2007

Liberado Tomcat 6 stable

jueves, marzo 01, 2007 por Martín

Comet aquí vamos. Lo que estabamos esperando muchos ha llegado. No es que jetty sea malo, pero es que Tomcat es como quien dice el estándar de facto y ya se echaba en falta soporte de comet por alguna parte. El soporte ya estaba ahí desde hace rato, pero hasta que el producto no fuese oficialmente estable no lo ibamos a utilizar. Ahora por fin ha llegado el momento. A ver si lo puedo/podemos probar y saco/sacamos algunas conclusiones.

El anuncio de la versión estable.

lunes, febrero 19, 2007

Comet y terracotta de la mano

lunes, febrero 19, 2007 por Martín

Parece que los chicos de jetty han encontrado por fin el filón para hacerle pupa a Tomcat, y están aprovechando al máximo su soporte de Continuations para atraer al mundo de AJAX en torno a su servidor. Tomcat también soporta el mismo concepto, pero por ahora sólo en Tomcat 6 que sigue por ahora en versiones inestables.

El caso es que en los blogs de los chicos de jetty se pueden encontrar artículos muy interesantes sobre todos estos conceptos (continuations, ajax, comet, ...). El último artículo explica las experiencias aplicando clustering con Terracotta a su soporte de comet. Me ha parecido interesante porque mezcla dos conceptos novedosos y expone algunas de las limitaciones de Terracotta. Aquí queda el enlace.

sábado, febrero 03, 2007

Applets, más vivos que nunca

sábado, febrero 03, 2007 por Martín

Leo en ComputerWorld que ThinkFree Office Online ha sido elegida como la mejor suite de oficina online del momento, derrotando a la todopoderosa google docs. Como puede ser esto, ¡pero si es un applet!, ¡pero si Java estaba muerto en el cliente!, ¡pero si ahora todo era Web 2.0 y AJAX! Ay, que estoy perdido.

Bueno, ahora en serio, esto no deja de ser un ejemplo más de que los productos triunfan por su usabilidad, y no por los tags que lleven asociados. No cabe duda que tener un gran marketing puede ayudar (apple, microsoft, ...), y hay infinitos ejemplos de productos peores que se venden mucho más que otros (iPod, Windows,...), pero eso no implica que todos los productos que sigan el mismo ejemplo vayan a triunfar, o lo que es más importante, ni que todos los productos que no lo sigan no vayan a tener sus momentos de gloria.

Y partiendo de estas premisas, lo cierto es que hay muchas empresas que no han abandonado los applets y apuestan por ellos. Cuando llegué a mi empresa, y descubrí que nuestro producto estrella (decenas de millones de euros invertidos por uno de los bancos más importantes del mundo) era un applet, me entraron escalofríos. Ignorante de mi. El aspecto visual es fenomenal, el rendimiento es espectacular, y desde luego cumple absolutamente todo lo que se puede esperar de una herramienta de margin trading en tiempo real. Sería absurdo aventurarse a hacerlo con AJAX, ya que el rendimiento sería ridiculo en comparación.

Así que como prueba de esto, aunque supongo que la mayoría de las personas que leen este blog lo saben, pero en JavaPosse publican con cada podcast uno o varios Applet of the week, que no dejan de demostrar una vez más que los applets están más vivos que nunca.

viernes, enero 19, 2007

Demostración de AJAX para mercados financieros

viernes, enero 19, 2007 por Martín

Se puede leer en el blog de DOJO que sitepen en colaboración con Lightstreamer anunciaron una demo que muestra el uso del framework Ajax DOJO para mercados financieros. Por cierto, lo más interesante es la documentación.

Para los que no lo conozcan, Lightstreamer es uno de los líderes en cuanto a streaming de datos de mercados financieros en tiempo real. El streaming es el corazón de todas las aplicaciones de FX, ya que todo se basa en ofrecer información del mercado en tiempo real. En mercados con tanta volatibilidad, un segundo puede significar miles de euros, por eso uno tiene que olvidarse del modelo tradicional de petición y respuesta, y pasar a un modelo push como el de este producto, o del nuestro ;-)

Ya hablé de Comet/Push/loquesea hace tiempo. Y ya en aquel momento insinué que no era tan bonito, ni nuevo como parece. Nosotros hacemos esto desde hace años, pero en lugar de recibir los datos en un navegador, los recibimos en un Applet. No hay demasiada diferencia en eso. Resumiendo mi post anterior, el problema del streaming es que asocia un socket con un usuario, y si tienes que acomodar a 35.000 usuarios, entonces tienes un problema. La ventaja como productos como Lightstream es que utilizan NIO por debajo, lo que permite multiplexar varios clientes bajo un único socket. Hasta ahí va todo bien, pero después resulta que vas al banco más importante de Europa, y te dirá que naranjas de la china, que a su web se entra primero por la aduana de Apache, que vas a tener dos sesiones de seguridad una en Apache y otra en Tomcat, y otra serie de cosillas que te devuelven al mundo real.

En fin, más sobre este tema cuando las cosas estén más clarillas.

sábado, diciembre 16, 2006

Comet, reinventando términos

sábado, diciembre 16, 2006 por Martín

Uno de los términos técnicos del que más se ha leído durante este año es el de Comet. Este término se ha asociado con el mundo de AJAX aunque la realidad es que es un concepto que viene desde mucho más atrás.

El streaming HTTP es la técnica más básica de cualquier compañía que se dedique al mundo de la bolsa, comercio de divisas, o en resúmen cualquier mundo en el que se necesita empujar datos al cliente a velocidades de vértigo. Por ejemplo en el mundo del intercambio de divisas todos los interfaces se basan en este concepto ya que la volatilidad del mercado es brutal y cuando estas operando con monedas con mucha volatilidad, unos pocos segundos pueden significar cientos de miles de dólares.

El streaming HTTP se puede realizar tanto desde un cliente web como desde una aplicación de escritorio tradicional. No es algo que esté ligado para nada con AJAX. Por ejemplo, puedes tener tu aplicación de escritorio interactuando con un banco a través de HTTP y mantener dicha conexión abierta para que el servidor te esté continuamente haciendo streaming de datos. Como he dicho, esto es algo que se ha estado haciendo durante años. En estos casos, el usar una técnica como esta y mantener la conexión habierta es algo básico ya que es físicamente imposible el soportar una comunicación mediante polling. Si alguno se está preguntando porque utilizar HTTP, simplemente debe pensar que estamos hablando de bancos, y los firewalls son muy importantes en los bancos :-), especialmente cuando tu objetivo es el retail, es decir, el público de a pie.

Existen muchos recursos actualmente sobre Comet, AJAX, NIO, etc. y este año ha sido uno de los mejores para este terreno. Servidores web como Jetty o Apache Tomcat 6 soportan ya el mantener conexiones persistentes con el cliente a través de Java NIO, pero el caso es que la historia no se ha acado todavía ahí. El problema más importante ahora mismo es que aunque escales en la capa Servlet, todavía tienes que escalar en el Apache que los bancos te suelen ofrecer como entrada, ya que no sirve de nada liberar threads en tu contenedor web si están bloquedas en el servidor HTTP. Existen opciones como Grizzly, que es un servidor HTTP que utiliza NIO por debajo, pero la realidad es que es poco probable que estas organizaciones te permitan instalar este tipo de software en su puerta de entrada al mundo exterior.

Ante esta situación sólo queda esperar. Probablemente el próximo año se harán muchos avances en este sentido, así que promete ser un año emocionante.