Adobe AIR: Cerrando la brecha entre el escritorio y la Web

5

John Warnock y Charles Geschke no solo crearon una empresa en 1982. Construyeron la infraestructura de cómo vemos la información hoy. Sistemas Adobe. Ese es el nombre adjunto al formato de documento portátil (PDF). Es el estándar para archivos compactos, lo suficientemente pequeños para enviarlos por correo electrónico pero lo suficientemente estables para imprimirlos. Las empresas confían en él para compartir documentos sin que se rompa el formato. Lo usas para leer artículos o ver fotos. Básicamente es una fotocopiadora ilimitada que se encuentra en su disco duro. Luego está la suite creativa. Ilustrador. Photoshop. En diseño. Estas herramientas permiten que cualquier persona, desde profesionales hasta aficionados, manipule imágenes y diseños. ¿Sin Photoshop? No hay gatos LOL. Internet sería mucho menos divertido.

Adobe cambió la creación de contenido. Y ahora quieren cambiar la forma en que ese contenido se encuentra en línea. El objetivo es sencillo. Haga que el escritorio y la Web se sientan como un solo lugar.

A principios de 2008, impulsaron la versión 1.0 de Adobe AIR. Es un tiempo de ejecución entre sistemas operativos. Los desarrolladores lo utilizan para agrupar tecnologías HTML, Ajax, Flash y Flex. Luego pueden implementarlas como Aplicaciones enriquecidas de Internet (RIA) directamente en el escritorio. Adobe lo vende a desarrolladores, empresas y usuarios habituales. Puedes descargarlo gratis.

¿Pero qué hace realmente? ¿Y por qué debería importarte?

Cómo las aplicaciones enriquecidas de Internet cambian su flujo de trabajo

Entonces, ¿qué es una RIA? Es una aplicación que se ve y se siente como un software de escritorio pero que está construida utilizando tecnologías web. Las aplicaciones web tradicionales están limitadas por la zona de pruebas de su navegador. Necesitan una conexión constante a Internet. Se sienten lentos.

Adobe AIR elimina esas limitaciones. Permite a los desarrolladores empaquetar su código basado en web en aplicaciones independientes. Lo instalas tú. Se lanza de forma independiente. No necesita Chrome o Firefox para ejecutarse. Accede a tus archivos locales, tu calendario, tus contactos. Se siente nativo.

Piense en Adobe Bridge. O incluso herramientas sencillas como la extensión Adobe Reader. Antes de AIR, estos eran complementos torpes o widgets web limitados. Con AIR, se convierten en verdaderas aplicaciones. Más rápido. Más suave. Compatible sin conexión.

Esto es importante porque la web nunca fue diseñada para trabajos pesados. Está diseñado para documentos y enlaces. Ahora, con Adobe AIR, puedes ejecutar aplicaciones complejas con muchos datos sin salir de tu entorno de escritorio. Obtiene el alcance de la web con el poder del software nativo.

Por qué los desarrolladores eligen Adobe AIR

Para quienes modifican los códigos, el atractivo es claro. Construyes una vez. Te despliegas en todas partes. Ventanas. MacOS. Linux. No es necesario escribir aplicaciones C++ o Java independientes para cada plataforma. Te ciñes a HTML, CSS y JavaScript.

Y no se trata sólo de portabilidad. Se trata de acceso. AIR brinda a las aplicaciones web acceso a las funciones del sistema operativo. Cuadros de diálogo de archivos. Iconos de la bandeja del sistema. Almacenamiento sin conexión. Esto cierra la brecha. Dejas de crear “sitios web que actúan como aplicaciones” y comienzas a crear “aplicaciones que se encuentran en la web”.

A las empresas les encanta. Pueden enviar actualizaciones al instante. Ya no tendrá que esperar a que TI instale parches en cada máquina. Simplemente actualice el servidor. Los usuarios obtienen la nueva versión la próxima vez que inician la aplicación.

Qué significa esto para los usuarios cotidianos

Probablemente no le importe la arquitectura del tiempo de ejecución. Te importa lo que se ejecuta en él.

Para

¿Qué hay realmente AIR debajo del capó?

Antes de profundizar en los detalles de Adobe AIR, debe dejar de lado la jerga de marketing y comprender lo que realmente significa tiempo de ejecución entre sistemas operativos. En esencia, Adobe AIR es un motor de ejecución. Piense en ello como un traductor.

Cuando escribes código, no lo haces en lenguaje de máquina: los 0 y 1 sin formato que la CPU entiende. Estás escribiendo en lenguajes de alto nivel como HTML, XML o JavaScript. El motor de ejecución toma ese código y lo traduce en instrucciones ejecutables. Sin esta capa, su computadora es sólo un ladrillo silencioso.

Considere Java. Si una aplicación está construida en Java, requiere que esté instalada la máquina virtual Java (JVM). Sin la JVM, la aplicación no se ejecuta. Es la misma lógica aquí. Adobe AIR proporciona la infraestructura necesaria para representar una interfaz gráfica de usuario (GUI) en su escritorio. No se trata sólo de ventanas e íconos; se trata de la interfaz hombre-computadora que le permite interactuar con el software mediante un mouse o un teclado. De hecho, todo su sistema operativo es esencialmente un motor de ejecución masivo, que media entre su hardware y cada aplicación que abre.

Por qué es importante el “sistema operativo cruzado”

Cuando Adobe llama a AIR una solución multiplataforma, quiere decir que puede ignorar las diferencias subyacentes del sistema operativo. No es necesario reescribir un programa que se ejecuta en macOS para que parezca nativo en Windows XP. AIR se encarga del renderizado.

Aquí es donde se diferencia marcadamente del Flash Player estándar. Flash Player vive dentro del navegador. Es un complemento. Las aplicaciones de Adobe AIR, sin embargo, se encuentran en el escritorio. No necesitan Chrome o Firefox para funcionar. Debido a que AIR incluye el procesador HTML WebKit de código abierto, puede mostrar contenido web complejo directamente en su entorno de escritorio. Cierra la brecha entre el mundo aislado del navegador y las capacidades nativas del sistema operativo.

Definiendo la AIR

A menudo escuchará a Adobe referirse a Aplicaciones enriquecidas de Internet (RIA). Este es un término amplio para aplicaciones web que parecen software de escritorio. Ofrecen alta interactividad y conectividad. Sitios como Flickr o Google Maps son ejemplos clásicos. Son atractivos pero notoriamente difíciles de programar.

Adobe AIR fue diseñado para facilitar este proceso de desarrollo. Permite a los desarrolladores tomar las mejores características de la interacción basada en web y empaquetarlas en una experiencia de escritorio independiente. ¿El objetivo? Una experiencia de usuario que parece nativa pero que conserva la conectividad de la web.

¿Quién se beneficia de Adobe AIR?

Adobe posiciona la plataforma para atender a tres grupos distintos: desarrolladores, empresas y usuarios finales.

Los desarrolladores obtienen una ventaja significativa. Como AIR admite HTML, XML y JavaScript, no necesitan aprender un lenguaje de codificación propietario. Pueden utilizar tecnologías web familiares para crear aplicaciones de escritorio. Esto reduce la barrera de entrada. Un desarrollador que sabe cómo crear un sitio web puede crear una aplicación de escritorio con una fricción mínima.

Las empresas utilizan AIR para profundizar la participación de los usuarios. Cuando un usuario puede descargar una aplicación directamente a su escritorio sin abrir un navegador, es más probable que la mantenga ejecutándose. El compromiso continuo supera la naturaleza efímera de una pestaña del navegador.

Los usuarios finales obtienen aplicaciones de más fácil acceso y con mayor capacidad de respuesta. Una vez instalado AIR, estas aplicaciones están a solo un clic de distancia. Se sienten menos como si estuvieran visitando un sitio web y más como si estuvieran ejecutando un software.

Aplicación del mundo real: eBay Desktop

No confíe en la palabra de Adobe. Mira eBay. Lanzaron una aplicación eBay Desktop construida en Adobe AIR.

¿Por qué? Porque consultar las subastas en un navegador es complicado. Tienes que actualizar o iniciar sesión constantemente. La aplicación de escritorio de eBay se ejecuta de forma independiente. Proporciona actualizaciones continuas sobre los artículos por los que está pujando. Elimina por completo la fricción del navegador. Ésta es la promesa de AIR: tomar un flujo de trabajo basado en web y optimizarlo para el entorno de escritorio.

¿Sigue siendo relevante?

El panorama ha cambiado. Si bien algunos desarrolladores aún mantienen proyectos de Adobe AIR, la tecnología ha sido reemplazada en gran medida por marcos modernos y métodos de desarrollo de aplicaciones nativos.

Si se pregunta si lo necesita hoy, la respuesta generalmente es no. No es necesario en los sistemas macOS modernos. Muchos de sus casos de uso han sido absorbidos por aplicaciones basadas en Electron o herramientas de desarrollo nativas de iOS/Android. Funcionó. Resolvió un problema específico a mediados de la década de 2000 y principios de la de 2010. Pero la web y los escritorios se han fusionado de maneras que no requerían una capa de tiempo de ejecución separada.

“Adobe AIR fue un puente. Permitió a los desarrolladores web crear aplicaciones de escritorio sin aprender código nativo. Ese puente ha sido reconstruido en su mayor parte”.

La tecnología no está muerta, pero ya no es la opción predeterminada. Para la mayoría de los usuarios, ya no es necesario instalarlo. Para los desarrolladores, es una herramienta heredada. La red siguió adelante.

El legado de Adobe AIR y la evolución de la Web

El panorama del desarrollo web ha cambiado drásticamente desde aquellos primeros experimentos. Lo que comenzó como una curiosidad (cerrar la brecha entre el navegador y el escritorio) ha evolucionado hasta convertirse en algo mucho más mundano, pero igualmente omnipresente. Ya no necesitamos un entorno de ejecución dedicado como Adobe AIR para ejecutar aplicaciones avanzadas de Internet. El propio navegador se ha convertido en la plataforma.

Pero mirar hacia atrás en la era en la que AIR prometió llevar la potencia de escritorio a las tecnologías web revela por qué la pila actual es importante. No se trataba sólo de nostalgia. Se trataba de resolver un punto de fricción específico: el acceso fuera de línea.

Cerrando la brecha antes de que PWA dominara

En 2007 y 2008, la web fue la primera en estar en línea. Si su conexión se cortó, su aplicación dejó de funcionar. Adobe AIR cambió eso al permitir a los desarrolladores empaquetar HTML, JavaScript y CSS en aplicaciones independientes que podían almacenar datos localmente. Ofreció una muestra del software del futuro, donde su aplicación web vivía en su escritorio y funcionaba sin señal.

“Adobe AIR ofrece al desarrollo web y de escritorio un soplo de aire fresco”.

Esto no fue sólo un truco. Abordó las limitaciones del EULA estándar y los jardines amurallados del software de escritorio. Permitió a los desarrolladores eludir las limitaciones de los entornos limitados de los navegadores sin dejar de utilizar los estándares web. Para los usuarios, significó aplicaciones que parecían nativas pero que fueron creadas con tecnologías web.

Por qué ocurrió el cambio

El auge de las aplicaciones web progresivas (PWA) y las API de navegador mejoradas hicieron que AIR fuera redundante. Los navegadores obtuvieron trabajadores de servicio, almacenamiento en caché y archivos de manifiesto. Podrían realizar almacenamiento en caché sin conexión, enviar notificaciones e incluso instalarlo en el escritorio sin un tiempo de ejecución separado. Adobe finalmente cambió su enfoque, reconociendo que la plataforma web se estaba poniendo al día.

Las fuentes de ese período, como la cobertura de Jacqui Cheng en Ars Technica o las primeras miradas de Ryan Paul, destacan una fase de transición. Captaron el entusiasmo de una tecnología que prometía unificar el desarrollo web y de escritorio. Sin embargo, también insinuaron los desafíos: preocupaciones de seguridad, fricciones en la instalación y la eventual obsolescencia del propio tiempo de ejecución.

Lo que aprendimos

La lección de la era AIR es clara: las plataformas convergen. Cuando una plataforma carece de una función, otra la adopta. La distinción entre “aplicación web” y “aplicación de escritorio” es cada vez más borrosa. Los usuarios esperan que sus herramientas web funcionen sin conexión, se sincronicen entre dispositivos y tengan capacidad de respuesta. Los desarrolladores esperan que una única base de código llegue a varias pantallas.

Los enlaces específicos a Cómo funciona la web semántica y Cómo funciona la infraestructura de Internet de esa época nos recuerdan que la base de estas aplicaciones es compleja. No se trata sólo de la interfaz de usuario. Se trata de cómo se mueven los datos, cómo se representan las páginas y cómo evolucionan los protocolos de seguridad.

Hoy en día, cuando construimos para la web, lo hacemos para un futuro independiente del dispositivo. El tiempo de ejecución es el navegador. La API es el sistema operativo. El desafío ya no es cerrar la brecha. Se trata de optimizar el rendimiento, la accesibilidad y la privacidad en un entorno que siempre está conectado.

Las herramientas cambian. La intención sigue siendo: brindar a los usuarios experiencias potentes y fluidas. Ya sea a través de un ejecutable independiente o de una URL en una pestaña, el objetivo es el mismo. Hemos mejorado en ocultar la maquinaria.