El uso de bots se ha popularizado en los últimos años debido al uso de los chatbots por las empresas, pero esta no es su única función sino que también se utilizan para una gran multitud de tareas. No solo a la mejora del trabajo o descender la carga de trabajo para trabajos monótonos. Un bot está programado para recordar algunas tareas o bien automatizar algún proceso, y en algunos casos permite interactuar y resolver de manera inteligente problemas que normalmente podría resolver una persona manualmente.
Los bots deben hacer tres cosas:
Primero de todo, intentar arreglar un problema si es posible, segundo notificar a la parte interesada que el problema ha sido solucionado o que no es posible solucionarlo y por último dar instrucciones de cómo se tiene que solucionar el problema si este no está resuelto.
Recientemente se ha visto que, en algunos casos, los bots no se comportan como esperamos, sobre todo bots que se ayudan de inteligencia artificial para mejorar y auto aprender. Por ejemplo, Amazon empezó a usar un bot para la tarea de selección de personal y tuvieron que retirarlo por ser machista debido a que solo seleccionaba candidatos masculinos debido a que el bot con inteligencia artificial usó la base de datos de contrataciones de los últimos años y estos datos mostraban una mayor contratación de hombres para puestos técnicos.
O cómo Microsoft tuvo que retirar a su bot de Twitter porque se volvió racista ya que este bot aprendía debido a la interacción con los usuarios de Twitter.
Hacia el futuro
Los bots usados en el desarrollo de software permiten una mejora en la eficiencia y en el desarrollo de nuestros productos.
Un ejemplo simple pero muy útil es Git Enforcer que enseña a nuevos contribuidores de un proyecto a cómo crear un issue o cómo realizar un pull request.
Otro Bot llamado Orthographic pedant corrige fallos ortográficos cuándo realizas un pull request y además te ofrece una gran variedad de alternativas en las que puedes elegir para arreglarlo. Otro Bot GitBot’s que asigna etiquetas a los nuevos issues.
Se puede decir también que la integración continua (CI) que proviene de programas como Jenkins o Travis se puede considerar de alguna manera un bot que automatiza una gran parte del testeo y el despliegue del código de tu aplicación. Incluso con la popularización de los chatbots algunas plataformas de integración te permiten hablar con este tipo de programas de integración continua como Slack que permite la comunicación directa desde Slack con nuestro CI.
Las futuras necesidades nos dirán cómo van evolucionando los bots (y la mejora en los procesos de producción). Llegará un día en que el “fuera de juego” sea analizado automáticamente por un bot y se lo comunique al árbitro, lo que seguramente sea la evolución del VAR.
Y con la integración del internet de las cosas en nuestra vida, quién sabe si en el futuro habrá frigoríficos que pidan la compra por internet comprobando nuestros gustos y nuestros usos de los alimentos.
Nadie sabe qué nos deparará el futuro, pero si parece claro que la tecnología irá a más… y que como habéis visto hoy, nunca dejará de sorprendernos.