La polémica de Adobe Flash

Desde hace meses, en concreto, desde que se anunció el iPad de Apple, hay muchas discusiones en la red sobre la tecnología Flash de Adobe. La no inclusión por parte de Apple de dicha tecnología ha suscitado muchas críticas contra la compañía de la manzanita. Yo estoy bastante de acuerdo con Apple en este sentido, podré criticarles por lo cerrado que es su dispositivo, por su control sobre las aplicaciones, por muchas cosas, pero no por no incluir Flash. Parece que la ausencia de Flash en el iPhone / iPad es el inconveniente más grave de estos aparatos.

Hagamos memoria. Cuando nació internet se creó la World Wide Web Consortium (w3c) para definir de manera neutral e independiente todos los estándares que regirían la red de redes. Este consorcio está formado por compañías tan importantes como Microsoft, Adobe y Apple entre muchas otras. La w3c se fundó con la intención de evitar monopolios y que las tecnologías empleadas no pertenezcan a ninguna compañía. Hoy en día, gracias a eso, podemos elegir qué punto de acceso wifi comprar, ya que todos son compatibles entre ellos, pues implementan el estándar 802.11 a/b/g/n. Imaginaos la situación en la que no hay definido un estándar de redes wifi, y cada fabricante implementa su propio protocolo. Sería caótico, pues cada dispositivo que quisiera conectarse a una de esas redes wifi, tendría que implementar ese protocolo propietario en concreto, y además, pagar a esa compañía por usarlo. He usado un ejemplo que podría extenderse a cualquiera de los estándares definidos dentro de los protocolos TCP/IP, como POP3 o IMAP que se usan en el correo electrónico, ftp, http, etc…

Dentro de la pila de protocolos TCP/IP, está la capa de presentación, que define los estándares en la capa “que se ve” por así decirlo. A esta capa pertenecen HTML, CSS y JavaScript. Un navegador de internet debe implementar estas tecnologías. No se debe confundir, opensource con estándares abiertos, pues he visto que mucha gente los confunde. Adobe alegaba que eran abiertos, que el sdk de flex es opensource y que lo único que es propietario es su entorno de desarrollo de flash. Bien, tienen razón, no están mintiendo, pero están engañando a mi entender. Ser opensource no implica implementar un estándar abierto. Incluso, puedes ser cerrado e implementar un estándar abierto. El navegador Opera es un ejemplo claro de esto. Puedes implementar un estándar abierto y ser opensource, como el Firefox o Chrome. Pero, para ejecutar un programa flash, sigues necesitando un subprograma ejecutado en el navegador y que no implementa los estándares abiertos definidos por la w3c. Siempre necesitaremos a Adobe para mejorar flash, que son los que desarrollan esa tecnología. O sea, consiguen lo que no se quería, depender de un tercero. ¿De verdad queréis esto? Yo no desde luego.

Se está machacando mucho a Apple en este sentido, cuando está incitando a que se usen los estándares y eso es muy bueno. Vale, de acuerdo a que Apple seguramente no lo haga por eso, sus motivos pueden ser tener ellos el control de las aplicaciones, pero eso me da igual, el resultado es lo que me importa.

Lo que más me hace gracia de todo, es que no se critique a Microsoft. Estos, lejos de usar los estándares, se reinventan el flash, es decir, sacan su propio flash al que han llamado Silverlight. Tienen un navegador que solo llega al 13% en el acid test (el acid test es una prueba que calcula que tanto por ciento de los estándares cumple un navegador, podéis probarlo vosotros mismos) y en vez de esforzarse porque cumpla el 100%, se reinventan una tecnología. . Ahora, no me extraña nada, ya en su día se inventaron su propio JavaScript que llamaron VBScript y que por supuesto, solo funcionaba en su navegador. Señores, hay que huir de estas cosas, sino tendremos monopolios en internet y eso sí que sería muy muy malo.

Flash en su día vino a cubrir ciertas carencias que tenía html: gráficos vectoriales, animaciones y vídeo. Hoy en día, se puede hacer lo mismo con los estándares. Eso sí, con navegadores que lo implementen, como Safari, Firefox, Opera o Chrome. Si Internet Explorer no pasaba el Acid Test antes, ahora menos, ya que aún no implementa nada de html5. Esperemos que con IE9 lo haga.

Comentar también el tema de comparativas de rendimiento de Flash VS HTML. He visto algunas y dan risa. No se pueden comparar. HTML, JavaScript y CSS son especificaciones que hay que implementar, así que solo es comparable con una implementación. Bien es sabido que Chrome es el navegador más rápido, no es lo mismo comparar flash VS Internet Explorer que Flash VS Chrome. Que no os engañen.

Conclusión: usemos los estándares. No convirtamos la web en HTML + Flash. Adobe lo que debería hacer es sacar una salida estándar al compilar, no digo que desaparezca el flash, sino que su formato sea estándar: html, css y javascript.

En la próxima entrada comentaré alternativas al uso de flash, muchas de ellas funcionando incluso con HTML4.

0 comentarios:

Publicar un comentario