Tranquilos, no me he vuelto loco. Muchos pensaréis que es imposible que Android, con más del 70 por ciento del mercado de los smartphones copado, pueda alguna vez perder esa posición privilegiada. Pero es que el "Think Different" no está en el sistema operativo móvil de Google, si no en aquellos que usan HTML5 y sus estándares abiertos.
Ubuntu es el añadido más reciente en la batalla de nuevos sistemas operativos, y todos tienen en común su desarrollo con soporte de aplicaciones escritas en HTML5. Sí, esa especificación multiplataforma, que abraza los estándares abiertos y que tanto nos gusta a los desarrolladores. ¿Por qué? Pues simplemente porque no tenemos que desarrollar mil versiones distintas para cada una de las plataformas existentes. También se puede resumir en una palabra: interoperabilidad.
Vale que pueda haber diversas herramientas que automaticen la exportación entre sistemas, pero cualquiera que las haya usado os dirá que siempre se necesita realizar ligeras modificaciones. Y eso lleva tiempo y dedicación. Las aplicaciones HTML5 están escritas en JavaScript, y lo único que se necesita es tener muy claro el código de buenas prácticas para programar en ese lenguaje. Vamos, lo mismo que si programáramos en cualquier otro lenguaje. Pero no, aunque existe la falsa creencia que son mucho más lenta que las aplicaciones nativas, es totalmente falso. Solo depende de saber usar el lenguaje.
Por un lado tenemos Java que, pese a que penséis que es que las aplicaciones van lentas porque hay malos programadores, que no os engañen: Java consume muchos más recursos que lo que consumen otros lenguajes. Podréis pensar que con lo fácil que es programar en Java será el lenguaje que más se use a la hora de hacer aplicaciones empresariales. Error. Ese honor lo siguen teniendo C y sus distintas versiones, pero que necesitan de buenos programadores ya que no está hecho a prueba de tontos como ocurre con Java. Y obviamente es porque es un lenguaje de programación más rápido. La suma estimada de programadores de C, C++, C# y Objective-C supera el 56 por ciento, mientras que Java sólo representa un 17 por ciento.
Sin embargo, JavaScript (que nada tiene que ver con Java, no os dejéis engañar por el nombre) sólo tiene entre un 1 y 2 por ciento de programadores en cualquier época del año. Es poco, pero es un lenguaje de sobra conocido por aquellos que usen lenguajes de script como PHP, Ruby, Perl y aquellos que trabajan con HTML (diseñando frontales de páginas web).
Después de esta introducción os estaréis preguntando, ¿y tanta farfolla para qué? Pues simplemente para evidenciar que Ubuntu no lo va a tener fácil para introducirse en un mercado, el de los sistemas operativos para móviles, que está bastante saturado o lo va a estar. ¿Estamos seguro de estos? Pues yo no.
Ubuntu, Firefox OS, Tizen y Sailfish OS son sistemas operativos que corren aplicaciones hechas en HTML5. ¿Lo bueno de ellas? Que no habrá que hacer ninguna adaptación (o muy poquitas) para llevarlas a cada uno de ellos. El manejo de cámaras y hardware diverso del móvil se realizan a través de estándares abiertos del W3C, así que se manejan por igual independientemente del sistema operativo que use HTML5. Es una bendición para los desarrolladores, sin lugar a dudas. Pero su cuota de mercado, de momento, se estima que va a ser baja. Y Ubuntu, que ni siquiera tiene una operadora ni un fabricante de móviles para apoyarle, lo va a tener especialmente difícil. Firefox OS tiene a Telefónica, Tizen a Vodafone, y Sailfish tiene a DNA (una operadora finesa).
Vale, se programan en JavaScript las aplicaciones. ¿Sólo en eso? No. También permiten desarrollar aplicaciones en C++. ¿Ya váis cogiendo la idea? C++ es el lenguaje preferido para desarrollar por muchas empresas, y es una extensión de C. Esto ya lo convierte en un lenguaje de programación usado por más programadores que Java. ¿Beneficios extra? Por ejemplo, que BlackBerry 10 también usa aplicaciones HTML5 (con WebWorks), y sobre todo C++ (aunque puede también correr aplicaciones de Android 2.3).
Por eso el futuro de los sistemas operativos móviles es HTML5. JavaScript. Los desarrolladores no nos volvemos locos portando de un lado para otro, y eso es muy bueno para nosotros, que podemos dedicar más tiempo a mejorar nuestras aplicaciones en vez de en pegarnos con adaptaciones a varias plataformas y corregir los bugs que vayan surgiendo en los diferentes ports.
Ubuntu lo va a tener difícil por no tener apoyo de nadie. De momento. Canonical ha tardado en introducirse en el mercado móvil, pero si consigue realizar una buena campaña publicitaria, igual podría todavía firmar algún acuerdo con alguna de las grandes operadoras y fabricantes de móviles. Pero por otro lado se beneficia de lo que a todos nos gusta: aplicaciones multiplataforma. Nada más salir, dispondrá de Gmail, Twitter, Facebok, etc., mediante sus versiones Web que, casi sin esfuerzo, podrán crear como aplicaciones independientes del navegador. Perfecto para desarrolladores, y perfecto para los usuarios.
Los usuarios sólo tendremos que preguntarnos, ¿qué interfaz me gusta más? Y se basará todo en una cuestión de gustos y de opciones de personalización.