Tiempo de lectura: 5 minutos

Prólogo

No ha sido fácil, pero por fin hemos conseguido inaugurar este blog. Y queremos hacerlo con una primera entrada que, esperando que sea un primer paso de muchos, nos ayude a proyectar (al menos una parte de) lo que hacemos en Gloin, tratando de hacer justicia a nuestro espíritu por compartir con la comunidad el (des)conocimiento que generamos en nuestro día a día. Esperamos que os sea provechoso.

El equipo de Gloin.

Introducción

Para explicar adecuadamente qué es Pathos primero hay que explicar de dónde viene Gloin y por qué participamos todos los años en la Noche Europea de los Investigadores, en la Escuela Politécnica de Cáceres, campus perteneciente a la Universidad de Extremadura.

Como empresa surgida del seno de la Escuela Politécnica de la Universidad de Extremadura, fundada por tres de sus profesores, en Gloin mantenemos una estrecha relación con el mundo académico, participando y apoyando muchas de las actividades que se organizan allí, como la Noche Europea de los Investigadores, evento tipo “jornada de puertas abiertas” un tanto especial, donde los grupos de investigación participantes organizan actividades divulgativas mediante talleres o presentaciones prácticas acerca de sus líneas de investigación, normalmente en un formato distendido y apto para todos los públicos.

En nuestro caso, a pesar de no ser grupo de investigación, sí somos una empresa que desarrolla proyectos I+D+i en colaboración con la Universidad, y cada año nos reservan un espacio para dar a conocer alguna de las novedades en las que estamos trabajando.

Noche Europea de los Investigadores

Ediciones 2014-2017

En ediciones pasadas siempre habíamos montado una especie de gymkhana 2.0 en la que los asistentes participaban instalándose una app que desarrollamos explícitamente para el evento. Después la actividad consistía en recorrer diferentes zonas del campus en el orden en el que la aplicación indicaba de forma aleatoria, y ubicando al asistente mediante balizas bluetooth (beacons) en cada zona, los tiempos quedaban anotados en un marcador controlado por una aplicación web que finalmente daba acceso al podio al más rápido en terminar el recorrido. Niños y mayores corriendo por todo el campus, ¡divertidísimo!

Nuestra intención con ese formato era ilustrar el tipo de desarrollos que hacemos, donde estudiamos y combinamos interacción entre personas, dispositivos móviles, y elementos externos (beacons), así como el tratamiento de la información registrada, su análisis, y su visualización mediante una aplicación web.

Edición 2018

Para esta edición decidimos que queríamos crear algo nuevo y abandonar el formato anterior. Para ello, antes de nada, estudiamos la situación y la lista de deseos era más o menos así:

  1. Queríamos explorar tecnologías (hardware y software) que no conociésemos para evaluarlas y adquirir experiencia para futuros desarrollos.
  2. Queríamos desarrollar algo que involucrase a personas, móviles, dispositivos IoT abiertos (Arduino/Raspberry Pi), y aplicaciones web.
  3. Queríamos que la dinámica de actividad fuese 5% informativa, 95% práctica (o en ese rango aproximadamente).

Por otro lado, la realidad de elaborar algo con esas premisas nos indicaba que:

  1. Desarrollar algo nuevo nos llevaría tiempo y esfuerzo considerable, inevitablemente.
  2. Tendríamos que asumir tiempo personal fuera del horario laboral para desarrollar el proyecto.
  3. Una vez nos hubiésemos comprometido con la organización de la actividad, habría que tener el proyecto acabado en la fecha acordada, sí o sí.

Aún así, decidimos seguir adelante, a todos nos hacía ilusión comenzar algo nuevo juntos.

Pathos: una aventura físico-digital

Primeras ideas

Nos costó ponerlo en pie, pero tras una sesión de brainstorming donde un par de cañas ayudaron bastante a lanzar varias ideas locas (que luego resultó que alguna tenía cierto sentido), obtuvimos una primera definición de lo que queríamos hacer.

A partir de esta idea, comenzamos a esbozar una visión general de lo que creíamos que sería un sistema que soportase ese concepto, teniendo en cuenta los diferentes actores, roles, dispositivos, componentes, flujos de información, y la conexión entre todos ellos.

Descripción de la actividad

La actividad básicamente consiste en resolver una serie de puzles basados en placas Arduino gracias a diferentes pistas que los jugadores obtendrán a través de una app que deben instalar en su dispositivo móvil (Android). Tras registrarse en la misma, y una vez el organizador dé comienzo una nueva partida, los jugadores podrán buscar y escanear códigos QR (pegatinas) dispersos por diferentes localizaciones cercanas que les darán diferentes objetos (pistas) para avanzar en la resolución de cada puzle, y la resolución de cada uno de ellos le aportará un fragmento de un código final con el que podrá terminar la partida, obteniendo una puntuación basada en el tiempo total empleado en llegar al final.

Diseño general y componentes del proyecto

Tras varias pensadas e idas de pinza (donde llegábamos a construir poco menos que un universo virtual al nivel de Matrix), acabamos consensuando un escenario un poco más modesto, donde el diagrama de componentes y actores quedó simplificado a algo parecido a lo siguiente:Como no sólo de diseños de sistemas vive el ser humano, y dado que todo esto tenía como objetivo desarrollar una actividad de cara al público, había que considerar trabajo no técnico para:

  • Desarrollar una “historia” o contexto con cierto sentido e hilo conductor donde ubicar las acciones a realizar por los usuarios
  • Preparar las diferentes ubicaciones (edificios de la Escuela Politécnica) dentro del espacio físico para relacionarlas con los escenarios virtuales de juego
  • Definir las rutas y lugares donde colocar los códigos QR que deberán escanear los usuarios para avanzar con el juego
  • Buscar toda la cacharrería necesaria para montar los dispositivos (cajas, luces, pantallas, botones, cables, sensores…) con los que deberán interactuar los usuarios

Dicho esto, planificamos llevar a cabo las siguientes tareas principales:

  • Diseñar 4 tipos diferentes de puzles basados en una placa Arduino con diferentes elementos conectados con los que interactuar: sensores, botones, pantalla y sonido
  • Desarrollar la aplicación web que permitirá gestionar toda la información relativa al juego y sus elementos: jugadores, códigos QR, resolución de puzles, ubicaciones, objetos, descripciones, progreso…
  • Desarrollar una API REST con la que deberá interaccionar la aplicación móvil para leer/escribir información del juego y del jugador
  • Diseñar un modelo de datos que soporte toda la información y flujos de datos del juego
  • Desarrollar una aplicación móvil (Android) con diferentes funcionalidades:
    • Registro de usuarios
    • Inicio de nueva partida
    • Escaneado y validación de QR
    • Gestión de inventario de objetos
    • Validación de códigos de avance del juego
    • Introducción de código final

Desgranamos algunas tareas en subtareas más simples, nos dividimos el trabajo y nos pusimos manos a la obra.

Resultados y conclusiones

Tras las múltiples incidencias que fueron surgiendo durante el transcurso del desarrollo, donde hubo que simplificar, reorganizar, probar, refactorizar, soldar, correr, atornillar, reír o sudar, según quién y cómo, el proyecto se consiguió terminar a tiempo para el día planificado, y conseguimos llevar a cabo la actividad con un éxito razonable.

En cuanto a los números, según el tracking del proyecto llevado con Jira, empleamos un esfuerzo total de ~5 semanas de trabajo (25 días, 200 horas) en desarrollar todas las tareas descritas anteriormente.

Puede parecer mucho o poco, según se valore por un lado el coste económico de esas horas empleadas en algo no productivo o, por otro, la experiencia vivida como equipo, el conocimiento adquirido, los resultados tangibles e intangibles (código fuente y productos desarrollados), o las sensaciones de emoción de los participantes en la Noche Europea de los Investigadores. Pero sobre todo, nosotros nos quedamos con la grandísima satisfacción de haber creado una experiencia con la que niños y mayores han podido disfrutar, aunque haya sido sólo durante unas horas. Sólo por eso ya ha merecido la pena.

Y, quién sabe, puede que incluso nos animemos a preparar algo similar para esta edición de 2019… 😉

Próximamente iremos publicando información y artículos dedicados para cada uno de los elementos y su código fuente, comenzando con el firmware y diseño de los 4 puzles Arduino implementados, así como un vídeo del recorrido en primera persona de una partida al completo.

Galerías de fotos

Para ilustrar el proyecto y cómo fue su resultado, incluimos algunas fotos tomadas durante la fase de desarrollo y la noche de la actividad.

Making of…

 

Noche de los investigadores

Deja un comentario