Aplicaciones web progresivas

Aplicaciones web progresivas, el retorno de la web al móvil

Durante años los sitios web ha sido relegados en los dispositivos móviles sobre las apps nativas debido a problemas de rendimiento, compatibilidad y, sobre todo, de conectividad. Las aplicaciones web progresivas (progressive web apps) prometen resolver estos problemas.

Las aplicaciones web progresivas (progressive web apps) son un acercamiento al desarrollo de apps para móviles que combinan lo mejor de la web y lo mejor de las apps nativas. Estas nuevas web apps son útiles para sus usuarios desde la primera visita en un navegador web, sin necesidad de instalar nada más.

A medida que el usuario crea una relación con la app de manera progresiva, ésta se vuelve más poderosa y útil: carga rápidamente, incluso en redes lentas o cuando el dispositivo está desconectado, puede enviar notificaciones, tiene un icono en la pantalla del móvil y funciona a pantalla completa.

Funcionamiento de una app web progresiva

Una aplicación web progresiva es:

  • Estándar – utiliza la misma plataforma y tecnología que se utiliza para crear páginas web: HTML, CSS y Javascript.
  • Progresiva (¡obvio!) – funciona para todos los usuarios, independientemente de cuál navegador web o sistema operativo utilice, porque está construída para mejorar progresivamente desde el principio.
  • Responsiva – se ajusta a cualquier resolución y formato de pantalla: escritorio, móviles, tabletas, televisiones o lo que sea.
  • Independiente de la conexión – está mejorada con service workers para funcionar sin conexión o en redes lentas con conexiones intermitentes.
  • Como una app nativa – el usuario la usará como una app, con soporte para navegación e interacción con gestos.
  • Fresca – siempre estará actualizada gracias al proceso automático de actualización del service worker.
  • Segura – trabaja sobre HTTPS para prevenir que alguien intercepte datos y para asegurarse de que el contenido no ha sido manipulado por otros.
  • Descubrible – es identificable como una “aplicación” gracias al manifiesto de la W3C y al registro de funciones del service worker, permitiendo a los buscadores web encontrarlas.
  • Interactiva – hace fácil interactuar con ella incluso cuando está cerrada con características como notificaciones tipo push.
  • Instalable – le permite a sus usuarios crear accesos directos en la pantalla de su teléfono sin necesidad de una tienda de apps.
  • Enlazable – se pueden compartir fácilmente usando su dirección en la web (URL) y no requiere procesos de instalación complejos.

Ya existen casos de empresas que han comenzado a implementar apps web progresivas, como AirBerlin o Flipkart con resultados bien documentados en mejoras de experiencia de usuario, retención y conversión.

Apps web progresivas

Google creó un taller para aprender a crear aplicaciones web progresivas desde cero, incluyendo consideraciones de diseño y detalles de implementación para asegurar que tus web apps cumplan todos los principios que mencioné arriba.

Las aplicaciones web progresivas son una oportunidad para regresar a la web su importancia dentro de dispositivos móviles -o en cualquier otro dispositivo-, y de romper los problemas y  dependencias de compatibilidad que tienen las apps nativas.

Consultor en experiencia de usuario, developer, conferencista, escritor y emprendedor. Trabaja en Tesseract Space, es Google Expert en UX/UI, Microsoft Regional Director y co-fundador de UX Nights.

Publicado por

Mauricio Angulo S.

Consultor en experiencia de usuario, developer, conferencista, escritor y emprendedor. Trabaja en Tesseract Space, es Google Expert en UX/UI, Microsoft Regional Director y co-fundador de UX Nights.

  • Felipe Ojeda

    Muchas gracias por la información

  • Lorenzo Jiménez

    Según lo que he leído, este nuevo modelo de generación de aplicaciones llega a costar hasta 10 veces más que las aplicaciones web. ¿Las PWA son las respuesta de Google para Cordova o IONIC?

    • ¡Hola Lorenzo! Como siempre, depende. Las Aplicaciones Web Progresiva (PWAs) solo son apps en el sentido de que pueden funcionar en entornos desconectados o con conexiones de datos muy lentas, además de otras características, pero aún tienen mucho camino que recorrer para competir lado a lado con apps nativas, especialmente en el acceso a los sensores del hardware (aunque ya hay una especificación parte de la Physical Wweb para conectar sitio web a dispositivos Bluetooth). El desarrollo de una PWA puede ser más caro que una app nativa dependiendo de las habilidades del equipo de desarrollo para usar JavaScript contra otros lenguajes como Java o Swift, pero para cosas sencillas debería ser incluso más rápido y barato. Las PWA no son ua respuesta a Cordoba o a Ionic, sino un esfuerzo para mantener la plataforma web útil y relevante en dispositivos móviles. A diferencia de las apps producidas en Cordoba o Ionic -entre otras-, una PWA no se publica en una tienda de apps, y tienen un enfoque diferente, aunque es posible que las PWAs puedan ser una opción al considerar desarrollar apps sencillas.

    • ¡Hola Lorenzo! Como siempre, depende. Las Aplicaciones Web Progresiva (PWAs) solo son apps en el sentido de que pueden funcionar en entornos desconectados o con conexiones de datos muy lentas, además de otras características, pero aún tienen mucho camino que recorrer para competir lado a lado con apps nativas, especialmente en el acceso a los sensores del hardware (aunque ya hay una especificación parte de la Physical Wweb para conectar sitio web a dispositivos Bluetooth).

      El desarrollo de una PWA puede ser más caro que una app nativa dependiendo de las habilidades del equipo de desarrollo para usar JavaScript contra otros lenguajes como Java o Swift, pero para cosas sencillas debería ser incluso más rápido y barato. Las PWA no son ua respuesta a Cordoba o a Ionic, sino un esfuerzo para mantener la plataforma web útil y relevante en dispositivos móviles. A diferencia de las apps producidas en Cordoba o Ionic -entre otras-, una PWA no se publica en una tienda de apps, y tienen un enfoque diferente, aunque es posible que las PWAs puedan ser una opción al considerar desarrollar apps sencillas.

      • Lorenzo Jiménez

        Excelente respuesta, muchas gracias.