domingo, enero 31, 2010
|
Nota: Este es un artículo en dos partes. La segunda parte sale mañana acá mismo en eliax.
Parte 1 de 2 Si la existencia de Adobe Flash fuera documentada en una película de Hollywood, sin duda que fuera un épico al estilo Lo Que El Viento Se Llevó o Titanic, pues pocas tecnologías que conozco han sufrido una transformación como Flash. Antes de iniciar, expliquemos brevemente lo que es Flash para los lectores que no son técnicos: Flash no es mas que la tecnología que utilizan los navegadores web cuando llegas a una página que tiene muchísima interacción visual, con muchos menúes, moviemiento, video, etc. Es también la tecnología actual detrás de los videos de YouTube. Y ahora, una breve explicación para los mas técnicos: Flash no es mas que un runtime que funciona como un plugin o extensión dentro de navegadores web, y que está basado en un programa de animación vectorial (es decir, con gráficos al estilo Autocad), aunque con extensiones de bitmap (al estilo Photoshop), y con facilidades para programar el comportamiento de los elementos visuales. Ahora iniciemos, empezando por una (y sin duda sorprendente) breve historia de Flash... Flash, para sorpresa de casi el 99% de incluso los mas fervientes usuarios de esta tecnología, no se originó ni con Adobe ni con Macromedia (quien Adobe adquirió en el 2005), sino que tiene sus inicios muchísimo antes, exactamente en 1993 cuando un tal Jonathan Gay lo creó bajo otro nombre totalmente diferente (SmartSketch). La parte sorprendente aquí es que Flash en realidad es una tecnología que ya lleva 17 años en el mercado, existiendo incluso antes de los navegadores web que conocemos hoy día, y eso como veremos en un momento, tiene mucho que ver con este artículo de hoy... En sus inicios, esta tecnología pasó por todo tipo de entornos, desde un sistema operativo para los primeros tablets llamado el PenPoint OS, hasta ser adaptado en código para que funcionara tanto en el Mac OS de esos días, como en las primeras versiones de Windows. Con la salida del Internet, este fue nuevamente adaptado y presentado al mundo como FutureSplash para competir contra Macromedia ShockWave. En el 1995 FutureSplash fue modificado otra vez para que soportara animación con keyframes (es decir, en donde uno dibuja con un programa vectorial dos puntos, y FutureSplash dibujaba los puntos intermedios en tantos cuadros se le especificara), y fue modificado otra vez para sacarlo en varias plataformas, incluyendo UNIX. El software fue modificado otra vez mas para (sorpresa) Microsoft, quien lo utilizó en sus versiones iniciales de MSN. Mas tarde, en 1996, FutureSplash fue adquirido por Macromedia, quien (¿ya adivinaron?) lo volvió a modificar, y le cambió el nombre, sacando las letras "utureSp" de "FutureSplash" y dejando solo "Flash". Desde entonces, Flash ha ido evolucionando y adaptándose a distintos entornos, pero principalmente la Web. Se le agregaron por ejemplo capacidades de programación interna, de poder tener variables, capacidad de reproducir video, etc. Y he aquí el primer gran problema que encontramos con Flash: No solo es una tecnología bastante arcaica que simplemente se ha ido adaptando poco a poco a los tiempos cambiantes, llevando un gran equipaje consigo, sino que además es extremadamente pesada, lenta, y requiere de muchísimos recursos del CPU de una máquina para hacerlo funcionar. Aparte de eso, la complejidad de su código que ha venido siendo mantenido por 17 años, hace que tenga todo tipo de problemas, que con regularidad hace que sea la causa principal de que nuestros navegadores web se tornen lentos, o de que estos "exploten", con frecuencia incluso llevándose con ellos mismos al sistema operativo de paso. Muchos diseñadores gráficos que utilizan Flash de seguro que jurarían que ven pocos rastros de algún producto "viejo", pero eso se debe a que el lado "feo" de Flash no está en las excelentes herramientas de Adobe para generar Flash, sino en el código necesario para interpretar Flash en tiempo real. Es decir, lidiar con Flash es similar a lidiar con un automóvil que por fuera lo mantienen bonito, pero por dentro parece un basurero con un motor que apenas arranca, que hace que el auto funcione lento, y que con frecuencia se detiene sin ningún motivo aparente. Sin embargo, veamos el otro lado de la moneda. El usuario común rara vez nota estos problemas, y le hecha la culpa de todo lo que ocurre cuando una página web o su PC explota al mismo navegador web, o al sistema operativo, ya que el usuario común rara vez entiende las particularidades técnicas de las relaciones que existen entre el sistema operativo, el navegador web, y las extensiones de este como Flash. Como ejemplo, cuando veo la tarea de procesos en mi PC, por lo general tan solo el plugin de Flash es responsable de entre el 40 y el 90% del uso del poder de CPU de toda mi PC. Del lado de esa misma moneda están los diseñadores gráficos (no programadores). Estos aman a Flash porque les ofrece un gran rango de expresión artística, gracias a todas las animaciones vectoriales posibles. Testamento de eso son las miles de majestuosas páginas web en Internet que vemos a diario, que utilizan toda manera de animaciones e interacciones. Pero eso, viene a un precio. Primero, algo que estos diseñadores gráficos rara vez dicen, es que a diferencia de HTML en donde es trivial hacer cambios globales o locales, en Flash hacer cambios a páginas web se hace una tarea bastante tediosa, e incluso muchos diseñadores optan por re-hacer un website completo en vez de volver a empaparse las manos con todo el trabajo anterior. Ciertamente existen diseñadores que son organizados y siguen reglas que los ayudan a lidiar con esa complejidad, pero estos son pocos y escasos en el mercado. Otro problema es que si no tienes el código fuente disponible de quien te generó un bloque de Flash, tampoco puedes modificarlo, al menos que quieras importar dentro de una aplicación el archivo Flash crudo, cosa que pocos hacen por lo sucio que es (créanme lo que les digo, yo he tenido que hacerlo al menos un par de veces y no es una experiencia que quisiera repetir jamás en mi vida). Otro tema es el tiempo de espera. A diferencia de páginas HTML que por lo general cargan casi instantáneamente, las páginas con Flash por lo general necesitan de un tiempo adicional para cargar, lo que hace que frecuentemente en Internet nos topemos con los famosos relojitos, o circulitos, que dan vueltas y vueltas mientras esperemos a que cargue toda la página, con frecuencia solo para nosotros consultar algo que nos toma unos pocos segundos (yo personalmente lo que hago es que cierro tales páginas y busco otros recursos en donde pueda encontrar la misma información en HTML). Pero eso no es nada comparado con lo que yo considero es quizás el peor problema de Flash: Flash no fue pensado originalmente para la Web, y rompe con el esquema de hiper-enlaces (hyperlinks) que fueron la razón principal de la popularidad del Internet. Es decir, si entras a una página construida completamente en Flash, y después navegas a un catálogo de productos, y después encuentras un producto en particular, con Flash es imposible que tu puedas hacer un bookmark (marcador) con tu navegador para tu regresar posteriormente a ese producto, ya que en Flash no existe el concepto de "página", sino que todo ocurre dentro de un "cuadro de Flash", y toda la aplicación debe ocurrir dentro de ese cuadro, por lo que cuando creas un marcador, lo que haces en realidad es tener un enlace al inicio de toda la aplicación. Pero, ¿por qué es Flash tan popular? Pues yo diría por estas razones: 1. Aparte de Java Applets (que fueron desplazadas por Flash), hasta ahora no existía una alternativa viable para crear animaciones de alta calidad. 2. La ignorancia de los diseñadores gráficos de estándares web, ni de las repercusiones de usabilidad de utilizar Flash. 3. Es una buena manera de convencer a un cliente de que le has creado una página web espectacular, sin importar si esta es útil para los usuarios finales o no (esto lo veo yo a diario con empresas que buscan asesoría de mi parte para rehacer páginas que ya no pueden mantener). 4. Pocos diseñadores gráficos entienden técnicas de programación AJAX, pero sí entienden como crear formularios interactivos con Flash. 5. Las excelentes herramientas de Adobe y su difusión en el mercado. 6. Flash Video. Ese último punto, Flash Video, es en mi opinión la razón principal por la cual Flash sigue vigente hoy día. Flash Video, como popularizado por YouTube, se convirtió en el Super Mario Bros de Flash, la aplicación que haría casi necesario tener a Flash, de la misma manera que Super Mario Bros hizo que se vendieran millones del original Nintendo (NES). Sin embargo, ahora llegamos a una encrucijada, en donde entran tres actores: Apple, Google y HTML 5... Este artículo continúa mañana acá en eliax, en donde cubriremos la influencia de Apple, Google y HTML 5 en Flash, así como qué esperar de Flash con miras hacia el futuro y como ir preparándonos para ese futuro. ¡Nos vemos mañana! Actualización: Enlace a la segunda parte. autor: josé elías |
42 comentarios |
Opinión / Análisis , Predicciones , Software |
Comentarios
Añadir Comentario |
en camino a la singularidad...
©2005-2024 josé c. elías
todos los derechos reservados
como compartir los artículos de eliax
Seguir a @eliax
Esperando la segunda parte... :-)