PUPPETS
Nuevas interfaces
humano-software
slides.com/aquigorka/puppets/live
Agenda
- Introducción
- Objetivo propuesto
- Resultados
- Conclusiones

Introducción
La evolución del software no ha incluido nuevas dinámicas en la forma en la que las personas interactúan con las aplicaciones.


1. La manera con la que se interactúa con cualquier tipo de software se limita por las capacidades de los mismos dispositivos con los que controlamos dicho software.
Problemas
2. Si no se interactúa con tal software a través de nuevas interfaces tampoco veremos nuevas necesidades que generen nuevos casos de uso y a su vez, nuevas interfaces.
In computing, an interface is a shared boundary across which two separate components of a computer system exchange information.
The exchange can be between software, computer hardware, peripheral devices, humans and combinations of these.

Definamos interfaz
Los desarrolladores de consolas de videojuegos son hoy en día los principales impulsores de innovaciones en este campo.



Contexto
Gracias a los avances en los navegadores y las nuevas bibliotecas de API para JavaScript es ya es posible este tipo de desarrollos para web.



Oportunidad
Propuesta
Crear un sistema que implementa una nueva interfaz de control remoto desde un smartphone a un software que ejecuta una marioneta virtual en 3D.



Smartphone
Control remoto
Sensor de orientación
Datos en tiempo real
Web browser
Nuevas API's HTML5
Gráficas 3D
Simulación de física con datos en tiempo real

Componentes
Módulos
Theater
Puppeteer
No Strings Attached
Características
Independientes
Reutilización de código
Microservicios

Arquitectura
Resultados
Una marioneta virtual controlada con el smartphone y la publicación del código fuente en GitHub.

Demo
Github

Conclusiones
La propuesta de una nueva interfaz humano-software para Internet es una realidad concreta con una prueba concepto pública que permite demostrar el alcance de la tecnología.

Limitaciones
1. La comunicación cliente a cliente evita utilizar un servidor para la comunicación de datos, pero de todas formas es necesario un servidor para que los clientes establezcan una comunicación.
2. Existen movimientos posibles del smartphone que fueron incoherentes en la simulación de física y dibujo de la marioneta.
Mejoras
1. La marioneta aparece en su forma más austera como bloques rectangulares o cartones.
2. Movimientos que no fueron parte de este sistema, tales como movimientos de la misma barra de control sobre los ejes dimensionales.
3. Es necesario que las dependencias se hayan publicado en los repositorios del gestor de módulos (npm) de lo contrario se tendrán que agregar como dependencias globales.
4. Testing. Al agregar nuevas funciones no se van a generar errores sobre el sistema y las funcionalidades ya existentes.
Gracias
- Jorge Ludlow
- gorka@aquigorka.com
- http://show.puppets.life/theater/
- https://github.com/AquiGorka/puppets
PUPPETS
By aquigorka
PUPPETS
- 524