Veo hoy en la TV que los nuevos objetos conectados amenazan con rodearnos. Son mochilas, tenedores, cepillos, sartenes, hueveras (?) que gracias a estar conectados a Internet se han transformado radicalmente. Se han convertido en una muy fea versión futurista de sus hermanos anteriores, desarrollando nuevas pantallas, botones, luces, altavoces y líneas aerodinámicas (algo que estaba necesitando a gritos mi taza de café) que los ‘mejoran’. Los dispositivos del siglo XXI, afirman sus creadores.
Estos objetos han mutado, y se presentan como una super-versión de sus antepasados. Y por supuesto todos están cómodamente controlados a través de una app en el teléfono móvil, que es la versión moderna del portero de esa discoteca que es Internet.
Debe de ser que los ingenieros no han seguido las tres reglas:
- No exponer circuitos a luz intensa
- No dejar que se mojen
- No darles de comer después de medianoche
Si las cosas fueran pequeñas, peludas y pudieran hablar, dudo mucho que quisieran evolucionar de esa forma. Necesitan conexión a Internet para comunicarse, pero no necesitan cambiar radicalmente su forma y ponernos delante otra pantalla (más) con información, gráficos y botones que entender y comprender.
Lo que necesitan es hablar entre sí para hacer líquido el mundo físico.
¿Qué quiere decir esto? La idea del mundo líquido es convertir el mundo físico en algo tan personalizado y tan eficiente como el mundo digital. Es la eterna promesa detrás del Internet de las cosas (o IOT) para, por ejemplo, alquilar un coche privado que de repente está disponible frente a mí porque ha ajustado oferta y demanda. Para ello, las personas y las cosas tienen que comunicarse activamente entre sí. La pregunta es cómo.
El problema no tiene nada que ver con la apariencia física: es un problema de lenguaje. Porque los fabricantes tradicionales de objetos hacen que éstos se comuniquen de forma muy, muy heterogénea, adaptándoles a sus necesidades espefícicas, y por tanto los protocolos de comunicaciones (los ‘idiomas’) son todos diferentes y llenos de casos particulares.
Hasta ahora, la pregunta la responden únicamente ingenieros, y la respuesta es muy predecible: con una plataforma. La plataforma centraliza y traduce todos los protocolos gracias un lenguaje universal magnífico que cubre todos los posibles usos. Y será este lenguaje el que se convertirá en el estándar del IOT para que las cosas se comuniquen.
Sin embargo, la situación está perfectamente resumida en la siguiente viñeta:
Por tanto, cada CEO, cada responsable de innovación o de desarrollo de cada empresa que quiera estar en IOT ha creado, se ha aliado o ha comprado una plataforma. ¡Hasta hay gente que tiene dos! Por supuesto, cada plataforma que existe está destinada a convertirse en el ‘Facebook de las cosas’, dominando las anteriores. Pero Facebook ya existe, y lo lleva (y con bastante acierto) un chico en sudadera.
Esta estrategia parece que no va a funcionar. Para ilustrarlo mejor, un problema similar es unificar los mandos a distancia de la TV. ¿Cuántos mandos a distancia hay en tu salón? La estadística dice que alrededor de 4. Es un sistema increíblemente simple, botones y un emisor de infrarrojos. Sería fantástico tener un único control, pero hasta la fecha NADIE ha conseguido tracción comercial unificándolos. Ha habido intentos tecnológicamente acertados, pero ningún éxito real en mayoría de los hogares. ¿Qué nos hace pensar que con aparatos increíblemente más complejos ahora va a ser diferente?
Pero entonces, si no a través de una plataforma, ¿cómo van a hablar las máquinas entre sí?
En inglés.
De tanto verlo en películas hemos obviado la idea. Pero el lenguaje natural representa la forma más elevada de comunicación, es la que utilizamos para comunicarnos entre nosotros. Es una solución acercando la comunicación al usuario, y representa una serie de ventajas:
- Es universal
- Es estándar
- Es familiar
- Es transparente
Puede expresar instrucciones sencillas y también conceptos abstractos. Todo el mundo lo entiende, y si las cosas se comunicaran de esta forma, veríamos lo que dicen y cómo funciona todo lo que nos rodea. El lenguaje natural es el protocolo de comunicación más elevado.
Viajemos al smart home de 2025. Tiene la misma apariencia que una casa de 2015, pero todas las cosas están conectadas, y por supuesto son todas de diferentes fabricantes. Estamos tranquilamente tomando una coca-cola mientras leemos un libro en el jardín. De repente, las persianas empiezan a bajar, la piscina se cubre, la calefacción se enciende y nuestra sombrilla se recoge dejándonos al sol. Levantamos una ceja. Miramos el registro de comunicaciones para entender qué está pasando:
Meteo: va a llover en los próximos 30 minutos
Persiana: si llueve me recojo
Piscina: si llueve me cubro
Riego: si llueve hoy apago los aspersores
Calefacción: ¿bajará la temperatura si llueve?
Meteo: la temperatura descenderá 5º en 1 hora
Calefacción: empiezo a ajustar el interior de la casa
“Calefacción, entraré en 15 minutos al salón”
Calefacción: ok, preparo rápidamente el salón
No hace falta saber código para entender lo que está ocurriendo y poder reaccionar de forma adecuada. Es transparente. Es extremadamente rápido, y cualquiera puede iniciar una conversación, no son líneas de programación escondidas en una plataforma (o un HUB) que sólo controla una empresa y sólo entienden un grupo de programadores.
De esta forma evitaríamos que las cosas pudieran pensar por sí mismas descontroladamente, y que llegaremos a crear el “Internet de las cosas paternalistas”. Donde, de repente, nuestra nevera pensara que hay alguien embarazada en la casa y no dejara que nadie cogiera cervezas. Aterrador.
La buena noticia es que hoy existe tecnología lo suficientemente avanzada para construir todo esto. Los objetos, ayudados por dispositivos generalistas de comunicaciones (como Particle, Intel Edison o Thinking Things), pueden ya comunicarse, enviar mensajes y recibirlos.
Para crear este nivel más de conversación con los objetos necesitamos:
- Un ID universal: necesario para identificar objetos unívocamente a través de plataformas, sistemas y aplicaciones. Por ejemplo, quiero poder referirme a mi coche ya sea a través de mi smartphone, a través de mi TV o a través de mi tablet, cada uno con un sistema operativo diferente, y métodos de comunicación diversos.
- Comunicación multi-radio: las necesidades de ancho de banda, seguridad, frecuencia, y bidireccionalidad son muy diferentes en función de cada dispositivo, incluso dentro de un mismo entorno como el hogar. Por ejemplo, una cámara de vigilancia conectada a la red 3G es ruinoso económicamente, mientras que conectada a la WiFi tiene mucho más sentido. Y del mismo modo, no confiaría en una cerradura conectada a mi WiFi personal, que es atacable, y sin embargo sí que lo haría si está conectada a la red 3G, que es más segura.
- Un sistema NLP (Natural Language Procressing): un sistema para convertir desde y hacia lenguaje natural común, que cualquier persona pueda entender. Ésta es la capa en la que los dispositivos entienden el mundo que les rodea.
- Una ventana a la conversación: uno o más sitios para escuchar, ver o interactuar en estas conversaciones. Del mismo modo que ocurre con el ID, necesito entender lo que ocurre desde mi móvil, mi tablet, mi TV y mi coche. De entre todas las posibles (ventanas, TV, smartphones, etc) ya hay algunas más que evidentes, que tendrían poco camino que recorrer para adaptarse.
Fuente: Flickr
Pero, ¿de verdad pueden las máquinas entender estos mensajes? Más buenas noticias: hace tiempo que superamos la barrera de entender lenguaje simple en un contexto acotado, y cuando la estación metereológica llamada ‘Meteo’ publica “va a llover en los próximos 30 minutos”, lo que cada máquina mediante NLP entiende es algo así:
intent = weather forecast
text = rain
recipient = all
date = today
time = now +30 minutes
Cada objeto entiende lo que está programada para entender con estos parámetros, y actúa si así lo considera. No estamos hablando de construir Siri o Cortana o Facebook M o Amazon Echo o Google Now para cada dispositivo; ellos son asistentes virtuales completos. Estamos hablando de construir pequeñas inteligencias dentro de las cosas, con un vocabulario muy limitado, en un contexto perfectamente definido y adaptados a los pequeños sucesos que las cosas tienen que hacer.
Desde que el PC se hizo mainstream, los humanos hemos aprendido a utilizar computadores adaptándonos a su lenguaje. Empezamos con comandos extraños en símbolos de sistema (DIR, CHKDSK…). Después, gracias a cierta maniobra de Steve Jobs en XEROX Park, los interfaces gráficos llegaron y las máquinas se acercaron más a nuestro mundo. Estas interfaces gráficas se elevaron con el iPhone y pudimos tocar el interfaz, pero a día de hoy aún necesitamos aprender lo que representa cada nueva pantalla de aplicación delante de nosotros.
La interfaz conversacional abre un mundo nuevo de experiencia de usuario, es familiar, rápida y eficiente. En un mundo cada vez más complejo, las soluciones sencillas parecen el mejor camino para generar valor.
Es hora de que dejemos de aprender sus interfaces y se mejore la forma de comunicarnos con los dispostivos. Es hora de que sean ellas, las máquinas, las que recorran la última milla hacia nosotros. Es hora de que, finalmente, hablen.
“Nunca te fíes de nada que piense por sí mismo, a menos que veas dónde tiene su cerebro.”
J.K. Rowling