Video Summary and Transcription
Esta charla discute la posibilidad de que los robots tomen el control basándose en las tres leyes de la robótica de Asimov. Explora el uso de robots de automatización para pruebas, incluyendo su construcción y control. La charla también cubre la implementación de interfaces, la realización de desafíos de juegos matemáticos y las capacidades de las pruebas de automatización. Aborda preguntas sobre diseño responsive, acoplamiento de cámaras y el futuro mapa de ruta. También se discute la asequibilidad de la configuración y el potencial para la automatización futura, junto con una sesión de preguntas y respuestas rápidas.
1. Introducción a la Cuestión de la Toma de Control por Parte de los Robots
Hola a todos. Soy Theodor, un ingeniero de software y fundador de Proxima Analytics. Vamos a discutir si los robots tomarán el control basándose en las tres leyes de la robótica de Isaac Asimov.
Hola a todos. Espero que estén disfrutando de la conferencia hasta ahora. Bueno. Soy Theodor. Soy un ingeniero de software basado en Atenas, Grecia. También soy el fundador de Proxima Analytics. Es una plataforma de análisis ética de código abierto que definitivamente deberías revisar esto. Y también puedes encontrarme en línea a través de la palabra sin alianza. Entonces, si hay una pregunta que podemos hacer para 2023, va a ser ¿los robots realmente van a tomar el control? ¿Es decir, tu freeds te va a tomar como rehén, o vamos a perder nuestros trabajos como ingenieros de software? Y la verdad sea dicha, esta pregunta es, digamos, bastante antigua. Este es Isaac Asimov, uno de los autores de ciencia ficción más famosos. Y en uno de sus libros, que se llama iRobot, en 1953, creo, se le ocurrieron las tres leyes de la robótica. Entonces, básicamente, este es un manual para cuando los robots realmente vayan a tomar el control. Y hoy, vamos a desafiar esta pregunta, y vamos a intentar averiguar si esto es cierto o no.
2. Explorando Robots de Automatización para Pruebas
En 2018, mientras trabajaba para una empresa, experimenté con diferentes aspectos de la ingeniería de software. Las pruebas de extremo a extremo en móviles son desafiantes debido a las aplicaciones aisladas y las interrupciones externas. Tuve la idea de construir un robot para automatizar pruebas en dispositivos reales. Hay tres categorías de robots de automatización basados en el movimiento: robots cartesianos, brazos robóticos y robots Delta.
Avancemos rápidamente, en 2018, estaba trabajando para una empresa. Y además de eso, también estaba tratando de experimentar con diferentes aspectos de la ingeniería de software, tratando de mezclar cosas como la impresión 3D, la electrónica, y demás.
Y estaba trabajando para una empresa donde teníamos tres productos principales. Como, el primero era una aplicación web y dos aplicaciones móviles, una para Android y otra para iOS. Y realmente puedo decirte esto. Las pruebas de extremo a extremo en móviles son bastante difíciles. Realmente lo son.
Entonces, si alguna vez has intentado realizar pruebas de extremo a extremo en aplicaciones móviles, básicamente estamos más o menos atascados con el emulador. Por otro lado, también necesitamos probar las aplicaciones móviles en dispositivos reales, ¿verdad? Pero es bastante complicado, en realidad. Por razones de security, la mayoría de las aplicaciones están aisladas. Eso significa que no podemos probar realmente cómo nuestras aplicaciones interactúan con el sistema operativo. No podemos probar el compartir enlaces entre aplicaciones. No podemos probar un flujo de trabajo en el que queremos autenticar a los usuarios utilizando el cliente de correo en el teléfono móvil.
Además, tenemos interrupciones externas como las llamadas telefónicas. Los teléfonos móviles son como organismos vivos. Así que tenemos llamadas telefónicas, notificaciones, notificaciones push, y así sucesivamente. Y entonces tuve esa extraña idea, como, ¿qué pasaría si pudiéramos intentar construir un robot para automatizar pruebas en dispositivos reales? ¿Y sabes qué? Sé que la mayoría de la gente pensaría en algo aterrador o grande como el Terminator o algo así. Pero la verdad sea dicha, podemos categorizar los robots de automatización en tres grandes categorías basadas en su movimiento.
Entonces, la primera categoría se llama robots cartesianos. Tenemos tres ejes. Y básicamente, el actuador se mueve en el espacio tridimensional usando pernos y ruedas. Las impresoras 3D y las máquinas CNC funcionan de esa manera, en ese formato, en realidad. Pero en nuestro caso, no funciona porque tienes un área limitada con la que trabajar. Y además, el movimiento no se siente tan natural.
A continuación, tenemos los brazos robóticos, que básicamente están hechos con motores separados y tres o cuatro partes adjuntas. Son un estándar innecesario para la industria del automóvil y las operaciones médicas también. Pero son bastante difíciles de operar. Y además, son bastante caros y se utilizan principalmente para tareas repetitivas. Así que nuestra elección para hoy se llama robots Delta. Tenemos una base en la parte superior, tres o cuatro motores adjuntos.
3. Construyendo el Robot con Tapster y Joni 5
Tenemos pares de brazos conectados al actuador, que son fáciles de operar. El movimiento es rápido, eficiente y natural. Tapster, fundada por Jason Huggins, ofrece dispositivos de código abierto como Tapster Bot. Margaret es un dispositivo real construido basado en el diseño de Tapster. JavaScript es una gran opción para programar microcontroladores con frameworks como Device Script, Joni 5, Notebots y Esprino. Joni 5 actúa como un proxy para el microcontrolador Arduino nano, permitiendo que el robot ejecute comandos.
Y como puedes ver, tenemos pares de brazos que están conectados al actuador. Son bastante fáciles de operar. Básicamente, podemos usar trigonometría básica para calcular la posición y mover el robot. Y el movimiento es rápido, eficiente y realmente natural.
Pero, ¿cómo podemos construir realmente ese tipo de dispositivo, verdad? Afortunadamente para nosotros, existe una empresa llamada Tapster. Y fue fundada por Jason Huggins, quien también es uno de los creadores de Appium y Selenium. Y dos de sus dispositivos son de código abierto. Así que esto se llama Tapster Bot. Esta es la versión uno. Y basado en su design, realmente bifurqué todo el setup y el código. Y hoy, voy a presentarte un dispositivo real. Así que esta es Margaret, como puedes ver aquí. Muchas gracias. Por cierto, todo este setup se ejecuta dentro de mi navegador, así que esto es una transmisión en vivo aquí. Como puedes ver, tenemos brazos adjuntos aquí. La mayor parte de esta parte está usando pernos, tuercas, tornillos y partes impresas en 3D también.
El cerebro y corazón de este dispositivo es un pequeño microcontrolador. Pero podrías estar preguntando, ¿dónde diablos está JavaScript? Esta es una conferencia de JavaScript, ¿verdad? Así que, para ser honesto, JavaScript es una muy buena opción si quieres programar cosas en microcontroladores. Hay un montón de frameworks por ahí como Device Script, Joni 5, Notebots, Esprino, lo que sea. Y JavaScript es un lenguaje realmente bueno porque estamos manejando eventos de forma natural, callbacks también. Así que estas son las cosas que estás haciendo con un dispositivo como este. En nuestro caso, vamos a usar Joni 5.
El cerebro y corazón del robot es en realidad un microcontrolador Arduino nano. Así que Joni 5 funciona como un proxy. El dispositivo está conectado a mi estación de trabajo, y luego podemos ejecutar directamente un servidor de Node.js en el backend, y podemos enviar comandos que el robot los ejecuta. Así que esta es una clase básica que nos permite ejecutar un robot realmente básico. Primero tenemos que instanciar la placa Joni 5. El microcontrolador tiene pines etiquetados. Así que podemos decir que estamos ejecutando tres motores de servidor en los pines dos, tres y cuatro. Y luego, cuando la placa se instancia, podemos ejecutar la clase real.
4. Implementación de Interfaz y Control del Robot
Y aquí está la implementación básica de la interfaz para tocar, mover, deslizar y reiniciar el dispositivo. Con un servidor Node.js en el backend, tenemos la flexibilidad para exponer APIs REST o web sockets. El robot puede ser controlado a través del eje x, y, y z, e incluso realizar movimientos de baile. La calibración es necesaria para determinar la posición del teléfono móvil, lograda a través de una interfaz web sencilla. Deslizar implica tocar la pantalla, arrastrar a un punto y soltar. La implementación incluye una interfaz de usuario tipo Tinder para seleccionar opciones. Con el servidor Node.js, tenemos varias opciones para controlar el robot.
Y aquí está la implementación muy básica de la interfaz para hacerlo. Tienes la función de inicialización, y luego algunas funciones auxiliares como tocar, mover, deslizar y reiniciar el dispositivo. Y te dije que esto es en vivo, ¿verdad? Así que, como tenemos un servidor Node.js en el backend, podemos hacer lo que queramos.
Así que aquí tengo... Podemos exponer APIs REST o incluso web sockets. Así que aquí, como puedes ver, puedo mover directamente el robot a través del eje x, y, y z también. O incluso puedo hacer que baile por un rato. El movimiento básico es más o menos enviar comandos y coordenadas, como ir al punto 0, 0, 0, y así sucesivamente. Déjame desenfocar este.
Así que si lo piensas, podemos mover el robot simplemente enviando las coordenadas dentro de un intervalo. Si estamos hablando de toques, como tocar el dispositivo real, eso es simplemente bajar el eje z a 0, como tocar el dispositivo real en la parte inferior del robot. Y aquí está la implementación básica para hacerlo. Pero hay una cosa aquí. Debido a que ese dispositivo no sabe exactamente dónde está el teléfono móvil, necesitamos realmente calibrar y hacer que el robot sea consciente de dónde está el teléfono móvil. Para hacerlo, he creado una interfaz web realmente sencilla. Así que podemos iniciar el proceso de calibración. El robot baja hasta el dispositivo, y cuando la pantalla táctil es tocada, envía un comando de vuelta para que podamos tomar puntos de referencia y averiguar dónde está todo en este momento.
Ahora hablemos de deslizamientos. Ahora que el robot está calibrado, deslizar es simplemente tocar la pantalla en el punto A, arrastrar hasta el punto B y soltar. Para hacerlo, he recreado la interfaz de usuario de Tinder, ya sabes, la de las tarjetas. Así que podemos empezar a elegir nuestra pareja para hoy. Genial. Déjame desenfocar este. Vale. Así que eso es todo lo que realmente necesitamos hacer. Así que tenemos toques, y tenemos deslizamientos. Como tenemos el servidor Node.js en el backend, podemos hacer lo que queramos. Podemos dirigir con la API REST. Podemos usar un web socket. Podemos usar también Opium.
5. Desafío del Juego Matemático Interactivo
En este ejemplo, simplemente estamos instanciando el SDK de Opium JS y enviando comandos de vuelta al servidor web. Vamos a desafiar al robot real y tener un simple juego de matemáticas en el que puedes competir contra el robot por la oportunidad de ganar premios. El juego implica resolver ecuaciones lo más rápido posible. ¡Prepárate para jugar!
En este ejemplo, simplemente estamos instanciando el SDK de Opium JS, y luego enviamos comandos directamente de vuelta al servidor web. Así que todo está en su lugar, y podemos empezar a testing nuestra aplicación.
Pero sé que quieres la demostración completa, ¿verdad? Pero como te dije, hoy vamos a desafiar al robot real. Así que quiero que todos en esta sala o de forma remota tomen sus teléfonos. Eso es algo nuevo para una conferencia, ¿verdad? Así que vas a competir contra el robot.
Tenemos un juego realmente simple aquí. También tenemos dos grandes premios, ¿verdad? Si el robot gana, estamos condenados. Intenta encontrar el búnker. Intenta huir. Pero si alguno de ustedes gana, entonces hay un patrocinio de un año completo por parte de Egghead, como un año completo, así como una copia de Node.js design patterns de Luciano Mamino. Proporcioné este para un afortunado ganador. Y aquí está el juego.
Vas a competir con matemáticas contra el robot en vivo en esta sala. Así que puedes ir a dab.sh slash play. Tienes que entrar, simplemente elige un nombre de usuario para hacerlo. Por favor, por favor, gente, sean amables. Y una vez que todos se hayan registrado, podemos empezar a jugar. El juego es realmente simple. Tienes una ecuación, como una suma matemática. Tienes que elegir la respuesta correcta lo más rápido que puedas. El tiempo importa aquí. Vale. Solo voy a darte, como, diez segundos o algo así. El juego completo durará aproximadamente un minuto. ¿Todos listos? ¿Todos listos? ¿Estamos bien? Vale. Entonces, ¿estás listo? Solo un minuto. Y puedes empezar a jugar. Vale. Es difícil, ¿verdad? Vale. Casi allí.
6. Capacidades de Pruebas de Automatización y Conclusión
Cinco. Cuatro. Y hemos terminado. Felicitaciones a Rahul, Mikhail, y al robot. Podemos probar enlaces profundos, compartir, flujos de autenticación, ejecutar el dispositivo 24-7 en diferentes dispositivos, probar notificaciones posteriores e interacciones con el sistema operativo. Podemos adjuntar una cámara para detectar lo que el robot toca o desliza, obtener métricas significativas, replicar escenarios de errores, someter a prueba de estrés la aplicación, y entrenar nuestros propios modelos de IA. Gracias por su tiempo y paciencia.
Cinco. Cuatro. Y hemos terminado. Manos en los teléfonos. Todos. Vale. Veamos cómo fue eso. ¿Están listos para los resultados? Sí. Hagámoslo. Chatterbox Coder, ¿hay alguien más? ¿No? Vale.
En la aplicación, podemos encontrar su ID que puede enviarme a través de un DM. Felicitaciones a Rahul, Mikhail, y al robot, de hecho. Pero realmente buen trabajo. De hecho, Chatterbox lo clavó.
Vale. Entonces. Esto es todo. Vamos a intentar y ver qué más podemos hacer con una configuración como esta. Entonces, ya que tenemos un sistema de automation completo, podemos probar enlaces profundos, compartir, como flujos de authentication, como te dije antes. Podemos ejecutar el dispositivo 24-7 en diferentes dispositivos, iPads basados en la base real que podemos Entonces, podemos escalar el robot hacia arriba y hacia abajo como queramos. Podemos probar notificaciones posteriores e interacciones con el sistema operativo.
Pero también hay más. Entonces, por ejemplo, podemos adjuntar una cámara y tener una transmisión en vivo para detectar lo que el robot toca o desliza. Podemos obtener métricas realmente significativas, como cuánto tiempo tarda nuestra aplicación en cargar. Esto es realmente interesante, porque podemos obtener métricas sobre el comportamiento del usuario o análisis. Y debido a que las coordenadas y el movimiento se basan en matrices de números a través del tiempo, podemos replicar efectivamente escenarios de errores o intentar pasar por flujos de trabajo. También podemos someter a prueba de estrés la aplicación, como tocar la pantalla con fuerza y así sucesivamente. Y finalmente, ya que los movimientos pueden describirse muy bien, podemos entrenar nuestros propios modelos de IA y podemos auto-generar rutas de usuario y flujos de trabajo para proporcionar automation testing también.
Entonces, eso es todo de mi parte ahora. Me gustaría agradecerles mucho por su tiempo y paciencia.
Preguntas y Pruebas
Y espero que hayan disfrutado de la conferencia hasta ahora. Hablemos de algunas de estas preguntas. La siguiente pregunta se refiere a Axis y al diseño responsivo. Si es un dispositivo más grande, no es necesario actualizar la prueba porque podemos interactuar con la interfaz web y adaptarnos fácilmente a diferentes diseños. Tabletop Robotics ha creado una base que puede rotar e inclinar el dispositivo para probar el giroscopio. Las notificaciones push se pueden probar interactuando con una interfaz web y utilizando localizadores.
Y espero que hayan disfrutado de la conferencia hasta ahora. Aplaudámosle. Veamos las preguntas.
Antes de hacer las preguntas, tengo una confesión que hacer. También me siento realmente mal por esto. Soy Chatterbox Kodar, y me di cuenta a mitad de camino de que, oh, espera, si simplemente pasas rápidamente por las preguntas y te equivocas, aún así acelera la siguiente pregunta. Así que, simplemente estaba haciendo matemáticas con los dos primeros dígitos y llevando uno y viendo si funcionaba. Así que, creo que Rahul debería llevarse el premio. Así que, dondequiera que esté Rahul, levanta las manos. Aplaudámosle dondequiera que esté, y si está en casa, envíale un DM a Theodore.
Muy bien. Eso es bastante justo para ti, ¿verdad? Sí. Bueno, hablemos de algunas de estas preguntas. Así que, dejaremos la primera pregunta para el final, pero la siguiente pregunta que se refiere a Axis. Si es un dispositivo más grande con diseño responsivo... Empezaré de nuevo. Si es un dispositivo más grande con diseño responsivo, ¿necesitarás actualizar la prueba? Probablemente no, porque ya que estamos... Así que, en mi ejemplo, estoy interactuando con una interfaz web, por lo que puedes colocar localizadores e identificar las coordenadas, dónde está todo. Además, cuando el dispositivo se inicia, obtenemos información sobre el área de visualización, sobre la pantalla del dispositivo real por lo que es bastante fácil adaptarse a diferentes diseños también. Tabletop Robotics también ha creado una base que puede rotar el dispositivo y inclinarlo para identificar, para probar el giroscopio y cosas así. Así que no.
Ah, bien, gracias. Creo que es muy interesante cómo empiezas con algo realmente simple, te preguntas, oh, ¿puede hacer esto? Y añades las características. Es como un producto real que estás desarrollando. Eso es realmente genial. Muy bien. Voy a desplazarme hasta la siguiente pregunta. Pasaremos por algunas de las preguntas más atrevidas más tarde, no te preocupes, las guardaré para más tarde. Pero, ¿cómo pruebas las notificaciones push? ¿Podemos hacer que el robot sepa que se ha recibido una notificación push, etc? Claro. Así que, en este ejemplo, simplemente estoy interactuando con una interfaz web, colocando localizadores y así sucesivamente.
Adjunto de Cámara y Velocidad del Robot
TabSir ofrece una forma única de adjuntar una cámara para la comparación de imágenes y la detección de notificaciones. La velocidad del robot depende del movimiento y la calibración precisa. JavaScript es una buena opción para IoT con microcontroladores y sensores. No se necesita software especial, lo que facilita la experimentación.
TabSir ha proporcionado realmente una forma en la que puedes adjuntar una cámara para identificar lo que está en la pantalla y también puedes usar un interruptor para transmitir los resultados. Así que puedes hacer una comparación de imágenes e identificar que hay una notificación emergente, o puedes, ya que esta es una interfaz web, obtener una devolución de llamada cuando la notificación push realmente surge. Eso es bastante genial. Eso es realmente impresionante también y es una forma tan única de usar la cámara. Tenemos otra pregunta, que es sobre la velocidad, y supongo que esto se aleja un poco del software hacia la robótica. ¿Cuál es el límite de velocidad y cómo afectaría esto a la duración de los pipelines de CI en comparación con una solución solo de software? Así que la velocidad depende del movimiento porque tienes que calibrar con precisión el movimiento. Por ejemplo, si quieres hacer toques concurrentes en diferentes lugares, tienes que mover el robot bastante rápido, pero el área de trabajo es demasiado pequeña. Así que creo que es bastante rápido. Hay videos allí de TabSir que están tocando la pantalla de manera agresiva muy rápidamente. También tienen una demostración sobre cómo jugar, ¿cómo se llama? ¿Tappy Bird? Sí. El que sube y baja. Sí, sube y baja. Así que es bastante rápido. Creo que eso también es realmente genial. El hecho de que pueda capturar esa imagen y aún moverse y ser básicamente más rápido que la mayoría de los humanos es bastante impresionante también. Otra cosa, tal vez si hay algunos desarrolladores de JavaScript que quieren entrar en IoT, claramente estás muy, muy metido en IoT.
JavaScript para IoT
JavaScript es una buena opción para dispositivos IoT con sensores o botones. Jony5 funciona como un proxy, lo que facilita su uso. Esprit y Device Script son adecuados para aplicaciones independientes. Puedes experimentar con un simple clon de Arduino y LEDs sin necesidad de software especial. Puedes ejecutar diferentes ID dentro de tu navegador para actualizaciones en vivo.
Alguien preguntó si recomiendas usar JavaScript con IoT, ya que un dispositivo IoT tiene menos memoria y la mayoría de los desarrolladores prefieren usar programas en C++. Primero, hablemos de lo que prefieres, y luego demos algunos consejos para cualquiera que quiera iniciarse con JavaScript. Bueno, en realidad depende mucho. Si quieres desarrollar una aplicación IoT completa, sí, claro, C++ tiene mucho sentido. Por otro lado, JavaScript es realmente bastante bueno, porque básicamente, si tenemos un microcontrolador, es muy básico. Es solo una pequeña unidad de cálculo. Pero si empiezas a conectar sensores, o botones y demás, JavaScript es una muy buena opción. Jony5 funciona como un proxy, por lo que es bastante fácil de usar como una estación de trabajo. Si quieres desarrollar aplicaciones independientes, Esprit y Device Script son realmente adecuados para eso. Así que lo que funcione para ti, esa es la respuesta correcta. Pero si quieres experimentar, puedes gastar un par de dólares, conseguir un simple clon de Arduino, algunos LEDs, y es bastante sencillo hacerlo. La otra parte interesante es que no necesitas software especial para hacerlo. Así, por ejemplo, hay diferentes ID que puedes ejecutar dentro de tu navegador, y es bastante genial, porque tienes actualizaciones en vivo, en lugar de tener un paso de compilación y demás. Eso tiene sentido. Gracias, gracias.
Multi-touch, Mapa de ruta futuro y Sensores de cámara
Hemos recibido preguntas sobre multi-touch, el mapa de ruta del producto futuro y la implementación de sensores de cámara. El método actual de entrada táctil implica el uso de un lápiz que puede ser conectado al microcontrolador. Características adicionales, como deslizar, se pueden lograr conectando varios lápices. Al implementar sensores de cámara, el enfoque depende del resultado deseado. Para aplicaciones móviles, los eventos por sí solos no pueden ser utilizados para afirmaciones. La comparación de imágenes y los localizadores son métodos alternativos. El juego jugado durante la demostración utilizó una interfaz web y comunicación WebSocket. La flexibilidad de usar tecnologías y APIs familiares hace que esta configuración sea accesible. El costo aproximado de la configuración es de alrededor de $40 a $50, dependiendo de la disponibilidad de una impresora 3D.
Tenemos un montón de preguntas diferentes que realmente son la misma cosa, que es sobre multi-touch. Así que, zoom, pellizco, y diferentes cosas. ¿Cuál es el mapa de ruta del producto futuro, supongo? Esa es la pregunta real.
Ahora mismo, para tocar la pantalla, tenemos un lápiz. Así que básicamente, es un lápiz para teléfono, el barato, como $1 o algo así, que está conectado a tierra al microcontrolador. Básicamente, puedes conectar lo que quieras. Si conectas un lápiz, eso es un trazador. Si conectas un hotend, eso es una impresora 3D. Así que, básicamente, puedes conectar un pequeño... Como dos dedos, como dos lápices para crear deslizamientos y así sucesivamente. Depende de tu imaginación y de lo que seas capaz de hacer.
Bien, bien. Tenemos otra pregunta, y muchas de estas son personas que ven que esto es genial, quieren usarlo, y tal vez hay algunas características extra que quieren. Creo que la siguiente es algo así, especialmente hablaste sobre el sensor de cámara. Y supongo que si construyes un sensor de cámara, esta persona está preguntando sobre cómo asegurarse de que la siguiente pantalla que ocurre después de una acción es lo que se espera. Y sé que hablaste sobre el hecho de que hay una cámara, el hecho de que puedes usar IA. ¿Cómo implementarías eso? Así que, básicamente, depende de lo que estés tratando de lograr. Si estás usando aplicaciones de teléfonos móviles y estás ejecutando la aplicación, no puedes simplemente enviar eventos para hacer tus afirmaciones. Aquí hay una pantalla. He deslizado. Aquí hay otra pantalla. La aplicación móvil acaba de levantar un evento, así que puedo afirmar que todo funciona como se esperaba. También puedes usar la comparación de imágenes para hacerlo. Puedes usar localizadores. Depende de ti cómo quieras manejar esto. Por ejemplo, para el juego que has jugado, esta es una interfaz web. Así que cada vez que tenía que hacer una acción, simplemente estaba enviando comandos de vuelta a la estación de trabajo usando WebSocket. Bien, bien, bien. Y me encanta el hecho de que esto es porque todas las tecnologías, nuestro JavaScript y cosas con las que estamos familiarizados, todas las otras APIs y todos los otros pedazos de conocimiento que tenemos están disponibles para nosotros para usar con él. Por cierto, solo quiero decir que el costo total de esta configuración es más o menos de 40 a 50 dólares basado en cómo, si eres capaz de, como, si tienes una impresora 3D, probablemente sea menos.
Asequibilidad, Automatización Futura y Rápida Respuesta
Todos los componentes están ampliamente disponibles y son asequibles. El precio ronda los 40 a 50 dólares. Tapster ofrece una configuración utilizando un interruptor personalizado para controlar el teléfono utilizando la configuración de accessibility. En el futuro, la automatización de las actualizaciones de los casos de prueba puede depender de la configuración y la capacidad de identificar interacciones dinámicas. Es una situación de 'depende', así que no dudes en tener una charla con el orador. Ahora, pasemos a una ráfaga de respuestas de sí o no.
Pero todos los componentos están ampliamente disponibles. Como los motores servo son motores bastante comunes, de la vieja escuela para coches de control remoto. Así que sí, es bastante asequible si quieres hacerlo, si quieres construir algo así.
Oh, genial. Porque has anticipado mi siguiente pregunta. La siguiente pregunta era cuál es el precio. Sí, es más o menos 40 o 50 dólares. Lo interesante es que ahora tenemos más formas de hacerlo. Por ejemplo, Tapster, estaban trabajando en una configuración en la que han utilizado un interruptor personalizado que puede controlar el teléfono utilizando la configuración de accessibility. Así que están engañando al teléfono, haciéndole pensar que esto es un teclado y un ratón, por lo que puedes incluso ejecutar una configuración similar con un Arduino o una Raspberry Pi por mucho menos, creo que más o menos cinco dólares o así. Así que sí, definitivamente échales un vistazo.
Ahora eso es realmente, realmente impresionante. Y luego la última de las preguntas serias antes de llegar a las divertidas que sé que todo el mundo está esperando. Así que esta es sobre si la interfaz de usuario de la aplicación cambia cada vez que vas a necesitar actualizar tus casos de prueba y hacerlo todo bastante manualmente, supongo que en este momento. Quiero decir, ¿hay un futuro que imaginas donde podría ser más fácil automatizar los cambios en las pruebas? Creo que eso depende de la configuración que realmente tengas. Así como dije antes sobre el design responsive, si tú... Así que por ejemplo, si estás ejecutando pruebas en la interfaz web, como usando Cypress o Playwriter, puedes decir, hey, ve y haz clic en esta posición de la pantalla. Eso es bastante estático. Pero si de alguna manera tienes una forma dinámica de identificar las interacciones que quieres hacer, eso hace que todo el conjunto sea más flexible. Genial. Genial. Y una cosa que creo que es, y me gusta esta respuesta, todo depende. Y sinceramente, lo que diría es que después, ven a buscarlo y ten una charla. Supongo que te encantaría hablar de ello, considerando que has subido al escenario y has charlado sobre ello con todos nosotros. Así que gracias. Muchas gracias. Muy bien. Ahora lo que vamos a hacer es que vamos a saltar a una ráfaga de respuestas de sí o no para la siguiente pregunta. ¿Está bien? Sí, eso es justo.
Preguntas y Respuestas - Skynet, Captura de Robot, Código Fuente de Tinder
¿Nos matará Skynet en 10 años? Sí. ¿Puede el robot resolver la captura de No soy un robot? Sí, es bastante asombroso. ¿Has usado el robot para Tinder? No. ¿Puedes compartir el código fuente para Tinder? Sí, es de código abierto en el repositorio de GitHub de Tapster.
Eso es justo. Vale. Eso es bastante emocionante. Muy bien. Así que empezaremos con la primera. Sí o no. ¿Nos matará Skynet? ¿En unos 10 años? ¿Sí o no? Sí. En 10 años. Genial. Bien.
Siguiente. ¿Puede resolver la captura de No soy un robot? De hecho, sí. Hemos probado esto y es bastante asombroso porque tienen el error allí. Así que para los dispositivos móviles es bastante fácil hacerlo. Justo. Es irónico, ¿verdad?
Muy bien. Siguiente. Sí o no. Sin explicaciones. ¿Has usado el robot para Tinder también? No. No. Vale. Bueno, supongo que la respuesta es obvia en la siguiente. ¿Puedes compartir el código fuente para usarlo en Tinder? Preguntando para un amigo. Guiño. Énfasis en el guiño. El código fuente es de hecho de código abierto. Está en el repositorio de GitHub de Tapster para Tapster uno y dos. Incluye todo lo que necesitas para construir como una lista de materiales, un código y así sucesivamente. Y también los diseños 3D a los que puedes ir a un espacio de creación y imprimir en 3D toda la configuración.
Programación de Robots y Conectividad
No te preocupes, lo tienes cubierto. Si el robot hubiera ganado, ¿lo programarías para leer un libro de Node.js? La máquina está conectada a través de Wi-Fi, lo que permite exponer la configuración local al robot. Esta presentación fue increíble. ¡Muchas gracias!
Así que seas quien seas, no te preocupes, lo tienes cubierto. Solo necesitas hacer un poco de trabajo tú mismo.
Muy bien. Y la siguiente. Si el robot hubiera ganado, ¿lo habrías programado para leer un libro de Node.js? ¿Otra vez? Si el robot hubiera ganado, ¿lo programarías para leer el libro? No puedo responder a esta. Como sí. Esperemos que simplemente nunca gane y no tengas que enfrentarte al problema. Correcto.
Vale. Así que esto es sobre la realidad, la placa, la máquina. ¿Está conectada a través de Wi-Fi? ¿Cómo está conectada? Sí. Básicamente estoy conectado a través de, estoy en la red Wi-Fi y ambos están conectados a la misma Wi-Fi por lo que puedo exponer mi configuración local al robot, al teléfono móvil que está encendido. Eso es impresionante.
Y la última pregunta. No es una pregunta, pero es algo en lo que creo que todos estamos de acuerdo. Esta presentación fue increíble. Deberías seguir así. Queremos verte de nuevo. Dale un gran aplauso. Muchas gracias. Gracias. Gracias.
Comments