Steve Jobs presentó iCloud hace menos de dos años con la promesa —y famosa frase— ”simplemente funciona”. Una promesa de simplificar nuestra vida diaria, donde todo ocurre automáticamente: modificamos un documento aquí e instantáneamente se modifica allá. Sin complicadas configuraciones, vaya, sin ninguna configuración. De esta forma podríamos utilizar con un solo ID de Apple todos nuestros dispositivos de forma sincronizada.
Como decía, de eso hace casi dos años. ¿Y cual es la situación actual? Los consumidores demandan la integración iCloud en muchas aplicaciones –me incluyo– y los desarrolladores no lo hacen. ¿Cual es el problema? El problema está en la implementación del código. Algo que a simple vista no tiene complicación –sincronización de bases de datos– es imposible de implementar en algunos casos. Dice el desarrollador Michael Göbel:
He rescrito mi código de iCloud varias veces con la esperanza de encontrar una solución que funcionase. Apple claramente no la tiene. El problema es este: Apple ha fallado en mejorar la forma en que se sincronizan las bases de datos (“Core Data”) con iCloud, y no ha dejado de promocionar y comercializar iCloud como la solución sin problemas
Este es el problema en el que se encuentran muchos desarrolladores. iCloud no maneja de la forma que debería las bases de datos y eso finalmente significa que para el usuario final los datos desaparecen y no hay forma humana de que el contenido teóricamente sincronizado aparezca en los demás dispositivos. Eso se traduce en guías de desactivar aquí, activar allí, borrar por allá, y sin fin de trucos para que finalmente ni se sincronice y perdamos nuestro contenido, por experiencia propia.
La API de iCloud está a medias. Normalmente la documentación para desarrolladores debería cubrir todo lo que un usuario puede llegar a hacer con la aplicación, como por ejemplo salir del Apple ID y identificarse con otro distinto, pero este no es el caso, con lo que los desarrolladores se encuentran “indefensos” ya que tienen que pasar por el filtro del App Store y por los servidores de Apple, que no siempre responden como deberían. Este problema de Apple a priori es percibido por el cliente final como que es problema del desarrollador, y eso se traduce en mala fama para los desarrolladores, quejas, y reseñas de una estrella, que pueden acabar hundiendo a uno.
Realmente los desarrolladores quieren cumplir la promesa de iCloud, pero Apple parece no querer poner arreglo al tema. Aunque si lo implementas, seguramente vas a tener una recompensa en forma de por ejemplo un destacado en la Selección de Editores en el App Store o incluso en una Keynote. Una solución alternativa que han encontrado muchas aplicaciones es Dropbox, un sistema sencillo para sincronizar, pero ya es una barrera más, sobretodo para quién no tiene o no quiere una cuenta de Dropbox. Volvemos a las mismas.
La esperanza de muchos vuelve a estar puesta en el congreso mundial de desarrolladores o WWDC que se celebra cada año en San Francisco. Hay posibilidades que junto a iOS 7 todo se resuelva mágicamente, como se solía hacer en Cupertino. Ahora al probar una aplicación me lo pensaré dos veces si no viene con integración con iCloud.