Loading...

L'ERREUR D'APPLE

Original

Novembre 2009

Je ne pense pas qu'Apple réalise à quel point le processus d'approbation de l'App Store est brisé. Ou plutôt, je ne pense pas qu'ils réalisent à quel point il est important qu'il soit brisé.

La façon dont Apple gère l'App Store a nui à sa réputation auprès des programmeurs plus que toute autre chose qu'ils aient jamais faite. Sa 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 les admiraient de manière trop peu critique. L'App Store a changé cela. Maintenant, beaucoup de programmeurs ont commencé à voir Apple comme le mal.

Combien de la bonne volonté qu'Apple avait autrefois avec les programmeurs ont-ils perdu à cause de l'App Store ? Un tiers ? La moitié ? Et ce n'est que jusqu'à présent. L'App Store est une fuite de karma continue.


Comment Apple s'est-elle retrouvée dans ce pétrin ? 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 via iTunes. Apple est le canal ; ils possèdent l'utilisateur ; si vous voulez atteindre les utilisateurs, vous le faites à 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. Le secteur des logiciels a appris cela au début des années 1980, lorsque des entreprises comme VisiCorp ont montré que même si les mots « logiciel » et « éditeur » vont bien ensemble, les concepts sous-jacents ne le font pas. Le logiciel n'est pas comme la musique ou les livres. Il est trop complexe pour qu'un tiers agisse 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 prétentieux à cela, avec des goûts délicats et un style de maison rigoureusement appliqué.

Si l'édition de logiciels ne fonctionnait pas en 1980, elle fonctionne encore moins maintenant que le développement de logiciels est passé d'un petit nombre de grandes versions à un flux constant de petites versions. Mais Apple ne comprend pas cela 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. Vous devez le faire avec le matériel, mais parce que le logiciel est si facile à modifier, sa conception peut bénéficier de l'évolution. La façon standard de développer des applications maintenant est de lancer rapidement et d'itérer. Ce qui signifie que c'est un désastre d'avoir de longs retards aléatoires à chaque fois que vous publiez une nouvelle version.

Apparemment, l'attitude d'Apple est que les développeurs devraient être plus prudents lorsqu'ils soumettent une nouvelle version à l'App Store. Ils diraient cela. Mais aussi puissants soient-ils, ils ne sont pas assez puissants pour inverser l'évolution de la technologie. Les programmeurs n'utilisent pas le lancement rapide et l'itération par paresse. Ils l'utilisent parce que cela donne les meilleurs résultats. En obstruant ce processus, Apple les oblige à faire du mauvais travail, et les programmeurs détestent cela autant qu'Apple le ferait.

Comment Apple aimerait-elle que lorsqu'elle découvre un bug sérieux dans OS X, au lieu de publier une mise à jour logicielle immédiatement, elle ait à soumettre son code à un intermédiaire qui le garde pendant un mois et le rejette ensuite parce qu'il contient une icône qu'il n'aime pas ?

En brisant le développement de logiciels, Apple obtient l'inverse de ce qu'elle voulait : la version d'une application actuellement disponible dans l'App Store a tendance à être une version ancienne et buggée. Un développeur m'a dit :

En raison de leur processus, l'App Store est plein d'applications à moitié cuites. Je fais une nouvelle version presque tous les jours que je publie aux utilisateurs bêta. La version sur l'App Store semble vieille et crade. Je suis sûr que beaucoup de développeurs se sentent de cette façon : une émotion est « Je ne suis pas vraiment fier de ce qui se trouve dans l'App Store », et elle est combinée avec l'émotion « Vraiment, c'est la faute d'Apple. »

Un autre a écrit :

Je crois qu'ils pensent que leur processus d'approbation aide les utilisateurs en assurant la qualité. En réalité, des bugs comme les nôtres passent tout le temps et il faut ensuite 4 à 8 semaines pour que ce correctif de bug soit approuvé, laissant les utilisateurs penser que les applications iPhone ne fonctionnent parfois pas. Pire pour Apple, ces applications fonctionnent parfaitement 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 : que toutes les plaintes concernant les approbations de l'App Store ne sont pas un problème grave. 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 envers eux. Pendant ce temps, l'iPhone se vend mieux que jamais. Alors pourquoi doivent-ils réparer quoi que ce soit ?

Ils s'en tirent en maltraitant les développeurs, à court terme, parce qu'ils fabriquent un matériel si génial. Je viens d'acheter un nouvel iMac 27" il y a quelques jours. C'est fabuleux. L'écran est trop brillant, et le disque est étonnamment bruyant, mais il est si beau que vous ne pouvez pas vous empêcher de vous en soucier.

Alors je l'ai acheté, mais je l'ai acheté, pour la première fois, avec des appréhensions. Je me sentais comme si j'achetais quelque chose fabriqué dans un pays avec un mauvais bilan en matière de droits de l'homme. C'était nouveau. Dans le passé, lorsque j'achetais des choses chez Apple, c'était un plaisir pur. Oh boy ! Ils font des trucs si géniaux. Cette fois, j'ai eu l'impression de faire un pacte avec le diable. Ils font des trucs si géniaux, mais ils sont tels des connards. Est-ce que je veux vraiment soutenir cette entreprise ?


Apple devrait-elle se soucier de ce que pensent des gens comme moi ? Quelle différence cela fait-il si elle aliène une petite minorité de ses utilisateurs ?

Il y a deux raisons pour lesquelles elle devrait s'en soucier. L'une est que ces utilisateurs sont les personnes qu'elle veut comme employés. Si votre entreprise semble malveillante, les meilleurs programmeurs ne travailleront pas pour vous. Cela a fait beaucoup de mal à Microsoft à partir des années 90. Les programmeurs ont commencé à avoir honte de travailler là-bas. Cela ressemblait à une trahison. Lorsque des personnes de Microsoft parlaient à d'autres programmeurs et qu'ils mentionnaient leur lieu de travail, il y avait beaucoup de blagues autodérision sur le fait d'être passé du côté obscur. Mais le vrai problème pour Microsoft n'était pas l'embarras des personnes qu'ils embauchaient. C'était les personnes qu'ils n'ont jamais eues. Et vous savez qui les a eues ? Google et Apple. Si Microsoft était l'Empire, ils étaient l'Alliance Rebelle. Et c'est en grande partie parce qu'ils ont obtenu davantage des meilleurs personnes que Google et Apple font beaucoup 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 veulent. Ils n'ont pas à travailler pour une entreprise qu'ils ont des scrupules.

Mais l'autre raison pour laquelle les programmeurs sont pointilleux, je pense, 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 embrassé « Ne soyez pas méchant » avec tant d'enthousiasme n'était pas tant pour impressionner le monde extérieur que pour se protéger contre l'arrogance. [1]

Cela a fonctionné pour Google jusqu'à présent. Ils sont devenus plus bureaucratiques, mais autrement, ils semblent être restés fidèles à leurs principes originaux. Avec Apple, cela semble moins être le cas. Lorsque vous regardez la célèbre 1984 ad maintenant, il est plus facile d'imaginer Apple comme le dictateur à l'écran que la femme avec le marteau. [2] En fait, si vous lisez le discours du dictateur, il ressemble étrangement à une prophétie de l'App Store.

Nous avons triomphé de la diffusion non princière des faits.

Nous avons créé, pour la première fois de toute l'histoire, un jardin d' idéologie pure, où chaque travailleur peut s'épanouir à l'abri des nuisibles de vérités contradictoires et confuses.

L'autre raison pour laquelle Apple devrait se soucier de ce que pensent les programmeurs d'elle est que lorsque vous vendez une plateforme, les développeurs font ou défont votre succès. Si quelqu'un devrait le savoir, c'est Apple. VisiCalc a fait l'Apple II.

Et les programmeurs construisent des applications pour les plateformes qu'ils utilisent. La plupart des applications - la plupart des startups, probablement - découlent 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'aurait pas pu se permettre un mini-ordinateur. [3] Microsoft a également commencé à créer des interpréteurs pour les petits micro-ordinateurs parce que Bill Gates et Paul Allen étaient intéressés à les utiliser. C'est une rareté pour une startup de ne pas construire quelque chose que les fondateurs utilisent.

La principale raison pour laquelle il y a autant d'applications iPhone est que de nombreux programmeurs ont des iPhones. Ils peuvent savoir, parce qu'ils l'ont lu dans un article, que Blackberry a telle ou telle part de marché. Mais dans la pratique, c'est comme si RIM n'existait pas. S'ils vont construire quelque chose, ils veulent pouvoir l'utiliser eux-mêmes, et cela signifie construire une application iPhone.

Alors les programmeurs continuent à développer des applications iPhone, même si Apple continue de les maltraiter. Ils sont comme quelqu'un coincé dans une relation abusive. Ils sont tellement attirés par l'iPhone qu'ils ne peuvent pas partir. Mais ils cherchent un moyen de s'en sortir. Un a écrit :

Bien que j'ai apprécié de développer pour l'iPhone, le contrôle qu'ils exercent sur l'App Store ne me donne pas l'envie de développer des applications comme je le voudrais. En fait, je n'ai pas l'intention de faire d'autres applications iPhone à moins que ce ne soit absolument nécessaire. [4]

Quelque chose peut-il briser ce cycle ? Aucun appareil que j'ai vu jusqu'à présent ne le pourrait. Palm et RIM n'ont aucune chance. Le seul concurrent crédible est Android. Mais Android est un orphelin ; Google ne s'en soucie pas vraiment, pas de la même manière qu'Apple se soucie de l'iPhone. Apple se soucie de l'iPhone de la même manière que Google se soucie de la recherche.


L'avenir des appareils portables est-il verrouillé par Apple ? C'est une perspective inquiétante. Ce serait un dommage d'avoir une autre monoculture sombre comme nous l'avons eue dans les années 1990. En 1995, écrire des logiciels pour les utilisateurs finaux était effectivement identique à écrire des applications Windows. Notre horreur à ce sujet était la seule chose qui nous a poussés à commencer à construire 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 l'accès mobile au Web, ils commenceraient à développer des applications pour celui-ci à la place.

Comment pourriez-vous faire un appareil que les programmeurs aimeraient plus que l'iPhone ? Il est peu probable que vous puissiez faire quelque chose de mieux conçu. Apple ne laisse aucune place à cela. Donc, cet appareil alternatif ne pourrait probablement pas gagner en termes d'attrait général. Il devrait gagner en raison de certains attraits qu'il aurait pour les programmeurs en particulier.

Une façon de séduire les programmeurs est par le biais des logiciels. Si vous pouviez penser à une application dont les programmeurs avaient besoin, mais qui serait impossible dans le monde circonscrit de l'iPhone, vous pourriez probablement les amener à changer.

Cela se produirait certainement si les programmeurs commençaient à utiliser des appareils portables comme des machines de développement - si les appareils portables remplaçaient les ordinateurs portables de la même manière que les ordinateurs portables ont remplacé les ordinateurs de bureau. Vous avez besoin de plus de contrôle sur une machine de développement qu'Apple ne vous le permet sur un iPhone.

Quelqu'un pourrait-il faire un appareil que vous transporteriez dans votre poche comme un téléphone, et qui fonctionnerait également comme une machine de développement ? Il est difficile d'imaginer à quoi il 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 aurait semblé selon les normes de 1995.

Ma machine de développement actuelle est un MacBook Air, que j'utilise avec un moniteur externe et un clavier dans mon bureau, et seul lorsque je voyage. S'il y avait une version deux fois plus petite, je la préférerais. Ce ne serait toujours pas assez petit pour être transporté partout comme un téléphone, mais nous sommes dans un facteur de 4 environ. Ce fossé est sûrement comblable. En fait, faisons-en un RFS. On recherche : Femme avec un marteau.

Notes

[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 dans la publicité de 1984 n'est pas Microsoft, soit dit en passant ; c'est IBM. IBM semblait beaucoup plus effrayant à cette époque, mais ils étaient plus amicaux avec les développeurs qu'Apple ne l'est maintenant.

[3] Il ne pouvait même pas se permettre un moniteur. C'est pourquoi l'Apple I utilisait une télévision comme moniteur.

[4] Plusieurs personnes à qui j'ai parlé ont mentionné à quel point elles aimaient le SDK iPhone. Le problème n'est pas les produits d'Apple, mais 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 la lecture des brouillons de ce texte.