¿Apple rompe con su pasado?
Si miramos la cúpula de Apple de hoy, no queda nadie (a excepción de Tim Cook) de los tiempos de Steve Jobs. Hasta Scott Forstall, mano derecha de Jobs durante años, ha desaparecido y parece que la tierra se lo hubiese tragado. Desde entonces, ha habido señales claras de un “cambio de régimen” y un deseo de romper con el pasado y crear una nueva Apple.
Ya lo dice la sabiduría popular: “cuando el gato no está, los ratones hacen fiesta”. Así que hablemos primero de los gatos. La nomenclatura estándar de las versiones de OSX desde que Steve Jobs volvió a Apple han sido los felinos (Tiger, Leopard, Lion, Mountain Lion), hasta hace poco: ahora son localidades de California (Mavericks y Yosemite). Fallecido el gato, se acabaron los felinos.
¿Desaparecidos?
Otro ícono del pasado que ha caído recientemente ha sido la letra “i”. Hasta hace poco símbolo de todos los productos más exitosos lanzados por el equipo de Jobs, ha desaparecido en los últimos lanzamientos. El sistema de pago no es el iPay, sino el ApplePay. El tan esperado reloj, resulta que no es el iWatch, sino el AppleWatch.
Ahora hasta a Objective-C, el soporte de todo el software creado para las plataformas Apple y NeXT en las últimas décadas, le sale un rival de la “nueva Apple”.
Es evidente que el nuevo equipo no quiere de ninguna forma quedarse a la sombra de Jobs y desea seguir un camino propio. Los últimos resultados financieros parecen indicar que saben lo que hacen. Sólo el tiempo, y el mercado, dirá quien tenía razón, si la mano muerta de Jobs o la voluntad viva de Cook (premio friki de oro al que pille esta referencia de ciencia ficción.
Nuevos mercados y el matrimonio con IBM
Cuando nació Apple, lo hizo claramente orientada al usuario final. En el mercado corporativo, siempre estuvo más fuera de lugar que un pingüino en un ascensor. Hasta ahora. Poco a poco el iPad se fue haciendo con un hueco cada vez mayor en las grandes empresas. Esto hizo que Apple tuviese que hacer frente a lo que es su “última frontera”: las grandes empresas. Para entrar en ese mercado, llegó al matrimonio de conveniencia perfecto con IBM.
Aquí es donde también entra Swift. Por sus características, es particularmente atractivo para grandes empresas que hoy usan Java, como IBM y muchos de sus clientes y “partners”. Swift parece un lenguaje diseñado para proporcionar una alternativa moderna a Java para desarrollo iOS, algo en lo que IBM está invirtiendo fuertemente.
¿Quién usará Swift?
La ventaja de no estar en la punta de lanza de la tecnología es que puedes prever el futuro:basta con darse un paseo por el Silicon Valley y ver lo que está ocurriendo por allí. Es lo que pasará en Europa y LATAM en unos años.
Pues bien, en EEUU, se está dando un enorme interés por Swift en las grandes empresas, que desean desarrollar Apps Corporativas (otro nicho casi sin explorar). Es previsible que lo mismo ocurra en otros lugares.
Un lenguaje estático como Swift dificulta que errores triviales lleguen hasta producción y aunque dificulta el hacer preciosismos, esa no es la ventaja competitiva de un equipo de una gran empresa. Su valor no está en las virguerías de unos pocos “desarrolladores 10x”, sino en sus números y en la fuerza bruta con la que aplasta a su competencia.
Para una startup, que cuenta con un equipo menor de programadores y que tendrán que adaptar y modificar el producto n veces, un lenguaje dinámico, como Objective-C, es una mejor herramienta.
Por lo tanto, entre ambos lenguajes Apple podrá dar una solución óptima a los equipos de desarrollo más habituales del mercado.
¿Debo aprender Swift?
Si deseas desarrollar para iOS o ya lo haces, la respuesta es claramente sí. Apple está poniendo toda la carne en el asador con Swift y no podremos ignorarlo. Si ya sabes Objective-C, debes aprender Swift. La demanda va a llegar y tienes una oportunidad de oro para ir posicionándote como experto.
Por otro lado, si no has desarrollado nunca para iOS, el camino más corto a la AppStore sigue siendo Objective C. Es un lenguaje maduro y muy pequeño, lo que hace que su proceso de aprendizaje sea más rápido y efectivo. Las herramientas para Swift aun son muy inestables y el propio lenguaje también lo es, cambiando de forma sustancial a cada versión. Lo que sumado a su complejidad natural, puede hacer la travesía del desierto larga y frustrante para los que están empezando.
El aprender a desarrollar Apps exclusivamente con Swift, en mi opinión, no será factible ni sensato hasta el año que viene o, como mínimo, hasta la próxima WWDC, donde esperamos ser posible ver como madura Swift.
¿Moverá ficha Google?
Es muy sorprendente que algo tan característico del siglo XXI como son las Apps, se siga desarrollando con lenguajes firmemente anclados en el siglo XX: Objective-C y Java.
Apple ya ha lanzado su órdago: un nuevo lenguaje propietario, que a parte de traer una alternativa más moderna de desarrollo, ayuda a cerrar el cerco alrededor de los desarrolladores de su plataforma. Al tener que aprender un nuevo lenguaje, y no uno fácil precisamente, queda menos tiempo para “pasarse al enemigo”.
Google también tiene su dinosaurio amaestrado: Java. ¿Se quedará con un lenguaje anticuado para uno de sus productos estratégicos como Android? Me temo que no.
Me apuesto caña y pincho de tortilla que como mucho en 2 años, un Google IO anunciará la merecida jubilación de Java, el agradecimiento por los servicios prestados y la llegada de un nuevo lenguaje para el desarrollo Android. ¿Rust, Go, Scala, Groovy? Pronto lo sabremos.
Aunque en este momento Objective-C continúa con la voz cantante en la práctica, ya es tiempo de familiarizarte con Swift, y en el Desarrollo de Apps Móviles Full Stack Bootcamp aprenderás ambos y con la ventaja de que Swift lo conocerás sin perder tiempo y partiendo ya de tus conocimientos adquiridos de Objective-C.