Anuncio cerrado

En su último discurso de apertura en la WWDC en 2011, Steve Jobs presentó un servicio que todavía aterroriza a muchos desarrolladores. No es otro que iCloud, el saludable sucesor del problemático MobileMe. Sin embargo, incluso iCloud no está exento de errores. Y los desarrolladores se están amotinando...

Steve Jobs hizo una demostración de iCloud por primera vez en junio de 2011, el servicio se lanzó cuatro meses después y ya lleva aproximadamente un año y medio en funcionamiento. En la superficie, un servicio relativamente fluido que, en palabras del legendario visionario, "simplemente funciona" (o al menos debería), pero en el interior, un mecanismo salvaje que a menudo hace lo que quiere, y los desarrolladores no tienen ningún arma eficaz contra él.

"Todo sucede automáticamente y es muy fácil conectar tus aplicaciones al sistema de almacenamiento iCloud". Jobs dijo en ese momento. Cuando los desarrolladores recuerden sus palabras ahora, probablemente tendrán que enfadarse. “iCloud simplemente no funcionó para nosotros. Realmente dedicamos mucho tiempo a ello, pero iCloud y la sincronización de Core Data tuvieron problemas que no pudimos resolver”. él admitió el director del estudio Black Pixel, responsable, por ejemplo, del conocido lector de RSS NetNewsWire. Para ella, iCloud debería haber sido la solución ideal para la sincronización, especialmente en un momento en el que Google está a punto de cerrar su Google Reader, pero la apuesta por el servicio de Apple no funcionó.

Nada funciona

Es sorprendente que un servicio que cuenta con más de 250 millones de usuarios y, por tanto, uno de los más grandes de su tipo en el mundo, tenga tales problemas. Si echamos un vistazo rápido al asunto, se podría señalar con el dedo a los desarrolladores, pero por el momento son inocentes en esto. iCloud intenta implementar muchos de ellos en sus aplicaciones, pero sus intentos muchas veces terminan en fracaso. Porque iCloud tiene serios problemas de sincronización.

[do action=”quote”]Ni siquiera puedo contar a todos los desarrolladores que tuvieron problemas y finalmente se dieron por vencidos.[/do]

"Reescribí mi código de iCloud varias veces con la esperanza de encontrar una solución que funcionara". él escribió el desarrollador Michael Göbel. Sin embargo, no ha encontrado una solución y, por tanto, todavía no puede comercializar sus aplicaciones, o mejor dicho, la App Store. “Ni siquiera puedo contar todos los desarrolladores y empresas que tuvieron los mismos problemas que yo y finalmente se dieron por vencidos. Después de perder cientos de miles de datos de usuarios, simplemente abandonaron iCloud por completo”.

El mayor problema de Apple con iCloud es la sincronización de la base de datos (Core Data). Los otros dos tipos de datos que se pueden sincronizar a través de la nube de Apple (configuraciones y archivos) funcionan dentro de límites sin ningún problema. Sin embargo, Core Data se comporta de forma completamente impredecible. Es un marco de alto nivel que le permite sincronizar múltiples bases de datos entre dispositivos. "iCloud prometió resolver todos los problemas de sincronización de bases de datos con soporte Core Data, pero simplemente no funciona". dijo uno de los desarrolladores destacados, que no quiso ser identificado para mantener buenas relaciones con Apple.

Al mismo tiempo, Apple ignora por completo estos problemas, iCloud continúa publicitándose como una solución simple y los usuarios se la exigen a los desarrolladores. Pero a pesar de los mejores esfuerzos del desarrollador, los datos de los usuarios desaparecen sin control y los dispositivos dejan de sincronizarse. "Estos problemas suelen tardar horas en resolverse y algunos pueden dañar permanentemente sus cuentas". Otro desarrollador líder se inclina hacia Apple y agrega: "Además, AppleCare no puede resolver estos problemas con los clientes".

“Luchamos con la combinación de Core Data e iCloud todo el tiempo. Todo este sistema es impredecible y el desarrollador a menudo tiene opciones limitadas para influir en su funcionamiento". describe el estudio de desarrollo checo Arte táctil, que nos confirmó que debido a problemas persistentes abandona esta solución y trabaja por su cuenta, en la que utilizará la sincronización de archivos en lugar de la sincronización de bases de datos como tal. Entonces podrá utilizar iCloud para ello, ya que la sincronización de archivos se realiza a través de él sin problemas. Al fin y al cabo, esto también lo confirman los desarrolladores de Jumsoft: "iCloud es sin duda una gran herramienta para el almacenamiento directo de archivos". Sin embargo, Jumsoft, lamentablemente, necesita Core Data para su conocida aplicación Money, y esto es un obstáculo.

[do action="quote"]iCloud y Core Data son la peor pesadilla de todo desarrollador.[/do]

Muchos problemas también surgen de situaciones inesperadas que pueden ocurrir fácilmente, como cuando un usuario cierra sesión con una ID de Apple en su dispositivo e inicia sesión con otra. Apple no cuenta para nada con ellos. "¿Cómo resolver el problema cuando el usuario, que no ha iniciado sesión en iCloud, enciende la aplicación, luego se conecta a iCloud y vuelve a iniciar la aplicación?" preguntó con un desarrollador en los foros de Apple.

Todos los problemas con iCloud culminan en la insatisfacción de los usuarios de aplicaciones que pierden datos, mientras que los desarrolladores a menudo se limitan a mirar impotentes. "Los usuarios se quejan conmigo y valoran las aplicaciones con una estrella". el se quejó en los foros de Apple, el desarrollador Brian Arnold, quien aún no ha recibido una explicación de Apple sobre qué hacer con problemas similares, o por qué suceden. Y los foros están llenos de quejas de este tipo sobre la sincronización de iCloud.

Algunos desarrolladores ya están perdiendo la paciencia con iCloud, y no es de extrañar. "iCloud y Core Data son la peor pesadilla de todo desarrollador" dicho para The Verge desarrollador anónimo. "Es frustrante, a veces enloquecedor, y vale la pena dedicar interminables horas a solucionar el problema".

Apple guarda silencio. Él mismo evita los problemas

Quizás no sea de extrañar que los problemas de Apple con iCloud pasen como si nada. Apple prácticamente no utiliza los problemáticos Core Data en sus aplicaciones. En realidad, hay dos iCloud: uno que impulsa los servicios de Apple y otro que se ofrece a los desarrolladores. Las aplicaciones y servicios como iMessage, Mail, copia de seguridad de iCloud, iTunes, Photo Stream y otros se basan en una tecnología completamente diferente a la que está disponible para desarrolladores externos. Es decir, aquel con el que hay constantes problemas. Las aplicaciones del paquete iWork (Keynote, Pages, Numbers) utilizan la misma API que las aplicaciones de terceros, pero sólo para una sincronización de documentos mucho más sencilla, algo que Apple se esfuerza mucho en hacer que funcione. Cuando permiten que iCloud y Core Data entren en su aplicación en Cupertino, no son mejores en términos de confiabilidad que los desarrolladores externos. La aplicación Trailers, que utiliza Core Data para la sincronización, habla por sí sola y los usuarios pierden regularmente algunos registros.

Sin embargo, con los Trailers, que no son tan populares, estos problemas son relativamente fáciles de pasar por alto. Pero entonces, ¿qué deberían decir los desarrolladores de las aplicaciones más populares a sus usuarios, que simplemente tienen que confiar en los problemáticos Core Data de iCloud, pero que a menudo no pueden garantizar el tipo de funcionalidad que Apple anuncia constantemente en sus anuncios? Apple ciertamente no los ayudará. "¿Alguien de Apple puede comentar sobre esta situación?" preguntó Sin éxito en el foro, el desarrollador Justin Driscoll, quien se vio obligado a cerrar su próxima aplicación debido a la falta de confiabilidad de iCloud.

Durante el año Apple no ayuda a los desarrolladores, por lo que todos esperaban que algo se resolviera al menos en la WWDC del año pasado, es decir, una conferencia destinada a desarrolladores, pero incluso aquí Apple no aportó mucha ayuda bajo la enorme presión de los desarrolladores. Por ejemplo, proporcionó un código de muestra que se puede utilizar para sincronizar Core Data, pero estaba lejos de estar completo. Una vez más, no hubo ninguna ayuda significativa. Además, los ingenieros de Apple instaron a los desarrolladores a esperar hasta iOS 6. "Pasar de iOS 5 a iOS 6 mejoró un XNUMX% las cosas" confirmado por un desarrollador anónimo, "pero todavía está lejos de ser ideal". Según otras fuentes, Apple sólo tenía cuatro empleados a cargo de Core Data el año pasado, lo que demostraría claramente que Apple no está interesada en esta área. Sin embargo, la empresa se negó a comentar sobre esta información.

Adiós y bufanda

Después de todas las vicisitudes mencionadas, no es de extrañar que muchos desarrolladores dijeran no a iCloud, aunque probablemente con el corazón encogido. Se suponía que iCloud finalmente traería algo que los desarrolladores estaban anhelando: una solución simple que garantiza bases de datos idénticas y su sincronización constante en dos o más dispositivos. Lamentablemente, la realidad es otra. "Cuando consideramos iCloud y Core Data como una solución para nuestra aplicación, nos dimos cuenta de que no podíamos usarla porque nada funcionaría". dijo el desarrollador de algunas de las aplicaciones más vendidas para iPhone y Mac.

Otra razón por la que iCloud no se abandona fácilmente es el hecho de que Apple se da cuenta de las aplicaciones que utilizan sus servicios (iCloud, Game Center) e ignora por completo aquellas que no tienen nada de Apple en la App Store. iCloud también es una buena solución desde el punto de vista del marketing.

Dropbox, por ejemplo, se ofrece como posible alternativa, pero ya no es tan fácil de usar. Por un lado, el usuario tiene que configurar otra cuenta (iCloud está disponible automáticamente con la compra de un nuevo dispositivo) y, por otro, se requiere autorización para que la aplicación pueda funcionar, lo que también falla con iCloud. Y finalmente, Dropbox ofrece sincronización de documentos, que simplemente no es lo que buscan los desarrolladores. Quieren sincronizar bases de datos. "Dropbox, que es el más utilizado actualmente, ha demostrado su eficacia para la sincronización de datos. Pero cuando se trata de sincronizar la base de datos, dependemos de iCloud". admite Roman Maštalíř de Touch Art.

[do action="quote"]Me gustaría decirle a Apple que arreglaron todo en iOS 7, pero realmente no lo creo.[/do]

Sin embargo, los desarrolladores de la aplicación 2Do no tuvieron paciencia, debido a numerosas experiencias negativas con iCloud, no probaron el servicio de Apple e inmediatamente se les ocurrió su propia solución. “No usamos iCloud debido a todos los problemas. Es un sistema muy cerrado sobre el que no podríamos tener todo el control que nos gustaría", nos dijo el desarrollador Fahad Gillani. “Elegimos Dropbox para la sincronización. Sin embargo, no utilizamos su sincronización de documentos, escribimos nuestra propia solución de sincronización para ello".

Otro estudio checo, Madfinger Games, tampoco dispone de iCloud en sus juegos. Sin embargo, el creador de los populares títulos Dead Trigger y Shadowgun no utiliza el servicio de Apple por razones ligeramente diferentes. "Tenemos nuestro propio sistema basado en la nube para guardar posiciones en el juego, porque queríamos poder transferir el progreso del juego entre plataformas". David Kolečkář nos reveló que debido al desarrollo de juegos para iOS y Android para Madfinger Games, iCloud nunca fue una solución.

¿Habrá una solución?

A medida que pasa el tiempo, muchos desarrolladores van perdiendo poco a poco la esperanza de que Apple encuentre una solución. Por ejemplo, se acerca la próxima WWDC, pero como Apple prácticamente no se comunica con los desarrolladores incluso ahora, no se espera que venga a la WWDC con los brazos abiertos llenos de consejos y respuestas. "Todo lo que podemos hacer es seguir enviando informes de errores a Apple y esperar que los solucionen". se lamentó un desarrollador de iOS anónimo, y otro se hizo eco de sus sentimientos: "Me encantaría decirle a Apple que arreglaron todo en iOS 7 y que iCloud finalmente se puede usar sin problemas después de dos años, pero realmente no lo creo". Pero será iOS 7 el que debería ser el tema central de la WWDC de este año, por lo que los desarrolladores al menos pueden tener esperanzas.

Si Apple no ofrece una solución a los problemas de iCloud en una nueva versión de su sistema operativo, podría ser un virtual clavo en el ataúd para algunos proyectos. Uno de los desarrolladores, que hasta ahora ha sido un firme partidario de iCloud, dice: "Si Apple no soluciona este problema en iOS 7, tendremos que abandonar el barco".

Fuente: TheVerge.com, LaPróximaWeb.com
.