Loading...

EL ERROR DE APPLE

Original

November 2009

No creo que Apple se dé cuenta de lo mal que funciona el proceso de aprobación de la App Store. O mejor dicho, no creo que se den cuenta de lo mucho que importa que esté roto.

La forma en que Apple gestiona la App Store ha dañado su reputación con los programadores más que cualquier otra cosa que hayan hecho. Su reputación con los programadores solía ser excelente. Solía ​​ser la queja más común que se escuchaba acerca de Apple era que sus fanáticos los admiraban demasiado sin crítica. La App Store ha cambiado eso. Ahora muchos programadores han comenzado a ver a Apple como malvada.

¿Cuánto de la buena voluntad que Apple alguna vez tuvo con los programadores han perdido por la App Store? ¿Un tercio? ¿La mitad? Y eso es solo hasta ahora. La App Store es una fuga continua de karma.


¿Cómo llegó Apple a este lío? Su problema fundamental es que no entienden el software.

Tratan las aplicaciones de iPhone de la misma manera que tratan la música que venden a través de iTunes. Apple es el canal; poseen al usuario; si quieres llegar a los usuarios, lo haces en sus términos. Las discográficas estuvieron de acuerdo, a regañadientes. Pero este modelo no funciona para el software. No funciona para que un intermediario sea dueño del usuario. El negocio del software aprendió eso a principios de la década de 1980, cuando empresas como VisiCorp demostraron que aunque las palabras "software" y "editor" encajan, los conceptos subyacentes no. El software no es como la música o los libros. Es demasiado complejo para que un tercero actúe como intermediario entre el desarrollador y el usuario. Y sin embargo, eso es lo que Apple está intentando ser con la App Store: un editor de software. Y uno particularmente arrogante a eso, con gustos delicados y un estilo de la casa rígidamente impuesto.

Si la edición de software no funcionó en 1980, funciona aún menos ahora que el desarrollo de software ha evolucionado de un pequeño número de grandes lanzamientos a un flujo constante de pequeños. Pero Apple tampoco entiende eso. Su modelo de desarrollo de producto se deriva del hardware. Trabajan en algo hasta que creen que está terminado, luego lo lanzan. Tienes que hacer eso con el hardware, pero porque el software es tan fácil de cambiar, su diseño puede beneficiarse de la evolución. La forma estándar de desarrollar aplicaciones ahora es lanzar rápido e iterar. Lo que significa que es un desastre tener largos y aleatorios retrasos cada vez que lanzas una nueva versión.

Aparentemente, la actitud de Apple es que los desarrolladores deberían ser más cuidadosos cuando envían una nueva versión a la App Store. Ellos dirían eso. Pero por poderosos que sean, no son lo suficientemente poderosos como para devolver la evolución de la tecnología. Los programadores no usan lanzar-rápido-y-iterar por pereza. Lo utilizan porque produce los mejores resultados. Al obstaculizar ese proceso, Apple los está haciendo hacer un mal trabajo, y a los programadores les disgusta tanto como a Apple.

¿Cómo le gustaría a Apple si cuando descubrieran un error grave en OS X, en lugar de lanzar una actualización de software de inmediato, tuvieran que enviar su código a un intermediario que lo dejara reposar durante un mes y luego lo rechazara porque contenía un icono que no les gustaba?

Al romper el desarrollo de software, Apple obtiene lo contrario de lo que pretendía: la versión de una aplicación actualmente disponible en la App Store tiende a ser una vieja y con errores. Un desarrollador me dijo:

Como resultado de su proceso, la App Store está llena de aplicaciones a medio hacer. Hago una nueva versión casi todos los días que publico a los usuarios beta. La versión en la App Store se siente vieja y horrible. Estoy seguro de que muchos desarrolladores se sienten así: una emoción es "No estoy realmente orgulloso de lo que hay en la App Store", y está combinado con la emoción "En realidad, es culpa de Apple".

Otro escribió:

Creo que ellos piensan que su proceso de aprobación ayuda a los usuarios al garantizar la calidad. En realidad, errores como los nuestros se filtran todo el tiempo y luego puede llevar de 4 a 8 semanas obtener esa corrección de errores aprobada, dejando a los usuarios pensando que las aplicaciones de iPhone a veces simplemente no funcionan. Peor aún para Apple, estas aplicaciones funcionan perfectamente en otras plataformas que tienen procesos de aprobación inmediatos.

En realidad, supongo que Apple tiene un tercer concepto erróneo: que todos los reclamos sobre las aprobaciones de la App Store no son un problema grave. Deben escuchar a los desarrolladores quejándose. Pero los socios y proveedores siempre se quejan. Sería una mala señal si no lo hicieran; significaría que estás siendo demasiado fácil con ellos. Mientras tanto, el iPhone se está vendiendo mejor que nunca. Entonces, ¿por qué necesitan arreglar algo?

Se salen con la suya maltratando a los desarrolladores, a corto plazo, porque hacen un hardware tan bueno. Acabo de comprar un nuevo iMac de 27" un par de días atrás. Es fabuloso. La pantalla es demasiado brillante y la el disco es sorprendentemente ruidoso, pero es tan bonito que no puedes hacerte que te importe.

Así que lo compré, pero lo compré, por primera vez, con recelo. Sentí lo que sentiría comprando algo hecho en un país con un mal historial de derechos humanos. Eso fue nuevo. En el pasado, cuando compraba cosas de Apple era un placer absoluto. ¡Qué bueno! Hacen cosas tan geniales. Esta vez se sintió como un trato con el diablo. Hacen cosas tan geniales, pero son unos cretinos. ¿Realmente quiero apoyar a esta empresa?


¿Debería importarles a Apple lo que gente como yo piensa? ¿Qué diferencia hace si alienan a una pequeña minoría de sus usuarios?

Hay un par de razones por las que deberían preocuparse. Una es que estos usuarios son las personas que quieren como empleados. Si tu empresa parece malvada, los mejores programadores no trabajarán para ti. Eso le hizo daño a Microsoft mucho a partir de los 90. Los programadores empezaron a sentirse incómodos sobre trabajar allí. Parecía una venta. Cuando la gente de Microsoft estaba hablando con otros programadores y mencionaban dónde trabajaban, había muchos chistes autocríticas sobre haber ido al lado oscuro. Pero el verdadero problema para Microsoft no era la vergüenza de la gente que contrataron. Eran las personas que nunca obtuvieron. ¿Y sabes quién los consiguió? Google y Apple. Si Microsoft fuera el Imperio, ellos eran la Alianza Rebelde. Y es en gran medida porque obtuvieron más de las mejores personas que Google y Apple lo están haciendo mucho mejor que Microsoft hoy.

¿Por qué los programadores son tan quisquillosos con la moral de sus empleadores? En parte porque pueden permitírselo. Los mejores programadores pueden trabajar donde quieran. No tienen que trabajar para una empresa que tengan reparos.

Pero la otra razón por la que los programadores son quisquillosos, creo, es que el mal engendra estupidez. Una organización que gana ejerciendo el poder comienza a perder la capacidad de ganar haciendo mejor trabajo. Y no es divertido para una persona inteligente trabajar en un lugar donde las mejores ideas no son las que ganan. Creo que la razón por la que Google abrazó "No seas malvado" con tanto entusiasmo no fue tanto para impresionar al mundo exterior como para inmunizarse contra la arrogancia. [1]

Eso ha funcionado para Google hasta ahora. Se han vuelto más burocráticos, pero por lo demás parecen haberse mantenido fieles a sus principios originales. Con Apple parece que es menos el caso. Cuando ves el famoso 1984 ad ahora, es más fácil imaginar a Apple como el dictador en la pantalla que la mujer con el martillo. [2] De hecho, si lees el discurso del dictador suena inquietantemente como un profecía de la App Store.

Hemos triunfado sobre la diseminación sin principios de los hechos.

Hemos creado, por primera vez en toda la historia, un jardín de pura ideología, donde cada trabajador puede florecer a salvo de las plagas de verdades contradictorias y confusas.

La otra razón por la que a Apple debería importarle lo que los programadores piensen de ellos es que cuando vendes una plataforma, los desarrolladores te hacen o te rompen. Si alguien debería saber esto, Apple debería. VisiCalc hizo la Apple II.

Y los programadores construyen aplicaciones para las plataformas que utilizan. La mayoría de las aplicaciones, la mayoría de las nuevas empresas, probablemente, surgen de proyectos personales. Apple lo hizo. Apple hizo microcomputadoras porque eso es lo que Steve Wozniak quería para sí mismo. No podía permitirse una minicomputadora. [3] Microsoft también comenzó a crear intérpretes para pequeñas microcomputadoras porque Bill Gates y Paul Allen estaban interesados en usarlos. Es un inicio raro que no construya algo que los fundadores usen.

La razón principal por la que hay tantas aplicaciones de iPhone es que muchos programadores tienen iPhones. Pueden saber, porque lo leyeron en un artículo, que Blackberry tiene tal y tal cuota de mercado. Pero en la práctica es como si RIM no existiera. Si van a construir algo, quieren poder usarlo ellos mismos, y eso significa construir una aplicación de iPhone.

Por lo tanto, los programadores continúan desarrollando aplicaciones de iPhone, aunque Apple continúa maltratándolos. Son como alguien atrapado en una relación abusiva. Están tan atraídos por el iPhone que no pueden irse. Pero están buscando una salida. Uno escribió:

Si bien disfruté desarrollando para el iPhone, el control que ejercen sobre la App Store no me da la motivación para desarrollar aplicaciones como me gustaría. De hecho, no tengo la intención de hacer más aplicaciones de iPhone a menos que sea absolutamente necesario. [4]

¿Puede algo romper este ciclo? Ningún dispositivo que haya visto hasta ahora podría. Palm y RIM no tienen esperanza. El único contendiente creíble es Android. Pero Android es un huérfano; a Google realmente no le importa, no como a Apple le importa el iPhone. Apple se preocupa por el iPhone como Google se preocupa por la búsqueda.


¿Es el futuro de los dispositivos portátiles uno bloqueado por Apple? Es una perspectiva preocupante. Sería una pena tener otra sombría monocultura como la que tuvimos en la década de 1990. En 1995, escribir software para usuarios finales era efectivamente idéntico a escribir Windows aplicaciones. Nuestro horror a esa perspectiva fue lo único más grande cosa que nos impulsó a comenzar a construir aplicaciones web.

Al menos ahora sabemos lo que se necesitaría para romper el bloqueo de Apple. Tendrías que sacar los iPhones de las manos de los programadores. Si los programadores usaban algún otro dispositivo para el acceso móvil a la web, comenzarían a desarrollar aplicaciones para eso en su lugar.

¿Cómo podrías hacer un dispositivo que a los programadores les guste más que el iPhone? Es poco probable que puedas hacer algo mejor diseñado. Apple no deja espacio allí. Entonces, este dispositivo alternativo probablemente no podría ganar por el atractivo general. Tendría que ganar por la virtud de alguna atractivo que tenía para los programadores específicamente.

Una forma de atraer a los programadores es con el software. Si pudieras pensar en una aplicación que los programadores tuvieran que tener, pero eso sería imposible en el mundo circunscrito del iPhone, presumiblemente podrías hacer que cambiaran.

Eso definitivamente sucedería si los programadores comenzaran a usar dispositivos portátiles como máquinas de desarrollo, si los dispositivos portátiles reemplazaran las computadoras portátiles como las computadoras portátiles reemplazaron las computadoras de escritorio. Necesitas más control de una máquina de desarrollo de lo que Apple te permite tener sobre un iPhone.

¿Podría alguien hacer un dispositivo que llevarías en el bolsillo como un teléfono, y sin embargo también funcionaría como una máquina de desarrollo? Es difícil imaginar cómo se vería. Pero he aprendido a nunca decir nunca sobre la tecnología. Un dispositivo del tamaño de un teléfono que funcionaría como una máquina de desarrollo no es más milagroso para los presentes estándares de lo que el iPhone en sí mismo habría parecido para los estándares de 1995.

Mi máquina de desarrollo actual es una MacBook Air, que utilizo con un monitor externo y un teclado en mi oficina, y por sí misma cuando viajando. Si hubiera una versión de la mitad del tamaño, la preferiría. Eso todavía no sería lo suficientemente pequeño como para llevarlo a todas partes como un teléfono, pero estamos dentro de un factor de 4 aproximadamente. Seguramente esa brecha es superable. De hecho, hagámoslo un RFS. Se busca: Mujer con martillo.

Notas

[1] Cuando Google adoptó "No seas malvado", aún eran tan pequeños que nadie habría esperado que lo fueran todavía.

[2] El dictador en el anuncio de 1984 no es Microsoft, por cierto; es IBM. IBM parecía mucho más aterradora en aquellos días, pero fueron más amigables con los desarrolladores de lo que es Apple ahora.

[3] Ni siquiera podía permitirse un monitor. Es por eso que el Apple Yo usé un televisor como monitor.

[4] Varias personas con las que hablé mencionaron cuánto les gustó el iPhone SDK. El problema no son los productos de Apple, sino sus políticas. Afortunadamente, las políticas son software; Apple puede cambiarlas instantáneamente si quieren. Útil eso, ¿verdad?

Gracias a 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 y Jared Tame por leer borradores de esto.