Internet y el mundo de la tecnología en general está lleno de épicas batallas:
entre navegadores (Firefox vs. Chrome vs. Internet Explorer vs. Opera
vs. Safari), entre sistemas operativos de escritorio (Windows vs. Linux
vs. Mac), móviles (Android vs. iOS vs. Windows Phone), entre redes
sociales (Facebook vs. Google+) e infinitas más, pero hay una en particular que ha comenzado no hace mucho y se hace cada vez más fuerte; tiene a Flash y HTML5 como protagonistas, y el terreno de los juegos como escenario principal.
Hasta hace poco Flash no tenía oposición, pero ahora mismo, no solo tiene oponentes muy fuertes sino que además encontró en HTML5 un duro rival,
que poco a poco, a medida en que los principales navegadores soportan
más de sus funcionalidades, le va restando terreno y lo amenaza con
arrebatar su corona.
A pesar de que muchos juegos están desarrollados en Flash, varios de los más populares del momento, como es el caso de Angry Birds, tienen también versiones en HTML5, que nada tienen que envidiar a su contra parte, y grandes como Zynga, principal socio de Facebook, ha desarrollado versiones HTML5 de tres de sus juegos más importantes.
Del
lado de los móviles, las cosas tampoco pintan bien para Flash. La
recientemente liberada versión de Android, Ice Cream Sandwich, será la última en brindarle soporte y desde Microsoft anunciaron que su próximo sistema operativo, Windows 8, en su versión para tablets, tampoco admitirá Flash.
Aunque
se trata de una lucha particular entre dos maneras distintas de hacer
juegos; los navegadores, sistemas operativos, así como las redes
sociales, se encuentran muy involucrados y es necesario evaluar el
conjunto completo para tener una visión clara de la realidad actual.
Comencemos:
- Cantidad de juegos: Tenemos más de 100.000 juegos desarrollados en Flash, contra unos pocos cientos en HTML5. No hay mucho que discutir aquí. Punto para Flash.
- Compatibilidad: Flash es soportado por el 99.9% de los navegadores modernos (+2 Billones de usuarios), por su parte, HTML5 solo es soportado por el 40% de ellos (+800 Millones de usuarios). Una diferencia abismal si vemos el número de usuarios directamente. Punto para Flash.
- Método de distribución: Flash solo necesita de un archivo swf. Su contra parte requiere de múltiples archivos
(js, css, html, etc.). Discutible si lo analizamos desde otra
perspectiva, pero como método de distribución no hay nada que decir.
Punto para Flash.
- Tecnologías necesarias: En Flash, el soporte para juegos 3D es limitado
y se requiere tener instalado un complemento en el navegador para poder
disfrutarlo, algo muy criticado. Por su lado, en HTML5 el soporte para 3D es extremadamente limitado, también hay limitaciones para hacer uso del audio y es 100% dependiente del navegador. Un empate aquí, sería justo.
- Uso de CPU en Mac: Safari es muchísimo más eficiente con juegos programados en HTML5
que con los desarrollados en Flash. Prácticamente no hay diferencias en
Chrome, y Firefox es apenas un poco menos eficiente que Safari. En
números, HTML5 consume al rededor de un 12,39% de CPU mientras que Flash
consume cerca del 35%, con una mejoría leve si hablamos de la versión
10.1. Aquí HTML5 se gana un punto.
- Uso de CPU en Windows:
Aquí las cosas son muy distintas. Safari solo consume 7,43% de CPU
cuando se trata de Flash 10.1, y es incapaz de reproducir vídeos HTML5.
Google Chrome es 58% más eficiente cuando usa Flash, números similares para Firefox. Nuevamente, punto para Flash.
- Seguridad:
Un aspecto muy importante, y donde nuevamente Flash tiene la ventaja.
Si bien en Internet nada está a salvo, un archivo SFW puede ser
protegido a través de técnicas de encriptación y ofuscación, dándole así
dos capas de seguridad. Por su parte, HTML5 no cuenta
con mecanismos de seguridad (hasta el momento) y alterar una aplicación
construida con este lenguaje puede ser relativamente sencillo. El punto va para Flash.
- Juegos en Facebook:
Como lo mencionaba al principio, Facebook le debe gran parte de su
éxito a los juegos y hay una enorme cantidad de ellos dentro de la red
social. Tomando como referencia los 10 más populares, solo 2 de ellos están escritos en HTML5, y mirando fuera del top, casi la totalidad de juegos fueron hechos en Flash. Un punto fácil para los de Adobe.
- Tiempo de vida: Considerando que Flash ha tenido más tiempo de desarrollo (octubre, 1998) y que eso representa una clara ventaja frente a un lenguaje mucho más joven como HTML5 (junio, 2004), restaré un punto al anciano y se lo daré al joven prometedor. De esta forma -y de cualquier otra-, Flash es el claro vencedor.
En mi opinión, aunque mantenga una ventaja respetable, Flash tiene sus días contados, pero ¿cuantos le quedan?.
Todo dependerá de la velocidad con la que se adopten los cambios
propuestos por HTML5 y su completo establecimiento como estándar, que se
estima, sea de un 100% para el año 2020.