L'ERREUR D'APPLE
OriginalNovembre 2009
Je ne pense pas qu'Apple se rende compte à quel point le processus d'approbation de l'App Store est défaillant. Ou plutôt, je ne pense pas qu'ils se rendent compte à quel point il est important qu'il soit défaillant.
La façon dont Apple gère l'App Store a porté atteinte à sa réputation auprès des programmeurs plus que tout ce qu'elle a fait jusqu'à présent. Leur réputation auprès des programmeurs était autrefois excellente. La plainte la plus courante que l'on entendait à propos d'Apple était que ses fans l'admiraient de manière trop peu critique. L'App Store a changé cela. Aujourd'hui, de nombreux programmeurs ont commencé à considérer Apple comme un mal.
Quelle part de la bonne volonté dont Apple bénéficiait autrefois auprès des programmeurs a-t-elle perdu à cause de l'App Store ? Un tiers ? La moitié ? Et ce n'est pas tout. L'App Store est une fuite de karma permanente.
Comment Apple s'est-elle retrouvée dans une telle situation ? Son problème fondamental est qu'elle ne comprend pas les logiciels.
Ils traitent les applications iPhone de la même manière qu'ils traitent la musique qu'ils vendent sur iTunes. Apple est le canal, ils possèdent l'utilisateur, et si vous voulez atteindre les utilisateurs, vous le faites selon leurs conditions. Les maisons de disques ont accepté, à contrecœur. Mais ce modèle ne fonctionne pas pour les logiciels. Il ne fonctionne pas pour un intermédiaire de posséder l'utilisateur. L'industrie du logiciel l'a appris au début des années 1980, lorsque des sociétés comme VisiCorp ont montré que si les mots « logiciel » et « éditeur » vont ensemble, les concepts sous-jacents ne vont pas ensemble. Un logiciel n'est pas comme la musique ou les livres. Il est trop compliqué pour un tiers d'agir comme intermédiaire entre le développeur et l'utilisateur. Et pourtant, c'est ce qu'Apple essaie d'être avec l'App Store : un éditeur de logiciels. Et un éditeur particulièrement ambitieux, avec des goûts pointilleux et un style maison rigoureusement appliqué.
Si l'édition de logiciels ne fonctionnait pas en 1980, elle fonctionne encore moins aujourd'hui, le développement de logiciels ayant évolué d'un petit nombre de grosses versions à un flux constant de petites versions. Mais Apple ne le comprend pas non plus. Son modèle de développement de produits dérive du matériel. Ils travaillent sur quelque chose jusqu'à ce qu'ils pensent que c'est terminé, puis ils le publient. C'est ce qu'il faut faire avec le matériel, mais comme les logiciels sont si faciles à modifier, leur conception peut bénéficier de l'évolution. La manière standard de développer des applications aujourd'hui est de les lancer rapidement et de les itérer. Ce qui signifie que c'est un désastre d'avoir des retards longs et aléatoires à chaque fois que vous publiez une nouvelle version.
Apparemment, Apple pense que les développeurs devraient être plus prudents lorsqu'ils soumettent une nouvelle version à l'App Store. C'est ce qu'ils diraient. Mais aussi puissants soient-ils, ils ne le sont pas suffisamment pour inverser l'évolution de la technologie. Les programmeurs n'utilisent pas le lancement rapide et itératif par paresse. Ils l'utilisent parce qu'il donne les meilleurs résultats. En entravant ce processus, Apple les oblige à faire du mauvais travail, et les programmeurs détestent cela autant qu'Apple.
Qu'en penserait Apple si, lorsqu'il découvrait un bug grave dans OS X, au lieu de publier immédiatement une mise à jour du logiciel, il devait soumettre son code à un intermédiaire qui le conservait pendant un mois, puis le rejetait parce qu'il contenait une icône qu'il n'aimait pas ?
En interrompant le développement de logiciels, Apple obtient l'effet inverse de celui escompté : la version d'une application actuellement disponible sur l'App Store a tendance à être ancienne et pleine de bugs. Un développeur m'a dit :
En raison de leur processus, l'App Store est rempli d'applications à moitié prêtes. Je crée une nouvelle version presque tous les jours que je publie pour les utilisateurs bêta. La version sur l'App Store semble vieille et merdique. Je suis sûr que beaucoup de développeurs ressentent cela : l'une des émotions est « Je ne suis pas vraiment fier de ce qu'il y a dans l'App Store », et elle est combinée avec l'émotion « Vraiment, c'est la faute d'Apple ».
Un autre a écrit :
Je pense qu'ils pensent que leur processus d'approbation aide les utilisateurs en garantissant la qualité. En réalité, des bugs comme le nôtre sont résolus à tout moment et il peut falloir 4 à 8 semaines pour que la correction de bug soit approuvée, ce qui laisse penser aux utilisateurs que les applications iPhone ne fonctionnent parfois tout simplement pas. Pire encore pour Apple, ces applications fonctionnent très bien sur d'autres plateformes qui ont des processus d'approbation immédiats.
En fait, je suppose qu'Apple a une troisième idée fausse : toutes les plaintes concernant les approbations de l'App Store ne sont pas un problème sérieux. Ils doivent entendre les développeurs se plaindre. Mais les partenaires et les fournisseurs se plaignent toujours. Ce serait un mauvais signe s'ils ne le faisaient pas ; cela signifierait que vous êtes trop indulgent avec eux. Pendant ce temps, l'iPhone se vend mieux que jamais. Alors pourquoi ont-ils besoin de réparer quoi que ce soit ?
Ils s'en tirent à court terme en maltraitant les développeurs parce qu'ils fabriquent du matériel de très grande qualité. Je viens d'acheter un nouvel iMac 27" il y a quelques jours. Il est fabuleux. L'écran est trop brillant et le disque est étonnamment bruyant, mais il est tellement beau qu'on ne peut pas s'en soucier.
Alors je l'ai acheté, mais je l'ai acheté, pour la première fois, avec des appréhensions. J'ai ressenti la même chose que si j'achetais quelque chose fabriqué dans un pays où les droits de l'homme sont mauvais. C'était nouveau. Par le passé, quand j'achetais des choses chez Apple, c'était un pur plaisir. Oh là là ! Ils font des trucs tellement géniaux. Cette fois, j'ai eu l'impression de faire un pacte faustien. Ils font des trucs tellement géniaux, mais ce sont de vrais connards. Est-ce que je veux vraiment soutenir cette entreprise ?
Apple devrait-elle se soucier de ce que les gens comme moi pensent ? Quelle différence cela fait-il si Apple aliéne une petite minorité de ses utilisateurs ?
Il y a deux raisons pour lesquelles ils devraient s'en soucier. La première est que ces utilisateurs sont les personnes qu'ils veulent comme employés. Si votre entreprise semble malfaisante, les meilleurs programmeurs ne travailleront pas pour vous. Cela a beaucoup nui à Microsoft à partir des années 90. Les programmeurs ont commencé à se sentir gênés de travailler chez eux. Cela ressemblait à une trahison. Lorsque des gens de Microsoft parlaient à d'autres programmeurs et qu'ils mentionnaient leur lieu de travail, ils faisaient beaucoup de blagues auto-dépréciatives sur le fait d'être passés du côté obscur. Mais le vrai problème pour Microsoft n'était pas l'embarras des gens qu'ils embauchaient. C'était les gens qu'ils n'ont jamais eus. Et vous savez qui les a eus ? Google et Apple. Si Microsoft était l'Empire, ils étaient l'Alliance rebelle. Et c'est en grande partie parce qu'ils ont eu plus de gens parmi les meilleurs que Google et Apple réussissent tellement mieux que Microsoft aujourd'hui.
Pourquoi les programmeurs sont-ils si pointilleux sur la morale de leurs employeurs ? En partie parce qu'ils peuvent se le permettre. Les meilleurs programmeurs peuvent travailler où ils le souhaitent. Ils ne sont pas obligés de travailler pour une entreprise qui les gêne.
Mais l'autre raison pour laquelle les programmeurs sont pointilleux, je pense, c'est que le mal engendre la stupidité. Une organisation qui gagne en exerçant son pouvoir commence à perdre la capacité de gagner en faisant un meilleur travail. Et ce n'est pas amusant pour une personne intelligente de travailler dans un endroit où les meilleures idées ne sont pas celles qui gagnent. Je pense que la raison pour laquelle Google a adopté avec tant d'empressement le principe « Ne soyez pas méchant » n'était pas tant pour impressionner le monde extérieur que pour se protéger contre l'arrogance. [ 1 ]
Jusqu'à présent, cela a fonctionné pour Google. Ils sont devenus plus bureaucratiques, mais à part cela, ils semblent être restés fidèles à leurs principes d'origine. Avec Apple, cela semble moins le cas. Quand on regarde la célèbre publicité de 1984 , il est plus facile d'imaginer Apple en dictateur à l'écran que la femme avec le marteau. [ 2 ] En fait, si vous lisez le discours du dictateur, cela ressemble étrangement à une prophétie de l'App Store.
Nous avons triomphé de la diffusion sans scrupules des faits.
Nous avons créé, pour la première fois dans toute l’histoire, un jardin d’idéologie pure, où chaque travailleur peut s’épanouir à l’abri des ravages des vérités contradictoires et confuses.
L'autre raison pour laquelle Apple devrait se soucier de ce que les programmeurs pensent d'elle est que lorsque vous vendez une plateforme, les développeurs vous font ou vous défont. Si quelqu'un doit le savoir, c'est bien Apple. VisiCalc a créé l'Apple II.
Les programmeurs créent des applications pour les plateformes qu'ils utilisent. La plupart des applications, et probablement la plupart des startups, sont issues de projets personnels. Apple elle-même l'a fait. Apple a fabriqué des micro-ordinateurs parce que c'est ce que Steve Wozniak voulait pour lui-même. Il n'avait pas les moyens de s'offrir un mini-ordinateur. [ 3 ] Microsoft a également commencé à fabriquer des interpréteurs pour les petits micro-ordinateurs parce que Bill Gates et Paul Allen étaient intéressés par leur utilisation. Il est rare qu'une startup ne construise pas quelque chose que ses fondateurs utilisent.
La principale raison pour laquelle il existe autant d'applications pour iPhone est que de nombreux programmeurs possèdent un iPhone. Ils savent peut-être, parce qu'ils l'ont lu dans un article, que Blackberry détient telle ou telle part de marché. Mais en pratique, c'est comme si RIM n'existait pas. S'ils veulent créer quelque chose, ils veulent pouvoir l'utiliser eux-mêmes, et cela signifie créer une application pour iPhone.
Les programmeurs continuent donc de développer des applications pour iPhone, même si Apple continue de les maltraiter. Ils sont comme des personnes coincées dans une relation abusive. Ils sont tellement attirés par l'iPhone qu'ils ne peuvent pas le quitter. Mais ils cherchent une issue. L'un d'eux a écrit :
Même si j'ai aimé développer des applications pour l'iPhone, le contrôle qu'ils exercent sur l'App Store ne me donne pas la motivation nécessaire pour développer des applications comme je le souhaiterais. En fait, je n'ai pas l'intention de créer d'autres applications pour iPhone à moins que cela ne soit absolument nécessaire. [ 4 ]
Est-ce qu'un appareil peut briser ce cycle ? Aucun appareil que j'ai vu jusqu'à présent n'y parviendra. Palm et RIM n'ont aucun espoir. Le seul concurrent crédible est Android. Mais Android est un orphelin ; Google ne s'en soucie pas vraiment, pas comme Apple se soucie de l'iPhone. Apple se soucie de l'iPhone comme Google se soucie de la recherche.
L'avenir des appareils portables est-il verrouillé par Apple ? C'est une perspective inquiétante. Il serait dommage de retrouver une monoculture sinistre comme celle des années 1990. En 1995, écrire des logiciels pour les utilisateurs finaux était pratiquement identique à écrire des applications Windows. Notre horreur face à cette perspective a été la principale raison qui nous a poussés à commencer à créer des applications Web .
Au moins, nous savons maintenant ce qu'il faudrait pour briser le verrou d'Apple. Il faudrait retirer les iPhones des mains des programmeurs. Si les programmeurs utilisaient un autre appareil pour accéder au Web mobile, ils commenceraient à développer des applications pour celui-ci.
Comment pourriez-vous créer un appareil que les programmeurs préfèrent à l'iPhone ? Il est peu probable que vous puissiez créer quelque chose de mieux conçu. Apple n'y laisse aucune place. Cet appareil alternatif ne pourrait donc probablement pas l'emporter sur l'attrait général. Il devrait l'emporter en raison de l'attrait qu'il exerce spécifiquement sur les programmeurs.
Une façon d'attirer les programmeurs est d'utiliser des logiciels. Si vous pouviez imaginer une application indispensable aux programmeurs, mais cela serait impossible dans le monde restreint de l'iPhone, vous pourriez probablement les convaincre de changer d'application.
Cela se produirait certainement si les programmeurs commençaient à utiliser des ordinateurs de poche comme machines de développement, si les ordinateurs de poche remplaçaient les ordinateurs portables de la même manière que ces derniers remplaçaient les ordinateurs de bureau. Vous avez besoin de plus de contrôle sur une machine de développement que ce qu'Apple vous permet d'avoir sur un iPhone.
Quelqu'un pourrait-il créer un appareil que l'on pourrait transporter dans sa poche comme un téléphone, et qui pourtant fonctionnerait comme une machine de développement ? Il est difficile d'imaginer à quoi cela ressemblerait. Mais j'ai appris à ne jamais dire jamais en matière de technologie. Un appareil de la taille d'un téléphone qui fonctionnerait comme une machine de développement n'est pas plus miraculeux selon les normes actuelles que l'iPhone lui-même ne l'aurait semblé selon les normes de 1995.
Ma machine de développement actuelle est un MacBook Air, que j'utilise avec un écran externe et un clavier dans mon bureau, et seul lorsque je voyage. S'il existait une version deux fois plus petite, je la préférerais. Elle ne serait toujours pas assez petite pour être transportée partout comme un téléphone, mais nous sommes à un facteur 4 environ. Cet écart est sûrement comblable. En fait, faisons-en un RFS . On recherche : une femme avec un marteau.
Remarques
[ 1 ] Lorsque Google a adopté « Ne soyez pas méchant », ils étaient encore si petits que personne ne s'attendait à ce qu'ils le soient encore.
[ 2 ] Le dictateur de la publicité de 1984 n'est pas Microsoft, soit dit en passant, mais IBM. IBM semblait beaucoup plus effrayant à l'époque, mais ils étaient plus favorables aux développeurs qu'Apple ne l'est aujourd'hui.
[ 3 ] Il ne pouvait même pas se permettre un écran . C'est pourquoi l'Apple I utilisait un téléviseur comme écran.
[ 4 ] Plusieurs personnes avec qui j'ai discuté m'ont dit qu'elles appréciaient le SDK de l'iPhone. Le problème ne vient pas des produits d'Apple, mais de leurs politiques. Heureusement, les politiques sont des logiciels ; Apple peut les modifier instantanément si elle le souhaite. Pratique, n'est-ce pas ?
Merci à Sam Altman, Trevor Blackwell, Ross Boucher, James Bracy, Gabor Cselle, Patrick Collison, Jason Freedman, John Gruber, Joe Hewitt, Jessica Livingston, Robert Morris, Teng Siong Ong, Nikhil Pandit, Savraj Singh et Jared Tame pour avoir lu les brouillons de cet article.