SDK iPhone : Steve Jobs livre sa réponse

Florian Innocente |
Steve Jobs a envoyé deux réponses successives aux mail d'un développeur, Greg Slepak, qui se faisait l'écho auprès du patron d'Apple de réactions négatives suite aux changements dans la licence du kit de développement iPhone.

Dans sa première réponse, le patron d'Apple l'a renvoyé à un billet publié sur Daring Fireball avec ce commentaire "Le billet de John Gruber est très perspicace et pas négatif. Puis dans un second mail, alors que le développeur lui citait Firefox comme exemple d'une application réussie créée avec un environnement multiplateforme, il a précisé "On a déjà vu ça, au bout du compte, des couches intermédiaires entre la plateforme et le développeur finissent par produire des applications de moindre qualité qui entravent les progrès de la plateforme".

Le propos de Gruber était de dire que si l'on pouvait trouver déplaisante la décision d'Apple, selon le côté où l'on se situe, au moins avait-elle du sens. Apple vise à faire de Cocoa Touch et de l'App Store le standard des applications mobiles, et ne souhaite pas que d'autres environnements viennent s'y appuyer, avec le risque de faire de l'iPhone une plateforme parmi d'autres. Ces environnements alternatifs se retrouveraient également hors de son contrôle. Si iPhone OS reçoit de nouvelles fonctions, mais que des environnements devenus très populaires tardent à en tirer partie, ils auront dès lors un ascendant fâcheux sur cette plateforme.

"Flash CS5 et MonoTouch sont moins cross-plateforme que métaplateforme. L'objectif d'Adobe n'est pas d'aider les développeurs à écrire des applications pour iPhone, mais d'encourager les développeurs à écrire des applications qui exécutent Flash sur l'iPhone (et ailleurs) au lieu d'écrire des applications spécifiquement iPhone. Apple n'est pas seulement ambivalente vis-à-vis des objectifs d'Adobe, il est dans l'intérêt direct d'Apple de les déjouer."

Autre considération, le fait que cette politique ne change rien pour les développeurs Cocoa et rien non plus pour les développeurs web. Au mieux, cela ouvre des opportunités supplémentaires pour les développeurs Cocoa qui voient leur spécificité réaffirmée.

Et pour l'anecdote, 9to5mac qui a obtenu une copie du mail de Steve Jobs y a relevé que le patron d'Apple utilisait une version de Mail remontant à Mac OS X 10.5 Leopard. Ce qui est logique, vu que son iPhone aussi semble avoir un firmware de retard.

Sur le même sujet :
SDK iPhone : le directeur technique d'Adobe relativise
Evangéliste Adobe : « Apple, va te faire… »
App Store : Flash prié de rester à l'écart

avatar TotOOntHeMooN | 
[quote=Brewenn]Mais Mac et iPhone sont de vulgaires PC et Smart-Phone, et c'est le rôle du marketing de te faire croire le contraire.[/quote]T'es gentil, mais à d'autres ... ;)
avatar oomu | 
3eme point : Apple ne doit PAS laisser se recréer le MAC 84. Non et NON. Apple doit contrôler la plateforme, doit contrôler l'outil de création, doit contrôler le paradigme de développement et avoir la possibilité d'innover et construire les 3 aspects à la fois pour être en mesure de fournir + que la concurrence la plateforme : ipad/iphone/ipod l'outil de création : xcode et tout le reste le "paradigme" : cocoa, les classes, leur organisation et ce qu'elles mettent en valeur en dessous ces 3 aspects permettent à apple de fournir une haute intégration entre les logiciels et le matériels, de fournir des fonctionnalités sous une forme inédite ou bien fignolées sans ce controle, apple serait bridé par le rythme de soit Adobe soit Microsoft ou google ou autre. et ces entreprises sont tout autant partenaires que concurrentes. C'est dans l'intérêt immédiat d'Apple de garder le contrôle de la plateforme. - et je dirais même, pour avoir connu l'informatique avant le pc, il faut qu'il y ait un constructeur tel apple. Il en faudrait même 2 ou 3. Le "ibm pc compatible avec tout et rien" ca a donné 20 ans de pc pourri, stagnant, sans innovation majeures, sans amélioration du quotidien de l'utilisateur, envahis de concepts abscons et de bugs. Aucune entreprise n'a pu tenir et fournir autre chose que le pc beige standard+windows. Seul Apple a réussi et par des moyens indirect (réussir à se justifier par une radicalité sans faille et l'échappatoire ipod ) et encore parce qu'apple avait 20 ans d'existence derrière elle au lancement de l'imac. Personne d'autre n'a réussi. Ce n'est pas un marché sain ni une informatique passionnante quand tous les constructeurs pc foncent vers l'oblivion et vendent à la Chine.
avatar oomu | 
les meta-plateformes ne permettent pas de meilleurs outils et leur intégration avec les matériels les plus innovants. Les meta-plateformes sont un énième problème d'ingénieur. C'est très bien pour moi quand je dois choisir avec quoi construire un service pour une entreprise. Mais pinaize, quand j'explique en quoi XUL (la plateforme qui sous-tend Mozilla Firefox et Thunderbird) est génial et permet de faire de chouettes logiciels basés web, y a bien que des informaticiens pour voir l'intérêt L'utilisateur lui dit "ha mais y a pas ceci, ni cela ni ça de Os X Leopard, et puis l'interface est bizarre, on dirait un truc qui vient de linux ou windows ou mon grille pain" Combien de fois l'ais je lu ici ? trop. que ca soit gimp ou firefox. y a tout le temps quelqu'un pour dire qu'il y a pléthore d'applications écrite avec une meta-plateforme qui sont superbes. Il y a de très bons logiciels, évidemment, il serait faux de dire le contraire. Mais la meta-plateforme est toujours une limitation Elle vous éloigne de la plateforme en dessous. toujours. Les meta-plateformes diluent la force et qualités des machines et systèmes en dessous, elle éloigne le développeur et fait perdre le contrôle des fonctionnalités et services que peut fournir le constructeur (apple ici). Vous êtes pris au rythme de l'ensemble des plateformes supportées le plus grand dénominateur commun devient la norme. Dans le cas du Mac, qu'Apple a perdu y a trop longtemps, environ dés 1984 en ayant pas assuré ses arrières correctement ni d'excellents outils de développement , le plus grand dénominateur commun force des logiciels comme Firefox a avant tout se limiter à Windows. Alors je suis désolé, mais même avec windows 7 , je ne vois pas cela comme une qualité. et donc au final, oui qu'Apple fasse l'absolu contraire du mac 84 avec l'ipad/iphone me va très bien. Apple a une raison pour continuer le développement incessant de Xcode/Cocoa : être supérieur à la concurrence.
avatar oomu | 
j'ai évité le terme de "langage" ( C, perl, ruby, objective-c, python et les milliers d'autres) pour dire "cadre de développement" (l'ensemble des fonctions/classes prêtes à l'emploi) parce que c'est le vrai enjeux ici. le langage est presque annexe. On pourrait programmer du "cocoa" avec un autre langage que objective-C , il existe ce qu'on appelle des "bindings" pour divers langage. et cela n'est pas un problème, car le langage est plié aux exigences et possibilités du "cadre de développement". Le truc est donc que Java ou Xul ou Flash ne sont pas que des langages. Mais des univers à eu tout seul, qui gère la gestion de l'interface, la conception même du logiciel, jusqu'au maximum de son affichage effectif à l'écran. Le geek se plaint de pas pouvoir utiliser python sur iphone ? noon, si vraiment les hackers ont gros sur la patate, ils écriraient un binding python avec le runtime objective-C et se servirait de xcode pour compiler le résultat final Mais ce n'est pas le langage qui est l'enjeu. c'est l'ensemble de ce qui créé un logiciel. - je me répète, mais oui c'est une perte de flexibilité, que le mac ne pouvait PAS se permettre, mais c'est un gain pour intégrer plus facilement des innovations, de la cohérence dans un outil puissant, et cela permet à Apple de contrôler la fameuse intégration matérielle/logiciel. Si apple perdait le contrôle et que finalement l'iphone/ipad avait que des logiciels comme on en a sur android/Chrome os/chais pas quoi, avec tout juste l'icone bleuté, apple sera à nouveau marginalisé, comme le mac. Et est ce vraiment si désirable d'avoir encore une fois un énième mac à 5% ou 10% de part de marché, une plateforme supposée de Haute Qualité mais que plein de logiciels n'exploitent pas (pour être compatible windows, genre photoshop vaguement adapté mac) ? Et si cela se répète encore, Apple va t'il toujours investir autant dans tout ça ? Avons nous tant intérêt que tout se ressemble et se dilue ? Il faut un Apple.
avatar majipoor | 
Brewenn "Ce n'est pas parce que majipoor l'écrit que c'est la réalité ou une info exacte." Ben si tu nous éclairais et expliquais quelle est l'info exacte? Parce qu'avec l'ironie comme seul argument, tu ne fais que confirmer tout le bien que je pense de toi. "Un accord sur un produit comme Bing , peut être, mais une alliance entre Apple et Microsoft c'est impossible du fait du risque d'abus de position de monopole." Un accord sur un "produit" qui est en gros un des rares concurrents crédibles à ce qui reste le centre nerveux de Google, les moteurs de recherche, moi j'appelle ça une alliance stratégique. Et si tu arrives à m'expliquer en quoi le fait d'utiliser le moteur de recherche de Microsoft qui doit bien représenter 5% du marché sur les iPhones (15% du marché des smart phones) pour lutter contre le moteur qui a 95% du marché serait un abus de position de la part d'Apple et de Microsoft? C'est pas parce que Microsoft a un monopole sur Windows ou Office qu'il en a sur les moteurs de recherche. Et une fois encore, le seul monopole éventuel d'Apple est sur iTunes et les iPod. Mélange pas tout. "Mais laissons aux gamins leurs illusions, ils seront bien assez tôt confronté à la réalité !" Merci de me rajeunir de 25 ans. Et merci une fois encore pour cette belle argumentation: on reconnaît bien ta patte.
avatar starbus | 
Merci à Oomu d'apporter son argumentaire clair et construit et surtout indémontable. Mais malheureusement vu le niveaux mental des habituels basheur ils ne risquent pas de comprendre grand chose et continuerons à venir nous sortir leurs tonnes d'ineptie.
avatar Cratès | 
Un bon résumé de Florian Innocente sur l’article lucide et éclairant de Gruber, dont les déclarations de Steve Jobs confirment la pertinence quant à la stratégie et aux motivations d’Apple ; la pédagogie d’Oomu pour approfondir l’analyse et montrer la portée des changements en cours ; la patience et l’acharnement de Majipoor à expliquer, raisonner, justifier, sans céder à la tentation de recourir à l’injure ou au terrorisme intellectuel vis-à-vis de ses contradicteurs. Que l’on soit d’accord ou pas avec les idées dont elles sont porteuses, il faut avoir l’honnêté de reconnaître que ce sont des interventions de ce type qui contribuent à l’intérêt de ce site.
avatar USB09 | 
@ omuu ton explication est tout a fait bien expliqué. mais les pauvres utilisateurs que nous sommes, ne comprenons pas cela comme ca. Quand on dit "non" a un Bébé (spleen et autre brewen) et bien il te prend pour un méchant , même si c'est pour son bien. Je suis étonné des commentaires de certains... mais, c'est bien d'entreprises que l'on parle ? pas de sectes ? Apple fait ce qui est bien pour elle, en apprenant de ses erreurs. Et c'est tant mieux car elle vivra longtemps.
avatar pecos | 
@ Cratès : je crois surtout qu'Oomu et Majipoor ont un peu dépassé l'âge des boutons... moi aussi d'ailleurs. Ce qui peut expliquer leur patience à toute épreuve. [quote=Majipoor]Moi je pense à toutes ces petites boîtes qui ont décidé de faire un travail propre et sérieux en s'investissant dans une application native. Je crois qu'elles sont assez satisfaite de savoir que les rouleaux compresseurs qui envisageaient de porter leurs applications WinMo 6 ou autres blagues Flash sur l'iPhone à moindre effort ne pourront finalement pas le faire.[/quote] En effet. On s'est suffisamment fait chier à apprendre à coder à peu près proprement et en respectant les vues (somme toute légitimes) d'Apple pour apprécier le geste ! Et si ça permet d'éviter d'avoir 10000 apps de plus par mois sur l'AppStore, ça aura au moins servi à quelque chose. Notez bien : je ne suis pas contre 10000 apps de plus par mois, par principe ! C'est juste que sur les 10000, j'ai un gros doute sur le fait qu'elles soient toutes codées en cocoa touch... Si c'était vrai, on peut s'attendre à un tsunami d'applications natives pour mac dans les prochaines années, avec tous ces nouveaux développeurs rompus à objective-C ! On peut toujours rêver un peu, non ?
avatar françois bayrou | 
"C'est juste que sur les 10000, j'ai un gros doute sur le fait qu'elles soient toutes codées en cocoa touch..." A mon avis ( mais je me trompe peut être ) la plupart le sont. Utiliser les outils Apple n'implique absolument pas que le résultat sera plus satisfaisant qu'en utilisant des outils tiers, et les merdes qu'on peut faire avec un outil tiers, on peut les faire aussi avec les outils Apple, les éditeurs n'ont pas attendu Unity ou Flash ( dont la CS5 n'est pas encore dans le commerce ! ) pour nous en délivrer de bien belles d'ailleurs.
avatar IGerard | 
Clairement ça devrait apporter quelque chose à la plate forme Mac, car ça en fait des nouveaux dev Cocoa... ... Nous partîmes 500(NeXT) et par un prompt renfort (iPhone) Nous nous vîmes 3000 en arrivant au port. Ok, je sors :) @Les pleureuses Il vous reste un tas de plate forme pour faire du soft pourri, alors foncer ;)
avatar Goldevil | 
Ce fil de discussion est vraiment intéressant à lire. Apple a le droit d'un point de vue légal de faire les choix techniques qu'ils ont fait. La question n'est pas là mais ni même de savoir si c'est-ce un choix pertinent ou non? Bloquer complètement d'autres environnements de développement (orientés cross-platform en général) va évidemment écarter certains développeurs qui ne trouvent pas leur compte avec seulement XCode (C/ObjectiveC) et HTML (version 5 à moyen terme). Les questions sont "A quel point est-ce préjudiciable à Apple?" et "Et pour ses clients?". Le marché d'Apple est très orienté vers le grand public. Je trouve que mon iPod Touch est plus une console de jeux qu'un baladeur et sur l'AppStore, je trouve plus de jeux que n'importe quel autre catégorie de programme. Certains types de jeux nécessitent pas mal de ressources graphiques et donc le développement avec XCode sera donc souvent le choix le plus judicieux... si on arrive à rentabiliser le produit sur une seule plateforme. L'argument de la cohérence de l'interface est à mon avis trop utilisé. Pour beaucoup de types de jeux, l'interface graphique est entièrement customisée et ne repose pas sur les solution de l'OS. Pour le moment, je joue avec Dungeon Hunter et il serait beaucoup plus laid s'il devait avoir une interface basée sur les widgets standards. J'aime bien le look gothique des boutons. Par contre, il existe à côté de ce marché grand public un autre très gros marché professionnel. Beaucoup de logiciels métier sont destinés à un public très réduit et ne consomment pas beaucoup de ressources CPU. Par exemple, un éditeur de texte passe 99,99% de son temps CPU à attendre l'appui sur une touche. Heureusement que sur un OS moderne, le temps restant peut être alloué à, par exemple, décoder de la musique mp3 ;-) Je pense qu'Apple va encore peiner à faire rentrer iPhone OS dans le monde de l'entreprise. Un monde ou le développeur vends son appli 1900€ à 100 clients et non 1,9€ à 10000 clients.
avatar Nesus | 
@goldevil : nul doute que tu aies raison. Mais ce n'est pas l'objectif d'apple. Comme Jobs l'a dit maintes fois "il y a plus d'utilisateurs non professionnel que pro". Ce qui est amusant c'est que l'argument contre cette nouvelle politique c'est que ça empêche certains dév de travailler. C'est totalement absurde. Rien n'empêche ces programmeurs d'aller et de programmer ailleurs. Oui mais ils n'ont pas la connaissance me diront certains. Je sais pas programmer donc je ne fais pas d'argent avec la programmation. C'est tout à fait normal. Ca m'embêterais grandement que l'on touche de l'argent en faisant le même boulot que le mien en s'étant passé des 5 ans d'études avant Apple ne les empêche pas non plus d'aller sur leur plateforme ou les enferme dedans. Je suis désolé de vous l'apprendre mais l'appli spotify a été d'abord faite sur l'iphone puis sous android. Donc le oui mais moi je sais pas, si je pouvais faire un multi platerforme, c'est juste un de la fainéantise, deux (et c'est le plus grave à mes yeux) de la malhonnêteté. Se dire que sans effort on va faire ce que les autres font avec effort c'est bien une idée immorale de capitaliste. N'allez pas dire que c'est parce que Jobs l'a dit car il est capitaliste. Le savoir est là pour nous ouvrir des possibilités, il n'y a aucune raison à ce que l'ignorance fasse de même. Quant à la soit disante mauvaise qualité des applications de l'appstore en plus d'être de la bêtise créée par des oeillères, c'est une insulte à bon nombres de dev (vous ne les défendez que quand cela vous arrange...) et des utilisateurs, vous me direz que quand on vient d'insulter le travail et sa juste rétribution cela est peu de chose... Personnellement j'ai plus de 190 applications d'excellentes qualité et j'en découvre d'excellentes très régulièrement. Mais je sais c'est parce que je suis un fan boy. D'ailleurs c'est moi qui aie fait les 4 milliards de téléchargements parce que personne ne peut télécharger des contenus aussi mauvais.
avatar izoong | 
Ouais ben le métaplateforme sur mac on se le paye à chaque jeu maintenant... Ça s'appel cider. Et c'est de la grosse merde en terme de performance... Dernier exemple en date pour moi : Settler 7, qui rame en réglage moyen sur mac via Cyder. Alors que via bootcamp c'est simplement beau et fluide avec les mêmes réglages moyens... Alors le metaplateforme, si c'est pour ce retrouver dans la même situation sur iPhone non merci. Ceci est juste le point de vue d'un "final user"...
avatar NicolasO | 
oomu: python avec des bindings Cocoa est interdit par ce que dit apple. Là encore, c'est les dommages collatéraux qui sont embettants. Flash m'est complètement égal.
avatar Shralldam | 
C'est un peu comme Cider hein : transposer rapidement un jeu sur Mac sans se faire iech'… Ben moi je suis contre, et je trouve logique que iPhone/iPad aient leur propre SDK et qu'il faille l'utiliser. Je crois que les iTrucs sont devenus tellement alléchants que plein de gens veulent s'y mettre mais en faisant le minimum d'efforts…
avatar Goldevil | 
@Nesus : les environnement de développement multi-plateforme ne sont pas destinés à des fainéants comme tu le suggère. Il s'agit surtout d'une question de moyens. Pour pas mal de développeurs, il n'y a pas de choix de la plateforme mais simplement des contraintes imposées. Je suis chef de projets IT et j'ai une équipe de 2 développeurs seulement pour deux projets importants. Nos clients sont les utilisateurs de la boîte (+/- 1000 personnes) et on doit faire une application disponible à partir d'un maximum de terminaux (PC windows, Mac, WinMobile, Android, iPhone...). Mais nous savons qu'en couvrant Windows, MacOS et Android nous couvrons 95% de la population cible. Nous développons donc avec Adobe Flex. Le fait que nous utilisons pas 100% des capacités de chaque terminal nous est bien égal. Même s'il y a une version différente de l'interface pour chaque terminal, nous pouvons garder +/- 70% du code en commun. C'est un gain énorme. Une appli en HTML est tout simplement hors de question pour des raisons de stabilité, fiabilité et performances. Il y a autant de librairies AJAX que de développeurs avec des incompatibilités entre librairies et avec certains navigateurs. Un composant Datagrid qui précharge quelques milliers de lignes ne fonctionne efficacement qu'en Flash ou en code natif. De plus nous avons avec Flex un protocole de communication binaire (AMF3) qui accélère de +/- 500% les échanges entre le logiciel client et le serveur. Tout cela est bien évidement possible sur iPhone OS, de manière mieux intégrée à l'OS, mais nous n'avons pas les ressources financières/humaines/temporelles pour faire une version iPhone. En dehors du cadre professionnel, j'aimerais développer un logiciel de gestion de code barre pour plusieurs plateforme mais mon problème est que pour le développer pour Windows, Linux, MacOS et mon iPod Touch je dois avoir 2 environnements de développements totalement distincts. Je préfère me concentrer sur Flex.
avatar starbus | 
[quote] Le fait que nous utilisons pas 100% des capacités de chaque terminal nous est bien égal.[/quote] Le soucis est justement là, nivellement par le bas pour le multiplateforme.
avatar JustThink | 
FLEX FLEX.... avantages inconvenients... Ici tu parles de portabilité c'est tout de même différent... Je developpe egalement une application Air pour des membres de Congrès en tirant l'avantage de SQlite car ressources disponibles sur CD... mais si je veux une appli sur iPhone, je developperais exclusivement sur iPhone, je maintiens mon positionnement sur le SDK d'Apple...
avatar pecos | 
@ goldevil, 2 réflexions après t'avoir lu : - le SDK d'apple n'est effectivement pas franchement conçu (et de moins en moins si l'on crois ce que tu dis) pour les applis professionnelles faites par une équipe réduite avec peu de moyens. C'est pas nouveau, mais franchement, je crois qu'apple s'en fout complètement. - tu dis qu'on ne peut pas développer correctement (fiabilité, satabilité, performances...) une appli HTML ? Mouais... Je crois surtout que si tu penses ça, c'est parce que "ta petite équipe de 2 développeurs" est - comment dire sans être insultant - un tout petit peu dépassée. ;-) En tous cas, va donc dire ça à Google qui est capable de produire des applis html (gmail, docs, maps, etc...) tellement abouties et performantes qu'on croirait être sur des applis natives. Tu n'a donc pas remarqué qu'en quelques années, le moteur (javascript) des applis html a été accéléré par 100 ou 1000 sur les peilleurs navigateurs ? En tous cas, tu le dis toi-même : [quote]nous n'avons pas les ressources financières/humaines/temporelles pour faire une version iPhone[/quote] C'est un problème de gestion de projet, pas un problème de choix technologique. Maintenant, si, avec vos maigres moyens, la seule solution est de développer des trucs avec cette bouse de FLEX, j'aimerais pas être à votre place. Et je comprends très bien la réaction épidermique de Steve Jobs. Je comprend beaucoup moins bien ta réaction "à l'économie" ? Moi quand j'ai envie de développer pour une plate forme, la seule chose que j'envisage est de développer nativement. Et si ça n'est pas possible, je ne fais RIEN. Et surtout pas une daube "compatible" avec tout et qui marche mal partout.
avatar notorious_hanz | 
Juste ma petite contrib sur le le cross platform. J'ai trouvé cette réaction sur un des sites que je fréquente. [quote]OS X would never have been such a success without its UNIX underpinnings and therefore portability of many key libraries and software. Cross-platform developers embraced it as a personal dev platform for this reason.[/quote] ca viens de là [url]http://createdigitalmusic.com/2010/04/12/dont-over-interpret-apple-cross-platform-development-isnt-a-sin/#more-10467[/url] Juste pour dire que le cross platform n'a pas que du mauvais. :-)

Pages

CONNEXION UTILISATEUR