Chatbots (I): Build an app to talk to your phone without coding

A posts series about chatbots starts today with a direction but without a clear destination.

Today we are going to see a really easy way to create an app that allows you (writing like in a chat or speaking) talk to your phone without coding, without a single line of code!

[En castellano]

A lot of you already would had used Google Assistant. It is the «Siri» from Google which you could access on Android phones saying «Ok, Google».

Nowadays it also works on iOS phones, on Google Home, on smartwatches, on cars, on TVs, …

By the way, Google (attending the developer community program I spoke about two months ago) mailed me about they are gifting me a Google Home thanks an app I built following this method, using only a few hours. Do you want do the same?

When you access the actions console («actions» is the name given to Google Assistant apps) you can add a new project and Google gives you some options. You can code everything using its API, you can use an advanced platform in which you can code but it gives you a lot of work done (it is named DialogFlow), or you can use templates Google provides.

As you see in the above image, there are 3 different templates:

  1. Trivia. This template allows you create a quiz. You can provide different answers and synonyms for this answers also for each question. It is ready to load contents in English, French, German and Japanese.
  2. Personality Quiz. This template is ready to create personality quizzes. For instance, you can create a quiz like the one used by Cambridge Analytics (the company that had problems with Facebook’s privacy) to get data about millions of Americans and to affect USA elections. For the time being, you can only use this to create English content.
  3. Flash Cards. This is a template that for the moment only allows you create English content. It drives you to build a teaching game to learn about things.

The first step (but with the second that doesn’t allow this option) you have to choose the kind of personality. It means that you are choosing a voice from a woman, a man or a robot. Your election is also affecting to accent, expressions and sound effects that your application is going to use.

It is really important that you copy the Google Sheets template in the second step, the one about content. If you build your sheet from a clear one, it is difficult to achieve all restrictions checked by validations coming.

Using the template you are allowed to change whatever you want to adapt it to your content, but it is really important that in the second sheet (that is ready to set different configuration params) you change the title of your application, in order to avoid conflicts with other apps created before.

Whenever you are done following this wizard (the form that takes you throw a step by step process, for the ones that are not inside the apps design and development world), you only have to follow the Overview one to set how your apps are going to be called, set descriptions, icons, etc. etc.

Done this, you are ready to send your draft to the validation process and whenever it was approved your users will be able to say to their phones «Talk to…» and magic will start.

Chatbots (I): Crea una app para hablar con tu móvil sin programar nada

Comienza hoy una serie de posts relacionados con los chatbots, con una dirección y sentido pero sin saber muy bien a dónde llegaremos.

En el de hoy vamos a ver un modo supersencillo de crear una aplicación que te permita hablar (en plan chat o usando la voz) con tu móvil sin programar nada, ¡ni una sóla línea de código!

[In English]

Muchos, habréis usado ya Google Assistant. El «Siri» de Google al que accedías en terminales Android diciendo «Ok, Google».

Ahora ya no está sólo en teléfonos Android, se puede disfrutar de su ayuda en los terminales con iOS, en los Google Home, smart watches, en coches, televisores, etc.

Por cierto, decir que Google  (por el programa de recompensas del que os hablé hace un par de meses) me mandó un mail indicándome que me va a regalar un Google Home por una aplicación que hice siguiendo este método, empleando tan solo unas pocas horas. ¿Queréis hacer lo mismo?

Cuando vais a la consola de actions (que así se llaman las aplicaciones para el asistente), al añadir un nuevo proyecto, Google te da varias opciones. Puedes programártelo todo contra una API, puedes usar una plataforma avanzada en la que puedes programar pero que te da muchas cosas hechas (se llama DialogFlow), o puedes usar una de las tres plantillas que tiene.

Como veis en la imagen previa hay 3 plantillas distintas:

  1. Trivia. Es una plantilla que te permite crear un juego de preguntas y respuestas. Por cada pregunta te permite aportar distintas respuestas e incluso sinónimos a las respuestas. Esta plantilla está preparada para cargar contenidos en Inglés, Francés, Alemán y Japonés.
  2. Personality Quiz. Es una plantilla preparada para crear tests de personalidad. Por ejemplo, podríais crear uno como el que usó Cambridge Analítica (la del follón con Facebook) para captar datos de millones de estadounidenses e influir en sus elecciones. Esta, por el momento, sólo se puede usar para crear contenido en inglés.
  3. Flash Cards. Es una plantilla que por el momento sólo permite crear apps en inglés, y que busca que se cree un juego educativo para aprender sobre cosas.

En el primer paso (salvo en la segunda que no dispones por el momento de esta opción), has de elegir el tipo de personalidad. Esto es principalmente elegir si quieres una voz de mujer, hombre o robot. La elección también influirá en el acento, expresiones y efectos de sonido que empleará tu aplicación.

En el segundo paso, el de contenido, es importante que os copieis la plantilla de Google Sheet que os ofrece, ya que si creais una vosotros desde cero, es muy fácil que no cumpláis con todas las validaciones que se realizarán después.

En la plantilla podéis cambiar cuanto queráis para adaptarla a vuestro contenido, pero es muy importante que en la segunda hoja (que está pensada para que introduzcáis varios parámetros de configuración) cambieis el título de vuestra aplicación, para no entrar en conflicto con otras aplicaciones que se hayan creado antes.

Una vez que hayáis seguido este wizard (el formulario que te guía paso a paso por un proceso, para los ajenos al mundo del diseño y desarrollo de aplicaciones), tan sólo tendréis que seguir el de Overview para indicar cómo se debe invocar a vuestra aplicación, poner descripciones e iconos, etc. etc.

Con esto hecho, ya estaréis preparados para mandar vuestra aplicación a validación y que una vez que sea aprobada, vuestros usuarios puedan decirle a su móvil «Talk to …» y que empiece la magia.

Las mentiras de mi paso por la universidad

Ahora que parece que de universidades va la actualidad (aunque para mi vaya más de engaños y falsificaciones) voy a plasmar aquí mi experiencia llena de mentiras y (des)engaños.

Tengo que adelantar que por estas palabras hubo quien que me tachó de liberal y me comparó con Pedro J. y con Reverte. También es cierto que a dicha persona la forzaron a dimitir años después por haber dicho que era titulada sin ser ella nada de eso. Intentaré no meterme en política para que no hagáis lo mismo.

Para los que os gusta leer poco, os adelantaré el resultado sin que tengáis que pasar por las motivaciones: en mi opinión la universidad tal y como está planteada es una pérdida de tiempo y de dinero.

He de aclarar también, que soy un firme defensor de la enseñanza pública. Creo que todo el mundo ha de tener derecho y opciones a formarse, independientemente de su capacidad económica.

Ahora que los ansiosos están satisfechos, pasemos a la historia (mi historia).

Estudié un par de años en Alicante y posteriormente acabé la carrera en la UNED. Durante ese periodo aprendí muchas más cosas por las noches que por el día. Entiéndase bien, por las noches me dedicaba a cacharrear y aprender cosas fueras del currículo marcado. Aprendí de hacks y cracks, debuguee windows en tiempo real, e incluso tuve algún logro sonoro como ser la primera persona en el mundo (sí) en instalar XGL y Compiz fuera de las versiones de Suse para las que estaban hechos.

Cuando fui a estudiar, estaba ansioso por vivir la experiencia, ir a una universidad, a una fuente de conocimiento. Mi decepción fue tremenda.

En Alicante me encontré con profesores que (en su mayoría) no tenían ningún afán por enseñar. Estaban los que querían investigar, y en España para investigar tienes que dar clases. Y estaban los que simplemente querían tener un puesto lucrativo con bastantes vacaciones (porque los profesores que no quieren trabajar mucho tienen muchas vacaciones, los otros muy pocas).

Recuerdo algún enganchón «violento» con algún profesor.

Hubo una, que era la tercera en un departamento que compartía apellido con el director (y no era «López»), que me pidió opinión sobre sus clases y tras dársela de un modo educado pero claro, me pidió que no volviese «porque no iba a aprobar nunca su asignatura«.

En la UNED las cosas no eran muy distintas.

Por ejemplo un tutor, que fumaba en el aula (cuando ya no se podía, que no soy tan viejo), me dijo cuando fui a preguntarle por unas prácticas presenciales y obligatorias, que él daba esa asignatura porque alguien tenía que impartirla y que me buscase la vida con las prácticas porque no tenía ni idea.

Si bien, el formato de la UNED de «tú te lo guisas y tú te lo comes» me enseñó mucho a ser resolutivo, creativo y autosuficiente. Además de permitirme trabajar mientras estudiaba (irónicamente en el Gobierno, en Universidades e Investigación) y de cuidar de quien tuve que hacerlo cuando llegó el momento.

Esta es mi experiencia, y la que me llevó a que al final sólo buscara un papel que me abriera puertas en el mundo laboral.

Creo que mi formación me dió cosas. Me dió unas bases teóricas muy buenas para posteriormente entender mejor materias prácticas que aplicar en el día a día. Me dió mecanismos que uso continuamente. Pero en realidad no me lo dió ella más que por el programa marcado, porque fui yo el que lo obtuvo y el que se sacó las castañas del fuego. Estoy seguro de que podría haber obtenido lo mismo de un modo más eficiente.

También hubo otra cosa que me dió la universidad, y fue el afán por enseñar y compartir el conocimiento. No quería ser como aquellos que me había encontrado. Por eso siempre que doy un curso me lo preparo un montón e intento transmitir con muchas ganas.

Por supuesto, tengo amigos que han vivido experiencias completamente distintas. Por ejemplo «el Miguel», con quien jugaba a balonmano, pudo interaccionar mucho con los departamentos de su universidad y le abrieron las puertas de la NASA (¡ahí es nada!).

Hay otros como Fernando y Jose, que en este debate en Twitter me contaban lo guay que fue para ellos.

Tampoco es el mío el único caso. Recuerdo una chica con la que estuve que estudiaba Química. Tenían una asignatura de programación en la que les enseñaban Pascal. Ella había suspendido esa asignatura el año anterior, y se desesperaba porque no entendía nada de lo que explicaba la profesora. Tras darle clase durante una tarde (sí, una) para que entendiera los conceptos clave, no sólo empezó a sacar notazas y a ser la primera de la clase, si no que además corregía a la profesora (que por lo visto sólo copiaba los programas de unas fotocopias, y cuando había algún bug se le venía el mundo encima).

Además de esto, está la típica batalla tonta de que si para trabajar en informática tienes que ser informático… Me parece una discusión vacía, porque conozco a gente muy válida que vienen de Matemáticas, de Teleco, ¡o incluso que no tienen ninguna titulación!

Por ejemplo, está el grande de Inda, un amiguete que tiene una especie de título de FP de una academia privada, y que no sólo le da mil vueltas a la mayoría de titulados con los que he trabajado, sino que es a quien pido ayuda cuando me topo algún problema técnico que no controlo.

Otro ejemplo es Unai, un chico que estaba acabando un FP y que nada más entrevistarle le dije al gerente de la empresa que lo quería y lo quería en mi equipo, porque era un diamante en bruto, y que posteriormente demostró lo que valía.

En definitiva, en España creo que se valoran mucho los papeles y no tanto el conocimiento. Lo creo por todas las mentiras que viví en esa época, y soy consciente de que otros tendrán otras vivencias que les lleven a otras 17 conclusiones. Mentiras como que en la universidad iba a aprender un montón, mentiras como que era lo que necesitaba para abrirme al mundo o que me enseñaría a ser un gran profesional.

Para mi lo importante es el conocimiento, y el que se obtiene yendo a aburridas clases se puede obtener de otros modos que sean óptimos en cuanto a tiempo y dinero. En definitiva, hay otros caminos y yo los prefiero.

El éxito de la búsqueda de huevos de Pascua

La semana pasada acababa la Pascua, una tradición que parece que existe desde la Edad de Hielo. Además se estrenó Ready Player One, una pelicula de Steven Spielberg basada en un libro del mismo nombre, que se centra en la búsqueda de huevos de Pascua en un mundo virtual (tranquilos, no vienen spoilers). ¿Qué son los huevos de pascua? ¿De dónde vienen? ¿Para qué sirven?

Los huevos de Pascua, en el mundo de la tecnología, son mensajes o funcionalidades escondidas en el software.

Esto se ha extendido posteriormente a los menús de algunos DVDs y otras cosas, pero el origen todo el mundo lo tiene claro: el videojuego de Atari Adeventure.

Atari Adventure Easter Egg on Atari (Jakks Pacific) Port

En el prólogo de Ready Player One lo explica uno de sus protagonistas:

Como muchos de los primeros videojuegos, Adventure fue diseñado y programado por una sola persona. Pero en aquella época, Atari se negaba a conceder el menor mérito a sus programadores, por lo que los nombres de los creadores de los juegos no aparecían en ninguna parte.

Así pues, el hombre que inventó Adventure, un hombre que se llamaba Warren Robinett, decidió ocultar su nombre en el interior del propio juego. Escondió una llave en uno de los laberintos del juego. Si encontrabas la llave —un pequeño punto gris pixelado—, podías usarla para entrar en un aposento secreto donde Robinett había escondido su propio nombre.

Efectivamente, así empezó todo y empezaron a aparecer huevos de Pascua por todos sitios.

En GPMESS solíamos meter alguno en todas las versiones, usábamos lo mismo que usaba Android para sacar el menú de desarrollador: pulsar 7 veces sobre el número de versión de la pantalla de About.

Lo hacíamos porque era divertido para nosotros saber que había cosas escondidas, y porque sería emocionante para nuestros usuarios si alguno lo encontraba.

Hollywood Studios - Indy and the idol - by hyku

¿A quien no le gustaría ser un Indiana Jones descubriendo un tesoro escondido?

Hay algunos huevos de Pascua que en realidad no son tal. No los pusieron ahí los desarrolladores adrede, si no que son un glitch que sin querer da una nueva funcionalidad, como un Mario pequeñito pero capaz de tirar bolas de fuego, o el codiciado Pokemon MissingNo.

En cierto modo son algo que se ha hecho popular, tal vez por eso de los 5 minutos de gloria de aquella persona que los encuentre. Son tan populares que se han reflejado en películas, como en la «antigua» The Net en la que la analista interpretada por Sandra Bullock se metía en un follón por hacer click en un sisímbo de pi pulsando Ctrl-Mayus.

Tal vez aun penséis que es una cosa rara y excepcional, pero muchísimo software tiene huevos de Pascua. Por ejemplo Windows 10  tiene un Panel de Control vitaminado llamado GodMode. Microsoft Word tiene funciones especiales para que cree texto random de relleno.

Sin ir más lejos, el 60% de vosotros usais Chrome para leer estas lineas y Chrome está lleno de funcionalidades ocultas. Algunas son útiles y algunas divertidas. Interpreta un montón de URLs distintas que empiezan por el protocolo «chrome:», tiene un juego para que estés entretenido cuando te quedas sin conexión, o por ejemplo si estás en Android si deslizas hacia arriba 5 veces cuando vas a cambiar de pestaña, podrás ver como todo da vueltas.

Y hablando de dar vueltas ¿alguna vez habéis buscado en Google «do a barrel roll»? 😉

Vivimos en una distopía digna de Black Mirror

Puede parecer una historia de ciencia ficción digna de ser retratada en la angustiosa serie distópica Black Mirror. Sin embargo, es la realidad en la que sin darnos cuenta vivimos.

Estamos siendo vigilados por un Gran Hermano que nos vigila y manipula. Veamos quien es, conozcamos los hechos. Sólo el conocimiento nos hará libres, amigos. Preparémonos para lo que viene.

Llevamos unas semanas con muchas noticias sobre el caso de Cambridge Analytica, sobre como habrían influido en las elecciones de USA para que ahora tengan a Trump como lider supremo. ¿Qué ha pasado? ¿Quién es el responsable? ¿Cómo podemos evitar que «nos la metan» a nosotros?

Resumiendo mucho, está que esta empresa británica pilló los datos de 50 millones de estadounidenses. No necesitó que todos usaran sus aplicaciones, con unos cientos de miles fue suficiente ya que eso les bastó para acceder a la información de sus amigos.

A esa gente les aplicó el modelo de los cinco grandes, que sirve para determinar la personalidad de la gente. Es un modelo similar al que usan en el test 16personalities que se hizo bastante viral por la impresión de exactitud que les daba a quienes lo hacían (probad a ver que os parece).

Teniendo catalogada a la gente, teniendo toda la información que Facebook guarda de cada uno de nosotros: sus intereses y otros datos como dónde vivian o sus profesiones; esta compañía pudo hacer publicidad segmentada a esos 50 millones de americanos para facilitar que Trump ganara las elecciones. Da miedo ¿verdad?

Apareció un movimiento para borrar las cuentas de Facebook, promovido entre otros por Elon Musk o uno de los fundadores de WhatsApp (compañía que actualmente es propiedad del gigante de las redes sociales). Pero, ¿eso es suficiente?

La respuesta es un claro «no». Los dedos de Facebook son muy largos (WhatsApp, Instagram, Oculus, Messenger, …). Además están integrados con la mayoría de las webs y aplicaciones que usamos. La única manera de aislarnos completamente es bloquear todos sus dominios. ¿Con esto ya estaríamos cubiertos?

La respuesta vuelve a ser un «no». Facebook no es la unica empresa que trabaja con datos y publicidad, hay muchos dispuestos a comerciar con lo que saben de ti para hacerte llegar el mensaje adecuado para que compres un producto (o una idea).

¿Recordáis como os sentisteis cuando pensabais que Facebook os escuchaba? Pues pensad que ahora cualquiera puede conocer vuestros patrones de sueño, averiguar tu número de teléfono, o manipularte para que acabes votando a Trump.

Si esperáis que os de una solución infalible, lo siento pero no la tengo. Se pueden tomar medidas como usar distintos mails para cada red y aplicación que usemos, revisar la privacidad de nuestras redes frecuentemente y borrar la información de perfilado que han ido almacenando sobre nosotros, pero a día de hoy, plantearse no usar móviles o Internet es muy complicado (yo no podría).

La única manera de escapar de esta distopía es tomar medidas cuando detectas alguna empresa que abuse denunciando sin piedad, y valorar menos las cosas gratuitas y más las de pago en las que nosotros seamos el cliente y no el producto.

 

PD: Si queréis más información sobre el caso de Cambridge Analytica o sobre como se comercia con nuestros datos, os recomiendo que leais la bonilista del pasado domingo.