Home » Opinión » La calidad del software de Apple baja… o no
apple-software-quality-decline

La calidad del software de Apple baja… o no

Llevo días leyendo sobre una tendencia periodística contra Apple en que se pone en tela de juicio la calidad de su software. Y no me refiero ya al sistema operativo sino en este caso se habla de las aplicaciones que forman parte del mismo, como Mail, Notas, Photos, Vídeos, la Cámara, Mapas… lo que serían las aplicaciones por defecto que tenemos incluidas en nuestro sistema, tanto iOS como OS X. Y a estas les añadiríamos también las suites de iLife o iWork.

Pero, en mi opinión, estas opiniones están sesgadas porque estos analistas / periodistas que lo comentan, no conocen la profunda transformación que está sufriendo Apple a nivel de desarrollo y desconocen una serie de detalles que vaticinan que se aproxima un gran cambio. El más grande que ha dado Apple en su historia (o de los más grandes).

[pullquote align=”full” cite=”No seré yo quien diga que la calidad del software de Apple no ha bajado, porque es una realidad constatable. Pero esa realidad tiene varias formas de ser interpretada hasta dar con una conclusión más justa.” link=”” color=”black” class=”” size=”18″][/pullquote]

La primera lanza vino de parte de Walt Mossberg, el analista que fue amigo de Steve Jobs y que ahora escribe para The Verge. Este indicaba en un artículo:

En el último par de años, más o menos, he notado una gradual degradación en la calidad y fiabilidad de las apps del núcleo de Apple, tanto en la plataforma móvil iOS como en la del Mac, OS X. Es como si el gigante tecnológico mirara para otro sitio cuando se refiere al núcleo de software de sus productos, mientras persiguen nuevos grandes sueños como relojes inteligentes o coches.

Tras esto, otros como Marco Arment, desarrollador de Instapaper u Overcast (entre otros), también se hacía eco en su blog de una opinión parecida.

El hardware de Apple hoy día es fantástico – nunca ha sido mejor. Pero la calidad del software ha caído demasiado en los últimos años y estoy muy preocupado por su futuro. Estoy tecleando esto desde un ordenador cuya existencia nunca pensé que pudiera ser posible, porque corre un sistema lleno de embarazosos fallos y pasos atrás fundamentales. Hace solo unos años, podíamos divertirnos a costa de los usuarios de Windows por estos mismos fallos en sus sistemas inferiores, pero ya no podemos hablar más del tema.

Así está la situación, y ya no solo en referencia a las aplicaciones de núcleo si no al propio sistema que tiene más fallos de los que obviamente nos gustarían, aunque no estamos viendo la situación en la perspectiva y conocimiento necesario para valorarlo en su justa medida. No seré yo quien diga que la calidad de dicho software no ha bajado, porque es una realidad constatable. Pero la realidad tiene varias formas de ser interpretada hasta dar con una conclusión más justa.

Haciendo historia: iOS y OS X en fase beta desde 2013

Apple tiene ahora mismo un problema de calidad, pero este ya está en proceso de ser solucionado y necesita tiempo y trabajo. Aunque este proceso tiene un enemigo: el marketing. Que empuja mucho y que ha provocado que partiendo, aproximadamente, del lanzamiento de iOS 7 y OS X Mavericks en 2013 estemos en una situación de software en estado beta constante.

Digamos que el primer gran problema partió antes de iOS 7: con los mapas. Google había sido socio estratégico de Apple desde el lanzamiento del primer iPhone y Google Maps, los mapas de todos los dispositivos iOS. Pero eso tenía que cambiar por una sencilla razón: el coste. Era más barato para Cupertino crear su propia plataforma con otros socios estratégicos que seguir con Google quien, por esas fechas, comenzaba a poner limitaciones y tarifas más estrictas a su plataforma.

Por lo tanto, Apple necesitaba crear sus propios mapas y para ello llegó a un acuerdo con tres proveedores: TomTom para la información de navegación, OpenStreetMaps para la cartografía y Yelp como información de puntos de interés. El caos surgió al unir estos tres servicios y darse cuenta que la precisión de los datos no era la deseada y que no casaban como deberían. Y se organizó un caos importante hasta que se fueron reparando los casos y ajustando los datos. El fallo más gordo que Apple ha tenido nunca por las prisas, a nivel de software. La mala prensa generada le ha pasado factura a Apple por mucho tiempo.

Además otro factor: el skeumorfismo (el lenguaje de diseño que crea elementos similares a la vida real en los diseños de interfaces, base del iPhone desde sus inicios). El diseño plano (o flat design) empezaba a ser más que una tendencia e iOS necesitaba renovar su imagen. Así que tras la salida de Scott Forstall de Apple (Vicepresidente Senior del software de iOS) y la entrada de Craig Federighi (Vicepresidente Senior del software de Mac) se pusieron manos a la obra, Jony Ive mediante, para insuflar nuevo aire a la interfaz de iOS.

iOS 6 vs. iOS 7

Pero iOS 7 y la reconstrucción de la interfaz era una tarea demasiado grande que pasó factura a Apple nuevamente porque ahí fue el momento en que comenzó a abarcar (a nivel de desarrollo) más de lo que era capaz de gestionar con los ínfimos tiempos que el voraz marketing permite. Un marketing que obliga a ciclos anuales de renovación de smartphones y tablets y que bianualmente obliga a cambiar incluso el diseño de los dispositivos. Es una locura que ni siquiera Apple, con todo lo que intenta abarcar, es capaz de asimilar. Y esto, obviamente, tiene consecuencias.

Desde 2013 Apple ha creado infinidad de nuevas tecnologías a nivel de desarrollo como SpriteKit (para creación de juegos 2D), Core Bluetooth, Text Kit, HomeKit, CloudKit, HealthKit, SceneKit, Metal… enormes mejoras en los elementos de desarrollo ya existentes, interfaces adaptativas… Pero no acaba ahí la cosa porque también se ha creado watchOS o tvOS, dos nuevos y completos sistemas más toda la infraestructura de desarrollo que tienen por detrás. Y sin olvidarnos del increíble paso de App Thinning o que Xcode 7 sea una suerte de unión entre IDE de desarrollo, de diseño, de creación de videojuegos 2D y 3D, de depuración, etc.

Como desarrolladores, si echamos la vista atrás y vemos todo lo que ha hecho Apple a ese nivel, tenemos que reconocer que la cantidad de trabajo y la calidad del mismo es enorme. Y eso hay que tenerlo en cuenta para entender las cosas.

Porque además no podemos olvidar el esfuerzo invertido por los desarrolladores de apps profesionales: Final Cut Pro X, Motion 5 o Compressor han tenido una evolución permanente desde su lanzamiento y, aunque no les guste a algunos, se ha ganado por derecho propio su hueco entre las soluciones profesionales de edición. Logic Pro X es un software DAW de una calidad excepcional y usado por gran cantidad de músicos, compositores y profesionales del sonido. Y además, iMovie se transformó y GarageBand pasó a ser una suerte de Logic Mini con funciones y capacidades más que suficientes para músicos amateurs.

Así que… pensar que Apple ha descuidado su software no parece una apreciación muy acertada. Lo correcto sería pensar que Apple está desbordada, abarcando más de lo que debería. Pero seguimos razonando motivos.

Swift, la revolución

Apple empezó un camino de re-invención de su propia plataforma de software en el año 2010, cuando un equipo de ingenieros comandados por Chris Lattner, creador principal del proyecto LLVM o del compilador clang (actual base del desarrollo no solo para Apple si no para otros grandes como Microsoft, Google, ARM o Intel) inició un nuevo e ilusionante proyecto para un nuevo lenguaje de programación: Swift. Y en 2013, dicho equipo fichó a David Abrahams, uno de los principales ingenieros que colaboraron en el desarrollo de C++ durante 12 años y responsable de grandes características de su núcleo. En 2014, Swift vio la luz (sin que nadie sospechara que ese proyecto llevaba 4 años gestándose y que tenía detrás a algunos de los ingenieros más preparados del mundo) y desde entonces no ha hecho más que evolucionar.

[pullquote align=”full” cite=”En iOS 9.2 la única app del núcleo de iOS hecha en Swift es la calculadora. Apple tiene que re-factorizar todo su software de núcleo y ese, y no otro, es el motivo por el que las apps del núcleo de OS X o iOS parecen descuidadas” link=”” color=”black” class=”” size=”18″][/pullquote]

Swift es el futuro, pero ahora damos un dato ilustrativo: en iOS 9.2 la única app del núcleo de iOS hecha en Swift es la calculadora. El resto es todo Objective-C: código antiguo. ¿En casa de herrero cuchara de palo? No del todo. Apple tiene que dar un paso muy importante y tiene que re-factorizar todo su software de núcleo en Swift usando los nuevos flujos y técnicas de desarrollo que el lenguaje permite y que son mucho más eficientes y seguros que los que brinda Objective-C. No estamos hablando de convertir las apps: eso no sirve porque usas los mismos flujos en otro lenguaje. Hablamos de re-factorizar: escribir el código desde 0 para dar solución a un diseño ya realizado.

Y ese, y no otro, es el motivo por el que las apps del núcleo de OS X o iOS parecen descuidadas y plagadas de problemas. Porque por un lado se está mantenimiento algo que ya de por sí es obsoleto para que subsista, mientras Swift consigue llegar al estado idóneo que permita reconstruir el núcleo mismo de los sistemas llevando sus posibilidades mucho más allá.

iOS X

Porque iOS X (la versión 10) promete ser mucho más. Swift 3 tiene como objetivo cambiar la propia especificación de Cocoa para sacar el máximo provecho del lenguaje, pretende integrar ABI dentro del núcleo de las apps para optimizar su modo de actualización y como último objetivo, pretende darle la vuelta a la situación actual y que Objective-C sea compatible con Swift (y no como ahora que es al revés). Y eso supone re-factorizar el mismo Cocoa, creando uno nuevo cuya especificación sea compatible pero más potente, además de Universal para TODOS los sistemas operativos de Apple: iOS, OS X, watchOS y tvOS.

Un nuevo Cocoa X que integre, en el mismo estilo de las aplicaciones Windows Universal, una forma unificada de crear apps que funcionen, con el mismo código y diseño, en todos los sistemas operativos de Apple. Un Cocoa X que sea la base (en Swift) de toda una nueva generación de apps profesionales (tanto de núcleo de sistema como accesorias) que lleven la productividad más allá. Para que Mail sea una nueva app creada desde 0 y no la misma que tuvo el primer iPhone pero con añadidos y cambios. Para que todas las core apps y las stock apps que incluye iOS se creen desde 0, así como la suite iWork, haciendo todo el software Universal y con las mismas posibilidades y funciones en todos los sistemas.

Lo decía José Mendiola en un artículo de Applesfera donde hablaba del problema del software que estamos tratando aquí, en lo que llamaba la convergencia. Al hecho que estemos acostumbrados a que la app de iOS sea una versión reducida en posibilidades y funcionalidad con respecto a la de OS X. Pero eso dejará de pasar, porque el destino que ahora pasa factura con un aparente inmovilismo es una falsa imagen. Apple se dirige a la refundación de toda su infraestructura base de desarrollo, algo más ambicioso de lo nunca ha hecho. Y ese refundación le permitirá crear apps profesionales a la altura que permitan una experiencia unificada entre sistemas: porque Mail, Fotos, iWork, iMovie… todo el software va a ser exactamente el mismo en todas las plataformas. Una experiencia unificada.

Conclusiones

Lo único que hay que hacer es esperar. Esperar porque el trabajo que tiene Apple por delante no es fácil, como tampoco lo es tener en su equipo ingenieros con los suficientes conocimientos como para sacar adelante algo tan ambicioso. Y si alguien en Apple lee esto, estaría encantado de participar en ese proyecto (que conste).

Así que sí, el software de Apple ha reducido su calidad (es obvio) pero hay que ver todas las circunstancias para hacernos una idea más clara de por qué y qué nos espera en el futuro a ese respecto. Mientras, nosotros seguiremos trabajando con lo que tenemos a día de hoy mientras soñamos con el día en que todas estas novedades por fin lleguen. Un saludo a todos y Good Apple Coding.

Imagen de portada: Forbes Tech

Acerca de Julio César Fernández

Analista, consultor y periodista tecnológico, desarrollador, empresario, productor audiovisual, actor de doblaje e ingeniero de vídeo y audio.

Otras recomendaciones

I Congreso Industria Conectada 4.0

No hay falta de talento digital, hay falta de inversión en formación de calidad

En este artículo de opinión, Julio César Fernández, busca y analiza los motivos por los que (según los altos responsables de algunas de las empresas tecnológicas más importantes de España) en España hay carencia de talento digital. Expone por qué esa falta deriva de una carencia en la inversión en formación de calidad que permita a los equipos ser competitivos y estar preparados para la velocidad a la que se mueve la tecnología.

  • César Palma

    Comparto plenamente tu pensar y sentir. Vienen años en los que veremos los frutos de las semillas que se están sembrando con Swift y la transformación completa a nivel de código.

    • Gracias por tu opinión César. Efectivamente, vienen años importantes que tal vez pasen más desapercibidos por los usuarios pero que serán muy importantes.

  • Orasbae

    Viva la objetividad y el sentido común!!
    No me cansaré de decirlo, es siempre un “gustazo” leer tus artículos.

    • Muchas gracias Oskar. Me alegra que te haya gustado el artículo. Seguiré en la brecha 🙂

  • barechu

    menos pajas mentales con relojes y más ponerse a currar en el software. de momento ya he “switcheao” a maicrosoft, que cosas, hace lo mismo y más baratico.