Hace unos meses llegaron a mis oídos indicios de que Apple estaba pensando en publicar una versión beta de Mac OS X 10.7 para desarrolladores en el congreso WWDC de Junio. Ya no va a ocurrir. El desarrollo de Mac OS X 10.7 prosigue, aunque con un equipo reducido y con un calendario desconocido. Con un poco de lógica puedo decir que no habrá noticias sobre 10.7 este año en el WWDC, y posiblemente nada nuevo hasta el WWDC de 2011.
La atención de toda Apple ha estado centrada intensamente en una cosa: iPhone OS 41. La principal prioridad de Apple es crecer en cuota de mercado con más rapidez que Android. Cualquier cosa que no sea competencia directa con Android queda en segundo plano.
Varias de las funciones “de bandera”2 de iPhone OS 4 que Apple presentó en el evento de ayer están relacionadas directamente con este hecho.
El término “multitarea” es un cajón desastre que, en el contexto del iPhone OS 4, representa diferentes cosas. En un sistema operativo como Mac OS X es más sencillo de entender — múltiples aplicaciones (y procesos en segundo plano que pasan desapercibidos) operan de forma simultánea. Un sistema operativo como iPhone OS no puede funcionar así, y con razón. La memoria y el procesador están enormemente limitados en los dispositivos móviles comparados con los ordenadores normales.
Las aplicaciones no se ejecutan en una ventana, sino a pantalla completa. Así que cuando se sale de una aplicación y se pasa a otra nueva en iPhone OS 4, el interfaz gráfico de usuario — el interfaz visual — no va a seguirse actualizando en segundo plano. Lo que ocurrirá, si es que la aplicación está actualizada para incluir soporte para las nuevas APIs de iPhone OS 4 (que imagino que serán adoptadas por todas las aplicaciones que son mantenidas de forma activa), es que la aplicación seguirá en memoria pero dejará de ejecutarse. Al regresar a la aplicación ésta volverá a ejecutarse de nuevo, justo en el punto en el que se dejó. Pensad en una función de pausa/reanudar, en lugar de el actual modelo de iPhone OS de salir/volver a abrir.
Los ejemplos de voz sobre IP y audio en segundo plano no requieren que la aplicación se ejecute al completo mientras tanto. El modo en que este tipo de cosas funcionan en iPhone OS 4 es, más o menos, que la aplicación registra con el sistema operativo el tipo de cosas que quiere hacer en segundo plano. Cuando el usuario deja una aplicación para usar otra, la aplicación que está pasando a segundo plano recibe un evento del sistema operativo que le informa de que está a punto de ser puesta en pausa, y en ese instante tiene la ocasión de guardar su estado actual, solicitar tiempo en segundo plano para completar una operación como por ejemplo subir un archivo, y registrar ciertos hilos que seguirán realizando tareas de baja intensidad como reproducción de audio.
Tomemos por ejemplo a Pandora. Cuando está en segundo plano, lo que estará ejecutándose es un un hilo sin interfaz que simplemente reproduce audio por streaming. Sólo al reactivar Pandora — tocando el icono para abrir la aplicación completa — volverá a ejecutarse la aplicación entera.
Cuando el sistema tiene poca memoria disponible, cerrará automáticamente la aplicación pausada que lleve más tiempo sin usarse. Los usuarios normalmente no se darán cuenta de esto, salvo que cuando regresen a esa aplicación que ha sido descartada por el sistema para recuperar la memoria que usaba, puede que tarde un poco más en abrirse, y ocurrirá como hoy en día, es decir, que la propia aplicación será responsable de restaurar su contenido. Y de este modo, las aplicaciones aún deben programarse asumiendo que serán cerradas por el sistema con sólo unos instantes de preaviso.
El resultado es que cambiar entre dos o tres aplicaciones usadas recientemente resulta muy ágil. Los usuarios no tienen que pensar en conceptos como abrir y cerrar aplicaciones; ni siquiera tienen que ser conscientes de ello. Se trata de detalles de la implementación. Un usuario sólo debe pensar en abrir, o quizás mejor dicho entrar en una aplicación a la vez que ocupará toda la pantalla. Algo parecido a visitar un sitio web — uno visita las aplicaciones en el iPhone. Y ahora, para aplicaciones como Skype y Pandora, los usuarios pueden pensar en aplicaciones que pueden seguir haciendo cosas (reproducir audio, recibir llamadas entrantes de voz sobre IP) incluso aunque no estén abiertas.
No hay nada de la nueva multitarea de iPhone OS 4 que el usuario deba aprender. Puede que noten que “volver” a una aplicación recién utilizada, usando los mismos iconos de la pantalla de inicio, resulta más rápido. En su mayoría, usar aplicaciones de terceros con capacidad de funcionamiento en segundo plano será igual que usar las aplicaciones de sistema creadas por Apple que siempre han tenido este tipo de funcionalidad.
Es una forma eficaz e inteligente de hacer que el paso de una aplicación a otra sea más útil y rápido.
También es muy parecido al sistema de “multitarea” que ha existido en Android desde el principio.
Lo que entiendo sobre el modo en que funciona la multitarea en Android es que es muy parecida alo que acabo de describir para iPhone OS 4: los interfaces gráficos dejan de actualizarse (no consumiendo así tiempo de procesador) en segundo plano, pero las aplicaciones siguen presentes en memoria al pasar de una aplicación a otra, hasta que el sistema se queda sin memoria, momento en el que empieza a cerrar de forma automática y discreta las que llevan más tiempo sin usarse. Las aplicaciones pueden registrar hilos sin interfaz para “hacer cisas”, como reproducir audio. No creo que tales hilos de en segundo plano en Android estén limitados a cosas concretas como reproducción de audio y voz sobre IP como en iPhone OS 4.0, pero el modelo de multitarea de Android es bastante más parecido a los que Apple acaba de presentar para iPhone OS 4 que lo que se parece a un sistema operativo de ordenador, como Mac OS X o Windows.
Una función muy chula de Android es un listado dentro de la aplicación Ajustes que muestra en qué se ha gastado la batería desde la última carga. En el tiempo que he estado usando un Nexus One, muy poco ha sido consumido por aplicaciones en segundo plano. En el Nexus One, la carga de la batería la consume principalmente la pantalla y la red inalámbrica. Sospecho que esto se cumple también en el iPhone desde la versión 1 a la 3, y seguirá siendo así con iPhone OS 4.
Al igual que la función de copiar y pegar, era inevitable que Apple acabara añadiendo multitarea al iPhone OS. No sé si era algo planeado para este año, pero una vez que Android se convirtió en el enemigo número uno de Apple, la multitarea se convirtió en una función esencial para ponerse a su mismo nivel. Añadirla ahora elimina el primer elemento de la lista de argumentos de Android contra iPhone (y a pesar de sus parecidos con el modelo de multitarea de Android, Apple, cómo no, lo presenta como algo original e innovador).
En cuanto a las razones para que el iPhone 3G y el iPod Touch de segunda generación no dispondrán de multitarea con iPhone OS 4, es fácil de responder — estos dos dispositivos tienen sólo 128 MB de memoria RAM. El 3GS y el iPod Touch de tercera generación tienen 256 MB cada uno (el iPod Touch de 8 GB que se sigue vendiendo hoy es como el iPhone 3G — hardware de segunda generación. No permitirá multitarea con iPhone OS 4). Las aplicaciones “pausadas” en iPhone OS 4 siguen estando residentes en memoria, así que no hay forma de que funcionen con sólo 128 MB en total (parte de los cuales, recordadlo, son utilizados por el propio sistema operativo). El procesador del 3GS y los últimos iPod Touch es también más rápido, y eso es otro factor, pero creo que la memoria RAM es la principal razón.
Desde el momento en que la rivalidad entre Apple y Google se convirtió en una guerra, han crecido las especulaciones de que Apple podría poner en marcha su propio motor de búsqueda.
La lógica es sencilla. Si Apple quiere luchar contra Google, entonces se verán tentados de ir a por las joyas de la corona de Google — las búsquedas. Las búsquedas son y pueden seguir siendo siempre el servicio más popular de Google. Pero Google no gana dinero con las búsquedas. Ganan dinero con la publicidad. Si quieres darle por culo a Google, vas a por los ingresos por publicidad3
Ahora bien, es cierto que gran parte — ¿la mayoría? — de los ingresos pro publicidad de Google provienen de anuncios que se muestran junto a los resultados de búsqueda. Las búsquedas en Google generan una grandísima cantidad de ingresos publicitarios. Pero esa es una batalla de la anterior década. No tiene mucho sentido para Apple combatir a Google en las búsquedas, teniendo en cuenta la tremenda ventaja de Google en este ámbito, y la total falta de experiencia de Apple en este campo. Se tarda más en buscar algo en Mac OS X con Spotlight en el disco duro de mi MacBook Pro que lo que a Google le cuesta buscar en su índice de toda la web.
La guerra por las búsquedas es vieja. ¿Dónde está el nuevo campo de batalla para la publicidad? Una posibilidad es los dispositivos móviles — una idea que comparten Google y Apple. Y este es un campo en el que Apple es quien tiene la ventaja.
De nuevo, al igual que con la multitarea, la idea de que Apple incluyera soporte para contenidos publicitarios en iPhone OS es obvia, algo que sospecho que habrían intentado hacer tarde o temprano aunque Android no existiera. Hay una enorme cantidad de dinero en juego.
Eso sí, ahora que Android es considerada como la amenaza principal al iPhone, la publicidad móvil se ha convertido en una prioridad inmediata.
La presentación de iAds por parte de Jobs durante el evento de ayer ni siquiera disimulaba ser un que os den destinado a Google. Primero hizo hincapié en la idea de que en los dispositivos móviles, a diferencia de los de sobremesa, las búsqueda no son un buen medio para la publicidad. La idea es que en el iPhone la gente no busca, sino que utiliza aplicaciones, y por tanto el principal hueco para la publicidad en los dispositivos móviles está en las propias aplicaciones. No estoy diciendo que Jobs tenga o no razón sobre que las búsquedas no sean lo ideal para la publicidad móvil — no lo sé — pero está claro que cuando dice “búsquedas” quiere decir “búsquedas en Google”. Ese es el primer golpe contra Google.
Entonces Jobs mostró ejemplos de iAds — anuncios ricos, cinemáticos e interactivos. Parecen aplicaciones nativas de iPhone, pero están creados sólo con HTML5 (así que hay un que-os-den extra destinado a Adobe). La palabra que usó Jobs una y otra vez era emoción. Están pensados para contener diseño y emoción. Se trata de un canal publicitario que da la misma impresión que los buenos anuncios de televisión o de revistas. Golpe número dos contra Google. Puede que los anuncios de Google sean efectivos, pero carecen de emoción. Pensad en el iAd de Toy Story 3 que Jobs mostró. ¿Qué anuncio servido por Google se puede comparar con eso?
Hay una buena porción de los lectores de DF que creen firmemente que toda la publicidad es mierda. Ya habrán saltado al final del artículo. Cierta publicidad, sin importar el medio — televisión, periódicos, revistas — es basura. Pero cierta publicidad es arte. Arte comercial, por supuesto, pero arte al fin y al cabo. La publicidad online — móvil o no — ha estado en su mayoría lejos de esta categoría de anuncios. iAds es el intento de Apple de permitir la existencia de publicidad de gran categoría en dispositivos móvlies. Jobs parecía más entusiasmado con iAds que con cualquier otra cosa de la que se habló en la presentación.
Por tanto, el mensaje anti-Google de iAds fue doble: primero, las búsquedas no son buenas para la publicidad móvil; y segundo, Google — el Google lógico, con mentalidad de ingeniero — nunca creará una plataforma para la publicidad emocional como la que puede crear Apple, que se guía por el diseño. La presentación de iAds por parte de Jobs no iba dirigida a los consumidores. Iba dirigida a los creativos de la industria publicitaria — y a los desarrolladores creativos que quieren algo mejor en sus aplicaciones que un simple texto publicitario.