HTML5 como el futuro de la programación

En éste artículo intentaré acercar las diversas opiniones de este nuevo lenguaje de programación, basado en la web, y que apenas lleva con nosotros un año.

El HTML5 es la evolución del HTML4 (como es de esperar), pero aunque su base sigue siendo parecida, ahí acaban sus similitudes. Este lenguaje se presenta como firme competidor de cualquier otro lenguaje de software (sí, hace las funciones de software si es necesario), y de reproducción (lo que lo hace enemigo aférrimo de flash).

Dejando a un lado la guerra de Adobe (propietario de flash) con Apple (que ya hace tiempo eliminó de sus máquinas este lenguaje por parecerle anticuado y débil), la verdad es que HTML5 es más potente, y permite interaccionar con las herramientas a un nivel nunca antes visto, como bien podemos observar en CraftyMind, página donde nos enseñan dos ejemplos de las posibilidades de las etiquetcas canvas y video (destruir la pantalla de un vídeo mientras lo vemos, o girarlo mientras se reproduce).

Y lo mejor de todo es que una vez el W3C lo valide por completo, tendremos una plataforma infinitamente más versátil que las actuales, y para colmo mucho más rápida que flash. Sin olvidar que entre sus cualidades, podemos encontrar una alternativa a la situación actual de las demos, me explico:

-Es normal, antes de bajarse alguna aplicación de pago, que el desarrollador ponga a nuestra disposición una prueba para que el cliente compruebe si le interesa y entonces la compre. Hasta ahora, eso significaba bajarse parte de la aplicación, que no deja de ser más espacio ocupado, y luego con la molestia de tener que borrarlo. HTML5 permitiría probar todo con solo tener un navegador en tu dispositivo, hasta el punto que el espacio del disco duro o la tarjeta solo sería usado para datos, y no para albergar los programas.

Por ello, quería citaros algunas de las ventajas (o cualidades mejor dicho), de esta actualización, que aún está en fase de desarrollo, y que por tanto, cualquiera puede aportar su granito de arena:

Imágenes

Hasta ahora las imágenes no permitían edición desde el entorno de programación web. Podias modificarle mediante diferentes atributos el tamaño, la distribución, pero editarlas como tal no. HTML5 llega para hacernos la vida más fácil, permitiendo renderizar imágenes, y por tanto modificarlas a nuestro antojo. Ya no sería necesario Flash, o javaScript, para crear un array de diapositivas, ya que el mismo lenguaje lo contempla.

Vídeos

Actualmente, para poder ver vídeos en la web, debes tener en tu ordenador instalado codecs y un programa que te permita su visualización (de base los ordenadores ya vienen con ellos, y buena parte de los móviles y tablets también). HTML5 estandariza la visualización de contenido multimedia, por lo que para visualizarlo, únicamente deberías tener un navegador con soporte de HTML5.

Trabajar offline

Que HTML5 sea un lenguaje enfocado a la web no significa que para trabajar con él debamos estar conectados. Con HTML5 podrías guardar tus trabajos en una especie de nube offline, y sincronizarla cuando tengas conexión, si lo crees oportuno. Por tanto, haría las veces de programas.

Prioridad a la hora de abrir páginas

La nueva actualización cuenta con la posibilidad de marcar contenido de primer orden y secundario, siendo el primero el que se descarga lo antes posible (para que el usuario no tenga que esperar a leer una página, por ejemplo), y el segundo que haga lo propio cuando el primero ya está visible. Con esto, se consigue reducir notablemente el tiempo de espera en web.

El lenguaje del futuro

Es temprano para decirlo, pero sí es verdad que tiene toda la pinta. La idea de la computación en la nube es su gran atractivo, ya que en un extremo, podría significar la desaparición de los SO como tal, así como de las aplicaciones, en pos de un contenido accesible mediante web y totalmente estandarizado. Por ello, no se necesitaría una gran potencia en las computadoras, ya que los grandes procesos los llevaría a cabo servidores externos, y nuestros terminales, con mejora de velocidad y rendimiento.