1603 4

Mientras medios "especializados" y generalistas repiten ciegamente la historia de "Mazapán" sin hacer ningún análisis, es importante darle una vuelta al asunto para ponerla en contraste.

La historia original de “Mazapán”, el proyecto de Apple que presentaría en la WWDC de 2018, está publicada aquí. Te recomiendo que la leas antes de seguir adelante para poner en contraste todo el asunto. Si no te apetece1 te hago un resumen rápido: Apple está trabajando en su propio sistema de aplicaciones Universales, como tiene Microsoft y también, en cierta manera, Google para Chrome OS.

El informe sin embargo no cita nada al respecto de cómo se implementaría esta plataforma, cómo funcionaría y qué ventajas y que problemas tendría. Así que voy a intentar llenar algunos huecos, que es la parte importante. Vamos punto por punto:

  • El informe cita una unificación de ambos tipos de aplicaciones para Mac e iOS y cita por encima cómo se ejecutarían estas aplicaciones, quizás, “un día” bajo un mismo procesador fabricado por Apple. Un día sin embargo es muy vago y llegados a este punto, si Apple lanza esta característica tiene que cubrir el mayor número posible de usuarios así que tiene varias opciones:
    • Apple lanza uno o varios Mac con un procesador y su propio sistema operativo asociado2, que arranca simultáneamente y se ejecuta en paralelo con macOS y el procesador Intel. A la hora de ejecutar la aplicación, el sistema elige inteligentemente qué parte de la aplicación ejecutar, si la parte iOS o la parte Mac.¿Ventajas con esto? Reducción del consumo de energía3, muchas más aplicaciones disponibles ¿Problema con esto? Es muy caro. Es carísimo en términos de implementación de hardware, de desarrollo de software. Y una pesadilla para dar soporte.
    • Apple emula4 el comportamiento de un entorno iOS para permitir la ejecución de aplicaciones iOS en un Mac. Esto le permite que la característica sea ampliamente utilizada en macOS 10.14 y un número grande de ordenadores. Es una idea interesante, refrendada por los cambios que ha estado haciendo en el código interno de macOS, migrando librerías/aplicaciones del sistema/frameworks a un lenguaje más moderno5, preparando el sistema para un entorno mixto.
    • Apple no hace nada y no toca ni el hardware de los ordenadores ni añade segundos sistemas operativos ejecutándose en paralelo: deja al developer en un entorno de desarrollo en el que las aplicaciones y los recursos para las diferentes plataformas se reúnen bajo un mismo proyecto con código compartido y luego, a la hora de compilar la aplicación, se generan dos aplicaciones separadas6 que se suben a las App Stores en un entorno común. Incluso una aplicación Universal que no lo es tanto, ya que el usuario solo descarga la parte que le corresponde para sus sistema operativo y dispositivo. Esta aproximación implica pocos cambios en la parte interna de macOS e iOS y más durante el proceso de desarrollo de código y elaboración del interfaz de la aplicación, con cambios server side usando características que ya están implementadas como la descarga parcial de recursos de una aplicación durante la primera descarga o actualizaciones, etc. Si “Mazapán” existe, ésta es una apuesta razonable sobre su implementación.
    • Al respecto de la ejecución de aplicaciones iOS sobre el Mac, que es lo que está en la cresta de ola, ¿nadie se pregunta sobre los problemas de usabilidad que causaría esto? En iOS utilizas gestos para controlar muchas características de las aplicaciones, no es cuestión de implementar soporte para un dispositivo apuntador7 y ya está. ¿Solución? El trackpad, claro, pero ¿Y los usuarios que no usan trackpad? ¿Entonces toda esta característica mayor queda fuera de uso de los usuarios de ordenadores de escritorio que no tienen o no utilizan trackpad? ¿Es que queremos ya un Gate sin levantarnos de la cama?

Bueno, ahora ya podemos seguir la conversación con más calma.

Notas

  1. Que estás en tu perfecto derecho
  2. Un iPad dentro de un Mac
  3. Muy bien para los portátiles
  4. Apple tiene mucha experiencia emulando arquitecturas para ser ejecutadas en paralelo y de forma transparente con el entorno, como era el caso de las aplicaciones PowerPC en Macs con Intel
  5. Swift
  6. unidas por un mismo código y características
  7. El ratón, en su caso
In this article


Join the Conversation

4 comments

  1. Queimacasas

    Bueno, la opción 1 casi la tienen ya, acaban de poner el T2 en el iMac Pro …

    La opción 3 significa cambiar Xcode:
    – dar soporte al nuevo modelo de compilación doble
    – dar soporte a nuevos elementos de interfaz (que solucionen el problema del dispositivo apuntador) capaces de compilarse en ambas arquitecturas en paralelo
    – dar soporte a nuevos frameworks que amparen esos elementos
    – avanzar en las capacidades de Swift

    eso ya es más que “nada”

  2. Yules

    A mí, en estos debates sobre sistemas operativos y aplicaciones, suele parecerme que la gente mira al dedo en lugar de la luna. En mi opinión el sistema operativo es un medio y no un fin en sí mismo, y las aplicaciones no funcionan gracias a Windows, a OSX, a Linux, a iOS o a Android, sino a pesar de ellos. En los albores de la popularización de la informática táctil las hordas se congratulaban porque tal o cual dispositivo podía correr Windows y ya era “de verdad”, pero después de correr Windows, ¿qué?, sí no había aplicaciones adaptadas y la usabilidad de las de escritorio era casi nula.

    Sí tú haces un trabajo en Windows y se lo pasas a un colega que puede abrirlo sin notar ninguna pérdida en cualquier otro sistema y modificarlo y devolvértelo sin pérdidas, qué lo mismo da el sistema operativo? ¿Por qué la aplicación tiene que ser la misma, salvo de nombre? Desde luego el hardware o los dispositivos de entrada impondrían sus limitaciones, de modo que en una táblet se trabajaría más lento y/o con la ayuda de otros periféricos, pero en el resultado no tendría por qué notarse la diferencia.

    Yo he sido “profesional” con un Pentium 120 mhz con 64 megas de RAM y posteriormente con un PowerPC a 300 mhz con 96 megas de RAM. No quisiera volver a aquellos tiempos, pero me parece que la potencia que hoy en día puede ofrecer una táblet no tendría por qué ser el problema. Evidentemente sería más cómodo hacer el grueso del trabajo en una Workstation, Torre o Portátil, pero no tendría que ser necesario cargar con ellos para hacer modificaciones sobre el terreno o en la sede del cliente o en un medio de transporte y para eso tendría que ser indiferente sobre qué sistema operativo corriera la aplicación que generó o modificó los documentos y, por supuesto, que fuera o no multiplataforma, sino que el archivo fuera universalmente visible y editable sin pérdidas.

  3. MagoBlanco

    La idea de Aplicaciones Universales, yo ya la había leído en Linux, hace como 10 años… en ese entonces yo había cambiado Windows x Linux… cuando surgieron los móviles Android, empezó a hablarse de ello en forma masiva, dentro de la comunidad GNU-Linux, ya que Android era un Linux… pero al final no se llegó a plasmarse de manera masiva… hubo buenos intentos, Motorola tuvo un móvil, con procesador Intel Atom, que se “convertía” en PC-Linux al conectarla a un dock y monitor… pero la idea no tuvo éxito… y hace poco, Ubuntu tuvo su intentona con un móvil que hacía lo mismo, que tampoco llegó a masificarse (de hecho, Ubuntu fue una de las primeras en en tener en el escritorio una interfaz muy similar a las tablets, de cara a este paradigma, que tuvo muchísimos detractores, yo entre ellos, y que creo (no uso Linux desde que me pasé a Mac, hace unos 5 años) aún sigue usando… el problema, de cara al usuario, es la usabilidad y los distintos modos, no equivalentes entre sí, como ya han señalado… si un mismo programa, no hace lo mismo y de la misma manera, en los distintos dispositivos, no se percibe como el mismo programa (desde el punto de vista de un usuario no geek… de hecho, yo utilizo Pages o Numbers desde mi iMac, iPad o iPhone… y no es lo mismo)

    Saludos a todos y Felices Fiestas!!!!

    MB

  4. Santiago

    Google no sé, pero Windows tiene aplicaciones universales -pocas, porque ha dejado caer el negocio del móvil- porque tiene un solo sistema operativo para todo (Windows 10) de manera que es lo mismo tener un PC de torre, una tableta o un móvil (en fase de extinción hasta que salga el Surface Phone, si sale) que es la forma lógica de hacer las cosas. De otra manera te expones a fraccionar los sistemas y que sea todo una locura, como pasa con Android.

    Apple siempre se ha distinguido por ser un sistema cerrado y me sorprendería que hiciese emulaciones u otras ñapas como las que se exponen. Desincentivaría a los desarrolladores y le crearía un dolor de cabeza con las distintas actualizaciones y optimizaciones.

    Esperemos que haga lo correcto y simplifique su vida y la de sus usuarios.