iCloud reste un casse-tête pour les développeurs

Florian Innocente |
iCloud est un casse-tête sans solution pour les développeurs qui souhaitent l'intégrer à leurs applications pour synchroniser des bases de données. C'est le constat général qui ressort de conversations menées par The Verge avec des éditeurs de logiciels iOS et OS X, ainsi qu'au travers de billets de blogs. Sur le papier, iCloud est une solution idéale pour tenir à jour des données et réglages entre plusieurs appareils utilisant la même application. Une solution quasiment clef en main pour répondre à un besoin extrêmement complexe.

C'est d'ailleurs la promesse qui avait été faite par Steve Jobs lors de la conférence des développeurs 2011 : « iCloud est intégré avec vos applications et tout se déroule automatiquement » avant de le ponctuer par son fameux « It just works » (ça marche tout simplement).

Mais deux ans après, cela ne marche toujours pas si bien, voire très mal, et plusieurs développeurs, ouvertement ou de manière anonyme, s'en sont plaints à The Verge.

Par exemple Daniel Pasco, le patron de Black Pixel (Versions, Kaleidoscope), qui prépare une refonte du lecteur de RSS NetNewsWire, un type de logiciel qui a tout à gagner à disposer d'un système de synchronisation entre ses versions OS X et iOS. Le dysfonctionnement et le mystère des API d'iCloud proposées aux développeurs a eu raison de sa patience « iCloud n'a pas fonctionné chez nous. On y a passé un temps incroyable, mais iCloud et la synchronisation Core Data ont des problèmes qu'il nous est tout simplement impossible de résoudre ». L'un de ses confrères, Michael Göbel abonde : « J'ai réécrit plusieurs fois mon code iCloud en espérant trouver une solution qui marche, et visiblement Apple n'a pas fait cet effort. iCloud et Core Data sont une plaisanterie. »



Un autre développeur, Brian Arnold de MathWorks, constate aussi les dégâts, que ce soit en temps passé à dépanner des utilisateurs confrontés à des dysfonctionnements, pertes de données ou en mauvaises notes laissées sur l'App Store « J'attends toujours une réponse sur ce qui peut poser problème et comment y remédier ».

On peut aussi citer le cas du lecteur de podcasts Instacast qui a finalement abandonné la synchronisation iCloud fin 2012 pour développer son propre système ou GoodReader qui a fait machine arrière l'été dernier.

Dans son billet de février dernier, Michael Göbel met en exergue le fait que le marketing d'Apple donne à penser aux utilisateurs que l'absence d'iCloud dans les applications ou les dysfonctionnements sont du ressort des développeurs. Alors que ces derniers sont laissés dans le flou sur la manière de faire fonctionner ce système ou sur les perspectives de le voir enfin corrigé.

Ce sentiment que la faute en revient aux développeurs est conforté par le bon fonctionnement d'iCloud dans d'autres contextes de synchronisation. Lorsqu'il s'agit de documents, les choses se passent plutôt bien « Il faut bien comprendre une chose, la perception du bon fonctionnement d'iCloud par les utilisateurs est largement basée sur des applications qui n'utilisent pas Core Data lors de la synchronisation » observe un autre développeur.



Lorsqu'il s'agit de synchroniser des documents et non des bases de données avec Core Data, ces bugs ne se présentent pas. Les applications de bureautiques d'Apple utilisent ce schéma et dans ce cas il n'y a pas véritablement de soucis, le mécanisme de synchronisation des documents créés par un Keynote ou un Pages étant plus simple. En revanche, lorsqu'il s'agit de bases des données, même des applications Apple sont touchées. Exemple est donné avec iTunes Movie Trailers sur iOS (pour les bandes-annonces, disponible sur l'App Store américain seulement) qui perd régulièrement les favoris des utilisateurs.

Apple n'a pas non plus prévu de scénarios passablement complexes où un utilisateur jonglera entre plusieurs identifiants Apple pendant l'utilisation d'une app. Un autre développeur parle des bugs d'iCloud, mais aussi de sa probable inadéquation structurelle à gérer de grosses bases.

À ces désagréments techniques s'ajoutent les maigres chances pour une application qui n'utilise pas une synchronisation par iCloud d'être mise en avant par Apple sur l'App Store, avec les bénéfices commerciaux que cela entraîne.

Apple reste aussi imperméable aux errements constatés dans son système et sourde aux questions des développeurs. iOS 6 a pu amener beaucoup d'améliorations dans iCloud comparé à iOS 5, mais avec un résultat malgré tout encore bien insuffisant.

Une autre frustration exprimée, en plus de l'indifférence d'Apple sur le sujet, est l'absence de véritable solution de remplacement, alors qu'iCloud laissait entrevoir la perspective d'un remède à la complexité de la synchronisation de bases de données sur iOS.

Dropbox est parfait pour les documents, mais il n'est pas non plus idéal pour les bases de données. En outre, iCloud a comme avantage son intégration au système et sa transparence, alors qu'il faudra d'abord demander à un utilisateur qui n'a pas de compte Dropbox, ou qui n'en veut pas, d'en créer un. Une étape qui rend l'utilisation d'une telle fonction nettement moins conviviale.

Entre les développeurs qui s'arrachent les cheveux, ceux qui ont jeté l'éponge sur cette fonction et ceux qui vont jusqu'à envisager de laisser tomber iOS, le seul recours est la patience. Sauf à tenter de créer sa propre solution, mais le sujet est complexe. La prochaine WWDC et l'arrivée du successeur d'iOS 6 restent les seuls espoirs pour une amélioration de cette situation qui perdure depuis deux ans.
Tags
avatar eTeks | 
Le jour où Apple donnera un accès public à sa base de bugs, un grand pas sera déjà fait envers la reconnaissance du travail des développeurs Mac OS X et iOS. Fermer cet accès montre le peu d'estime que cette société porte pour les développeurs.
avatar Anonyme (non vérifié) | 
Pour ça marche avec les logiciels Apple alors ???
avatar Anonyme (non vérifié) | 
@TheOh! : Pourquoi
avatar Anonyme (non vérifié) | 
@TheOh! : Relis et tu vas comprendre !!! LoL
avatar MacGyver | 
@TheOh! : bof, ca marche pas du feu de dieu yen a un qui doit se retourner dans sa tombe
avatar Anonyme (non vérifié) | 
Parce que perso je n'ai jamais de bogues (documents ou autres) avec les app Apple..
avatar Anonyme (non vérifié) | 
@Mac*Gyver : Si ça fonctionne bien .
avatar Anonyme (non vérifié) | 
@TheOh! : +1
avatar Anonyme (non vérifié) | 
@eTeks : Apple a beaucoup d'estime pour les développeur . Et dire qu'icloud est un nid de bug est faux .
avatar iPadOne | 
le problèmes des développeurs c'est qu'ils veulent se faire du fric sur le dos d'Apple, soit le soucis n'est pas là mais ils veulent le faire a leurs sauce et sans forcer. On a les même problèmes avec le web : celui ne jure que par Drupal, celui la en CSS3 , celui-ci en flash et l'autre en Java ..... bref un foutoir et des mecs qui râlent a tour de bras sans jamais vouloir suivre une norme si ils y sont pas obligé
avatar ovea | 
iCloud sur OSx Server, c'est possible ?
avatar YARK | 
Moi, MobileMe me suffisait amplement et en plus j'avais droit à une galerie photos qui était sympa et facile d'approche. Apple a décidé pour moi que je n'y avait plus droit. On aurait pu avoir le choix entre ces deux solutions ou les deux, mais non : interdit... Ou l'art de faire ch... des consommateurs qui n'ont rien demandé.
avatar philippl | 
De toute façon Apple code avec les pieds. Ils font du bon matos, mais le soft n'est ni fait ni à faire. Une honte, le meilleur et pire exemple étant iTunes, une usine à gaz au fonctionnement totalement aléatoire. GO les fanboys :-)
avatar elamapi | 
@ceux qui demande pourquoi ça fonctionne sur les App Apple: Lisez l'article ..... @iPadOne: Tu peux me donner le nom de l'appli qui utilise coreData que t'as codé ? Non, parce que si tu veux faire un test, implementes juste l'exemple fournis avec Xcode sans le modifier (donc directement fournis par Apple) et tu verras par toi même les dégats. Si l'exemple d'Apple ne fonctionne pas, comment peux tu oser dire que c'est de la faute des devs ....
avatar Benz Hine | 
Mrdodo, l'attaché de presse d'apple est de sortie et dément en vrac les arguments des developpeurs professionnels.
avatar sekhmet | 
iCloud fonctionne globalement très bien . Surtout considérant les services antérieurs il y a une nette amélioration. Surtout si on considère le nombre d'utilisateur. Après j'ai pas tester l'API...
avatar TimeMachine | 
Ca marche peut être bien entre un Mac et un iPhone. J'ai 4 macs. Et iCloud ignore la plupart du temps mon Mac Pro. Les signets ne se mettent pas à jour. Les onglets non plus. Par contre sur iPad / iPhone, ça très rapide et la synchro se fait toujours. Personnellement je regrette MobileMe niveau synchro. Si elle ne se faisait pas, y avait moyen de l'activer soi-même dans les préférences MobileMe. iCloud c'est quand il veut bien et sur quel ordinateur il veut bien. Sur les apps, ça n'a jamais marché sur PULP. Une catastrophe. Mes RSS ne se synchronisaient jamais et ceux rajoutés sur un ordi n'apparaissaient jamais sur mon iPad. Bref. iCloud c'est bien joli dans leur pubs commerciales mais chez moi entres macs, c'est vraiment du n'importe quoi. Et pourtant lors de Moutain Lion chaque ordi a été réinstallé en clean install.
avatar lmouillart | 
Si l'on compare le cloud d'Apple à celui d'Amazon, Google, ou Microsoft cela reste quand même une vaste fumisterie : tant pour les SLA qu'en fonctionnalités.
avatar kubernan | 
Ça ne m'étonne pas vraiment : depuis iOS 5 Core Data a été agrémenté de nouveautés et d'un modèle de gestion asynchrone des lectures/écritures. Or, tout cela fonctionne assez mal. D'ailleurs il n'y a quasiment pas d'exemple de code officiel (fourni par Apple) reposant sur ces nouveaux principes. Rien qu'en local c'est galère à gérer, alors si l'on y ajoute la synchro...
avatar Anonyme (non vérifié) | 
@Benz Hine : De mon point de vu utilisateur , iCloud fonctionne bien , j'ai toujours eu toutes les données de synchronisé sans problème en toute transparence et fluidité . Je ne suis en rien un commercial d'Apple seulement un type content de son matos et du soft qui tourne dessus .
avatar xavier25 | 
@iPadOne Les devs ne veulent pas faire du fric sur le dos d'apple. On veut avant tout sortir l'application que l'on s'est projeté à faire. Et faire une application (à but lucratif ou non) ça demande du temps (et donc), de l'argent. On râle pas pour râler, mais quand Apple met à dispo des frameworks buggés et que t'essaies de t'en servir pensant que les erreurs viennent de toi, au bout du compte c'est rageant. Perso j'ai bien étudié la question avant d'y mettre les pieds et j'avais décidé de me passer d'icloud pour le moment.
avatar Anonyme (non vérifié) | 
Comment ont fait les équipes d'infinity blade alors ?
avatar Phoenixxu | 
@philippl : Je ne sais pas ce que tu fais avec iTunes mais ce n'est pas une usine à gaz. Une usine à gaz c'est quand par exemple HTC décide de faire un iTunes-like...
avatar Anonyme (non vérifié) | 
@philippl : iTunes est pas si mal comparé aux solutions des concurrent ...
avatar Oliange | 
@Benz Hine "Mrdodo, l'attaché de presse d'apple est de sortie et dément en vrac les arguments des developpeurs professionnels." Il le sera peut être plus tard, pour le moment il a 14 ans, 5 comptes sur MacG et une connaissance très moyenne de l'informatique surtout pour quelqu'un qui défend corps et ame sa marque fétiche. Bref...
avatar diegue | 
Tant qu'iCloud marche bien avec les apps Apple ça me convient ! Pour les documents j'enregistre les word et autre sous Pages et Numbers : où est le problème alors ?
avatar nogui | 
@philippl "GO les fanboys :-)" Tu devrais aller chasser la Galinette Cendrée, c'est plus dans tes cordes ...
avatar USB09 | 
L'application Deadalus, que je félicite en passant, offre une synchronisation iCloud. Et ces gros éditeurs n'y arrivent pas...non mais je rêve !
avatar elamapi | 
@diegue Vous lisez ou pas ? Les soucis viennent des synchros sur les bases de données quand on utilise coreData, PAS sur les documents ....
avatar Anonyme (non vérifié) | 
@Oliange : Je me suis déjà expliqué par rapport à mes multiple compte c'est juste un gros manque de chance ... Pour mes connaissances je fais ce que je peux avec ce que je sais . Mais pour mon âge c'est déjà pas mal ... Enfin je pense ... Mais c'est pas vraiment que je défend corps et âme apple c'est simplement que j'exprime ma satisfaction , il n'empêche que je trouve que les concurrent font également des choses fantastique . Ce qui est problématique pour moi c'est que mon âge me décrédibilise ... Mais qu'entends tu par une connaissance très moyenne ?
avatar rikki finefleur | 
Je pense que c'est aussi un problème inherent au meta clound de ces gros fabricants, la réplication entre sites pour les bdd. Mais comme le dit un intervenant Amazon sait parfaitement gérer cela et MS aussi.
avatar Anonyme (non vérifié) | 
@USB09 : +1
avatar Anonyme (non vérifié) | 
@USB09 : Mais on parle pas de document mais de donné core data .
avatar kubernan | 
@ USB09 : daedalusapp utilise-t-elle Core Data ? Car c'est bien de cette problématique dont il est largement question ici : pour les docs la synchro iCloud semble bien fonctionner, mais dès qu'il s'agit de Core Data ça devient boiteux.
avatar AirForceTwo | 
-
avatar hirtrey | 
Il faut faire un Dump, le synchroniser et le restaurer LOL
avatar nogui | 
@lmouillart "Si l'on compare le cloud d'Apple à celui d'Amazon, Google, ou Microsoft cela reste quand même une vaste fumisterie : tant pour les SLA qu'en fonctionnalités." Ce n'est pas parce que ça ne te convient pas que c'est une fumisterie, il faut juste voir que chez Apple c'est un espace de stockage servant à sauvegarder sans prise de tête de l'utilisateur , sa machine, ses documents, ses photos .. ET que pour lui c'est l'essentiel .. point ! Les utilisateurs de base se tapent complètement des fonctionnalités qui te plaisent à toi chez les autres .. moi aussi j'ai un compte SkyDrive, un compte Dropbox, mais la plupart des personnes que je connais qui ne s’intéressent pas à tout çà se foutent carrément de tous ces services .. Ce qui les intéresse c'est que sans rien faire ils sauvegardent leur ibidules en toute transparences et s'ils ils ont à changer de modèle ben ca sera tout aussi simple de tout retrouver comme ils l'on laisser sur leur ancien modèle. Ou encore de retrouver les documents créés sur leur smartphone sur leur Desktop .. Après, bien sur, tu vas nous dire que tu peux faire la même chose et mieux ailleurs .. mais j'attends alors que tu me fasse une procédure claire et courte pour un utilisateur de base .. là c'est plus la même mayonnaise ...
avatar Anonyme (non vérifié) | 
Mais ils ont fait comment les développeurs d'infinity blade ? Pour ce jeu il ne s'agit pas de document mais bien d'une sauvegarde iCloud , transparente .
avatar kubernan | 
@ Mrdodo : Faut leur demander. Le problème n'est pas de savoir comment ils ont fait. Le problème est que dès qu'un développeur souhaite combiner iCloud et Core Data ça devient très problématique. C'est avéré.
avatar USB09 | 
@kubernan Soit dit en passant , une base de donnée c'est "juste" un fichier CSV, l'application faisant le ménage.
avatar USB09 | 
@Mrdodo Très bonne question.
avatar AKZ | 
Apple arrive bien à synchroniser via iCloud ces "putains" de snoozes de 15 mn de l'application Calendrier, donc ils pourraient bien nous remettre le choix des durées que l'on avait sur Snow Leopard ! D'autant que ça ferait beaucoup moins de synchronisations sur leurs serveurs que de pouvoir, par exemple, relancer un rappel de RDV d'une heure plutôt que de le relancer 4 fois de suite de quinze minutes...
avatar Orus | 
Le spécialiste du cloud c'est sur ce n'est pas Apple. Google est vraiment très loin devant.
avatar Anonyme (non vérifié) | 
@Orus : En même temps chacun a sa spécialité n'est ce pas ? Ça veut pas pour autant dire qu'apple est à la ramasse mais elle a quelque difficulté . Mais c'est comme pour maps Google a eu le temps de se préparer apple , moins . quoi qu'ils ont connu mobile me .
avatar grems | 
@nogui 1) Ouvrir son navigateur Internet. 2) Cliquer en haut de google.fr sur Drive pour retrouver tous ses documents, sur Photos pour ses photos, GMail pour ses mails(que ce soir gmail ou autres comptes).... et tellement plus. Trop dur la mayonnaise. (et en plus la mayonnaise elle fonctionne sur Windows XP, elle. C'est pas comme si il était encore installé sur près de 40% des machines que Apple ignore dans sa grande simplicité).
avatar Anonyme (non vérifié) | 
@grems : Mais c'est pas intégré de la même manière qu'apple . C'est pas complément fluide et transparent . C'est pas mieux , c'est pas moins bien c'est un fonctionnement différent .
avatar Philzap | 
@usb09 [27/03/2013 14:14] via iGeneration pour iPad "@kubernan Soit dit en passant , une base de donnée c'est "juste" un fichier CSV, l'application faisant le ménage." Mieux vaut être aveugle que lire ce genre de connerie!!! Une base de donnée c'est juste un fichier CSV...... J'espère pour toi que tu n'es ni développeur ni a aucune responsabilité technique dans l'écriture de softs. Evidemment si tu considère Excel comme un SGBDR alors effectivement.... Merde, quand je vais dire au dev d'Oracle, de DB2 et autres qu'ils ne font qu'écrire des fichiers CSV ça va les épater :-)
avatar Anonyme (non vérifié) | 
@Phoenixxu : '@philippl : Je ne sais pas ce que tu fais avec iTunes mais ce n'est pas une usine à gaz. Une usine à gaz c'est quand par exemple HTC décide de faire un iTunes-like...' + 1000000000000000000
avatar Philzap | 
...et pour info CoreData sauvegarde ses données via Sqlite. Voir le format de fichier : http://www.sqlite.org/fileformat.html

Pages

CONNEXION UTILISATEUR