Como lo leéis: Google podría plantearse o estar desarrollando activamente una versión de las APIs y demás software interno de Android en Swift. Este medio rumor/noticia ha saltado a la palestra tras conocerse que Google, Facebook y Uber habrían entrado en conversaciones para hablar sobre este asunto en diciembre.
Swift es el lenguaje de programación que Apple presentó hace dos años en el WWDC de junio de 2014 y que el año pasado presentó como lenguaje open source, lo que quiere decir que cualquiera puede usar la implementación de Apple y adaptarla a otros sistemas. El desarrollador de un lenguaje ostenta la autoridad en el desarrollo de ese lenguaje, y eso significa que Apple es quien llevará la voz cantante en las futuras versiones del lenguaje, que ya alcanza la versión 2.2 en estos momentos. Todo esto tiene algunas implicaciones que quiero comentar a continuación.
Primeramente, si Google adopta Swift como lenguaje básico para el desarrollo en Android, supondrá varias cosas: los programadores de iOS pueden verse invitados a desarrollar en Android y viceversa, los desarrolladores Android se podrán ver invitados (los que se adapten, claro) a trabajar en iOS. Es un gana-gana tanto para Apple como para Google. Pero esto tiene otras consecuencias que pueden ser importantes. Como he dicho antes, Apple ostenta la autoridad del desarrollo del lenguaje, y por tanto, de como ese lenguaje y sus librerías evolucionarán a lo largo de los años. Google deberá ir a rebufo, aunque como sabemos y ya hizo con Java, también sabe saltarse las normas no escritas cuando quiere de forma bastante impune (que le está llevando al actual ciclo de pleitos con Oracle por los cambios en Java). Swift, al ser open source, no supondría problemas legales para Google, pero como Apple marcará la agenda de cambios, esos cambios deberán ser implementados por Google si quiere que los desarrolladores trabajen en su plataforma. Esto nos puede llevar a la situación insólita de que Google se pliegue a la autoridad de Apple en el desarrollo del propio sistema Android, creándose una dependencia tecnológico-cultural de uno respecto a otro. Esto ya pasó otras veces en otros contextos, como con Perl y PHP: PHP nació como una extensión de Perl pero lo fue fagocitando hasta que prácticamente desapareció como lenguaje y PHP quedó como líder indiscutible en servidores. Lo mismo pasó en la relación Javascript–VBScript, hasta que Microsoft claudicó eligiendo definitivamente Javascript como lenguaje web universal también en su navegador. En este caso Java quedaría prácticamente eliminado de la contienda y como lenguaje, quedaría relegado a algunos desarrollos de servidor y poco más.
Y hablando de Microsoft, esto tampoco les deja en muy buen lugar. Actualmente su estrategia en el entorno móvil es nula. Inexistente. Existe el rumor de que el año que viene podrían lanzar un móvil «Surface» para intentar levantar cabeza (lo que particularmente me parece un error, pero todo depende de como sea implementado). Pero todos esos esfuerzos pueden irse al garete sin capacidad de lucha porque si para entonces, los desarrolladores Android se han pasado a Swift, la hegemonía del lenguaje será total y absoluta, y si Swift no es incluido como lenguaje de desarrollo en la plataforma de Microsoft, el nuevo «Surface» podría morir antes de nacer siquiera. ¿Por qué? Porque si los desarrolladores tenemos la capacidad de usar un único lenguaje en todas las plataformas, no nos plantearemos usar otros entornos si los dos sistemas más populares, iOS y Android, usan el mismo. La victoria en la guerra de los móviles de Apple será total y absoluta. Esto me recuerda a esa frase de cómic «toda resistencia es fútil«. El tiempo lo dirá, evidentemente esto son especulaciones basadas en este rumor, pero si a lo largo del año Google anuncia algo a este respecto, podríamos estar abriendo una nueva era para los programadores llena de posibilidades.
PD: Parece que Facebook ya está trabajando activamente de forma interna en integrar Swift en sus desarrollos, y en el caso de Uber no se sabe nada, pero según el rumor, Google ya estaría planificando una estrategia de desarrollo a largo plazo con el lenguaje de Apple.
Vía: MacRumors