¿Quién matará a Flash?

Parece claro: HTML5 y su combinación de Canvas y JavaScript, o alguna otra tecnología, van a acabar reemplazando a los .swf en la web

[Adobe sigue posicionando Flash como plataforma para múltiples aplicaciones. El vídeo en la web (vinculado a un ‘media server’, con ancho de banda adaptable y/o DRM) sigue siendo una propuesta de valor a considerar. También apuntan al 3D en el navegador: parece que, finalmente, el próximo Flash tendrá 3D nativo, aunque podrían llegar tarde para competir con las bibliotecas de 3D para JavaScript que llevan ya una temporada dando vueltas. Y siguen insistiendo en posicionarse como una alternativa a los entornos de desarrollo de Microsoft que sale hacia la web (donde Silverlight no parece una amenaza seria) por un lado y hacia el escritorio, dispositivos móviles y hasta televisores, por otro, de la mano de Adobe Air 2.5. Todo ello en un ecosistema con herramientas especializadas como Flash Catalyst o Flex Builder y una buena integración con la ‘estrella’ de la casa para los diseñadores, Photoshop —la integración es mejor aún con Fireworks, que parece mejor herramienta para diseñar interfaces para interactivos pero que, diría, aún no tiene la cuota de mercado que creo que merece.]

En cualquier caso, aún dando por supuesto (no parece nada descabellado) que Flash va a ceder el campo de ‘animación interactiva para la web’, seguimos necesitando una herramienta de autor comparable. Y el problema, ahora mismo, es que parece que vamos a pasar de ninguna a demasiadas opciones en un suspiro…

  • Por un lado, Microsoft, sorprendiendo a propios y extraños, sacó (sin mucha promoción) hace unas semanas Ai->Canvas, un plug-in para Illustrator (sí, de Adobe, de ahí la sorpresa) que ‘escupe’ Canvas+JavaScript de forma al menos aceptable. Y que, además, ahora mismo, es lo único que lo hace con pinta de ‘herramienta de autor’.
  • No contentos con esto, también tienen Glimmer, que sin ser un prodigio de usabilidad, ahorra mucho trabajo a la hora de usar algunos de los efectos más habituales de jQuery para manipular el DOM del navegador.
  • Por otro lado, anteayer, la propia Adobe anunció el prototipo de una herramienta nueva y especializada, Edge (vídeo de demo), que iría por la vía de jQuery. No sé si para sorpresa de propios y extraños, pero sí para la mía, que habría apostado por un exportador para Flash y me había quedado tan ancho…
  • Y cuando uno ya vivía ‘feliz’ con la promesa de una nueva herramienta, me encuentro con que Mike Chambers (el principal product manager for the Flash Platform at Adobe) tuitea que están enseñando el exportador de Flash a HTML5… Que ya era lo que yo anticipaba, efectivamente, posicionando a Adobe en los dos campos: jQuery y Canvas. [Ups: ver el segundo ‘PS’ al pie de la entrada]

Todo esto a la espera de que otros se lancen (o no) al ruedo: Microsoft también debería poderle hacer un exportador a todo lo que ahora vaya hacia Silverlight y no depender de Adobe e Illustrator, mientras que Apple podría crear sin demasiados problemas un “Flash killer” y seguir haciendo un poco la puñeta a Adobe.

Todo parece indicar que quien quiera dejar de usar Flash en la web va a tener que apuntarse a las dos opciones: para los típicos efectos ‘rollover’ y similares, jQuery o alguna de sus alternativas y, para animaciones ‘de verdad’, Canvas con sus correspondientes herramientas de autor/kits de desarrollo. Dado el nivel de mejora en el rendimiento de JavaScript de los navegadores, saltarse a Flash Player parece una buena decisión (parece que hasta Adobe vota por ello, con sus demos y anuncios), pero antes de tomarla hay que ser consciente de diversos aspectos. Hay cosas como empaquetar todos los objetos en un único .swf que parecen cómodas, y también hay que pensar en el montoncito de usuarios que siguen anclados en IE7 y 8, que no son despreciables en muchos ‘targets’ y cuyo rendimiento de JavaScript va a seguir siendo patético durante una temporada (en el caso de los “resistentes de XP”, jamás saltarán a IE9, además).

En cualquier caso, a buena parte de los desarrolladores de ActionScript les conviene ponerse las pilas y comenzar a ver cómo funcionan tanto jQuery como Canvas…

PS 20101028 Obviamente, 24 horas después de escribir el post, me encuentro con información adicional de dos que se lanzan al campo de la animación HTML5: Sencha Animator y AdVine (estos últimos dedicados en exclusiva al mundo de la publicidad, parece). Ambos, vía TechCrunch.

PS20101028 Se ha ‘filtrado’ vídeo de la demo del exportador de Flash a “HTML5” y no se trata de Canvas+JavaScript, sino de HTML, CSS3 y JavaScript. Aún estoy más perdido…

No todo es JavaScript…

Microsoft lleva diciendo bastante tiempo que mejorar el rendimiento del navegador no se limita a conseguir mejores resultados en la suite de tests SunSpider (ayuda que IE8 sea el navegador más lento del mercado a la hora de ejecutar JavaScript, aunque todo parece indicar que, finalmente (cuando salga, que no va a ser ni mañana ni pasado), IE9 va a estar en números al menos comparables a los del resto del mundo). Pero parece que ahora desde Apple también van a tener que hacer proselitismo con el asunto, puesto que a alguien se le ha ocurrido ejecutar el test con Safari para iPhone y iPad y los resultados han sido bastante pobres, algo especialmente preocupante si tenemos en cuenta que Safari es Webkit, precisamente la gente que realizó el ‘benchmark’. Estoy convencido, además, que si se hace la prueba con un Nexus One el resultado tampoco va a ser muy allá (no me costaría nada creer que fuese aún peor)…

La cosa me provoca un par de reflexiones, así a bote pronto…

  • Por un lado, que me gustaría oír a alguien que no fuese Microsoft decir abiertamente que se van a dedicar a mejorar otras categorías de rendimiento más allá del JavaScript (¿para cuándo una suite de tests que compare cuánto tardan los diferentes navegadores en aplicar selectores de CSS3, por ejemplo?).
  • Por otro lado, se vendría a confirmar que portar Flash a los procesadores actualmente disponibles para dispositivos móviles es una tarea harto complicada, por no decir imposible a día de hoy, lo que explicaría la eternidad que estamos tardando en ver dispositivos de esa clase que ejecuten Flash.
Reblog this post [with Zemanta]

JavaScript is as evil

Los nuevos estándares abiertos creados en la era móvil, como HTML5, ganarán en los dispositivos móviles (y también en los PCs). quizá Adobe debería centrarse más en crear grandes herramientas HTML5 para el futuro, y menos en criticar a Apple por dejar el pasado atrás.

Sabias palabras de Steve Jobs. Permítanme jugarme un euro a que, además, son proféticas: en Flash CS5 ya hay una rudimentaria (o no tanto) exportación a Canvas. Muy estúpidos tendrían que ser en Adobe para que CS6 (o como se llame) no exporte básicamente todo lo que sea capaz de producir Flash a HTML5, Canvas y JavaScript1. Y entonces descubriremos que el “sabio” uso de las etiquetas <audio> y <video> es capaz de producir las mismas aberraciones a que ha dado lugar el mal uso de Flash a lo largo de los diez últimos años (que son innumerables).


1 Una de las cosas que más me extraña de la carrera hacia Canvas+JavaScript es que todavía no he oído de nadie que se esté preocupando de crear herramientas de autor (no necesariamente un Flash, quizás más algo en la línea de Authorware, del jurásico AmigaVision o del silúrico HyperCard). Me da a mí que ahí hay una gran oportunidad de negocio. Adobe tardará entre año y medio y dos años en poner en marcha CS6 y aún van a ser los primeros en llegar al mercado…

Glimmer, un asistente para jQuery… de Microsoft


Get Microsoft Silverlight

Puestos a buscarle defectos a jQuery, el principal es la ausencia (que yo sepa, corregidme por favor si me equivoco) de herramientas de autor que permitan usar sus características sin pelearse con un mínimo de JavaScript que a veces no es tan mínimo. Y ahí es donde entra Glimmer (sí, desarrollado por Microsoft y con el código abierto (licencia Microsoft Permissive Limited License para el código fuente)). Glimmer contiene asistentes para secuenciadores de imágenes, ‘tooltips’ personalizados, menús desplegables y un ‘custom’ que permite desplazamientos sencillos, cambios de color y opacidad, aplicación de clases CSS y retardos, entre otros. Apenas le he echado una ojeada, pero el código generado parece bastante aceptable, a primera vista. Una buena iniciativa de Microsoft…

(Necesita .NET Framework 3.5 SP1, que baja e instala él mismo si es necesario.)

Enhanced by Zemanta

La potencia del navegador: un ‘chroma’ en JavaScript

Captura de pantalla de Firefox 3.1 haciendo un chroma de vídeo
Me he quedado sin palabras...

Im presionante. En todas las palabras que haga falta. Vais a necesitar Firefox 3.1 (actualmente en beta) para verlo, pero se puede hacer un ‘chroma’ desde el navegador (cómo se hace, vía). Sin After Effects. Sin Premiere. Sin Flash. En JavaScript. En tiempo real. Voy a intentar cerrar la boca. Vuelvo dentro de un rato…