Lección 6: Programación Sin Conexión: Mis Amigos Robóticos

Algoritmos | Depurar | Sin conexión

Descripción

Usando un set de símbolos en lugar de códigos, los/as estudiantes diseñarán algoritmos para instruir a un/a "robot" para apilar vasos en patrones diferentes. Los/as estudiantes se turnarán para participar como el robot, respondiendo sólo al algoritmo definido por sus pares. Este segmento enseña a los/as estudiantes la conexión entre símbolos y acciones, la diferencia entre un algoritmo y un programa, y la valorable habilidad de debugging.

Propósito

Esta lección sin conexión une a la clase como un equipo que debe completar una tarea simple: hacer que un "robot" apile vasos de una forma específica. Los estudiantes trabajarán para reconocer acciones del mundo real como instrucciones potenciales en el código. También se practicará el diseño de instrucciones precisas, a medida que los estudiantes trabajan para traducir instrucciones escritas a los símbolos proporcionados. Si surgen problemas en el código, los estudiantes deben trabajar juntos para reconocer los errores y crear soluciones. Esta actividad sienta las bases para la programación que los estudiantes harán a lo largo del curso mientras aprenden la importancia de definir un algoritmo bien comunicado.

Agenda

Actividad previa (5 min)

Actividad Principal (45 min)

Actividad de Cierre (10 min)

Ver en Code Studio

Objetivos

Los estudiantes podrán:

  • Prestar atención a la precisión a la hora de crear instrucciones
  • Identificar y corregir bugs o errores en instrucciones en secuencia

Preparación

Enlaces

¡Importante! Haz una copia de los documentos que piensas compartir con los estudiantes.

Para los docentes

Para los estudiantes

Vocabulario

  • Algoritmo - una lista de tareas para finalizar una tarea.
  • Bug o error - parte de un programa que no funciona correctamente.
  • Depurar - encontrar y solucionar problemas en un algoritmo o programa.
  • Programa - un algoritmo que se ha programado como algo que puede ser ejecutado por una máquina.

Guía docente

Actividad previa (5 min)

Discussion Goal

El objetivo de esta discusión rápida es llamar la atención sobre el hecho de que mientras los robots pueden parecer comportarse como gente, están en realidad respondiendo sólo a su programación. Los alumnos probablemente se referirán a los robots de las películas y la TV que se comportan más como humanos. LLévelos a considerar a los robots que han visto o escuchado en la vida real, como Roombas, o incluso asistentes como Alexa de Amazón.

Hablando con Robots

Mostrar: Mire uno de los videos de abajo para dar a los alumnos un contexto para los tipos de cosas que pueden hacer los robots:

Discutir: Refiérase al video que escogió y pregunte a los alumnos cómo creen ellos que el robot supo que hacer. ¿Un robot "comprende" realmente lo que tú le dices? ¿Está preocupado de meterse en problemas si no hace lo que se le dice?

Decir: Los robots pueden solamente hacer lo que se les ha dicho que hacer, pero no sólo le decimos usando palabras. Con el propósito de hacer algo, un robot necesita tener una lista de pasos que se pueden leer. Hoy, vamos a aprender lo que implica hacer que suceda.

Actividad Principal (45 min)

Introducción y modelado

Símbolos robóticos

Instalación: Ten a disposición pilas de copas y trapezoides de papel cortado para los grupos.

Exhibición: Muestra el Programación: Mis Amigos Robóticos - Clave de símbolo o escribe las acciones permitidas en el cartel; asegúrate de que estos están ubicados en donde se pueden ver durante toda la actividad. Explícale a la clase que estas serán las únicas seis acciones que pueden usar para este ejercicio. Para esta tarea, instruiremos a su "robot" amigo a construya un pila de copas específicas usando solamente los comandos enumerados en el código.

Modelar: Para explicar cómo se intenta que funcionen las instrucciones, modela para la clase la forma de crear y seguir un algoritmo para replicar un patrón simple. Coloca un pila única de copas frente a ti para empezar.

Exhibición: Sostén el patrón que planeas modelar. Un patrón simple de tres copas es un gran lugar para comenzar.

Indicación: Pregunta a la clase cuál debería ser la primera instrucción usando solamente seis instrucciones permitidas. El primer movimiento debería ser "levantar la copa". Si los estudiantes sugieren algo más de la lista, realiza esa acción y permíteles que vean su error. Si sugieren algo que no está en la lista, crea una clara reacción de fallo y hazles saber que el comando no se comprende.

Con la copa en la mano, pídele a la clase que continúe dando instrucciones hasta que se coloque la primera copa. Este es un buen espacio para clarificar que "paso hacia adelante" y "paso hacia atrás" implican cada uno mover la mitad del ancho de una copa. Mira la imagen a continuación para referencia.

patrón de 3 copas

Sigue solicitando instrucciones del aula hasta que hayas completado todo el diseño.

Una vez que tu pila está completa, indica que te han dado una lista de pasos para completar una tarea. Eso es un algoritmo. Los algoritmos son una gran forma de compartir ideas, pero escribirlos palabra por palabra puede tomar mucho tiempo. ¡Para eso sirven los símbolos! Cuando cambias un algoritmo a símbolos que un robot (o computadora) entiende, eso se llama programar.

Pide a la clase que te ayude a escribir el "programa" para ese primer movimiento, y luego el resto de los movimientos necesarios para completar el patrón. Dependiendo de la confianza de tus estudiantes, puedes alternar frecuentemente entre actuar como el "robot" y escribir el código, o podrías alentarlos a escribir todo el programa antes de implementarlo. Una posible solución puede ser esta:

solución de 3 copas

Voluntario: Una vez que la clase haya completado el programa modelo, pídele a uno de los estudiantes que se acerque y actúe como el "robot" para garantizar que el programa realmente funcione. Aliéntalos a decir las instrucciones en voz alta mientras "ejecutan" el código.

Programar tus robots

Agrupar: Coloca a los estudiantes en grupos de 4. Cada grupo luego debería dividirse entre dos pares; cada par desarrollará su propio programa que será "ejecutado" por otros dos pares.

Distribuir: Dale a cada grupo una pila de copas o recortes de papel.

Exhibir: Muestra Apilando Ideas - Manipuladores a la clase o entrega copias individuales para que usen los grupos. Haz que cada par (no grupo) elija qué idea le gustaría que hiciesen los robots. Intenta impulsar una idea más sencilla por primera vez, luego haz que elijan un diseño mucho más complejo más adelante. Alienta a las parejas a mantener en secreto su elección de la otra mitad de su grupo.

Discutir: Dale a cada pareja tiempo para discutir cómo debería estar armada la pila usando solamente los símbolos brindados. Asegúrate de que cada grupo escriba el "programa" en alguna parte para que el "robot" lo lea más tarde.

Teaching Tip

Aplicación de las reglas: Mientras que el robot está trabajando en la pila, asegúrate de que la clase sepa:

  • Los programadores no pueden hablar cuando el robot esté funcionando. Esto incluye soltar preguntas o señalar cuándo el robot ha hecho algo malo.
  • Los programadores deben levantar la mano si ven un error.

Hacer¨: Una vez que ambos pares de grupos hayan tomado una decisión sobre sus algoritmos, pueden tomar turnos siendo "robots" para cada uno siguiendo las instrucciones que cada par escribió. Alienta a los estudiantes a mirar su "robot" de cerca para garantizar que están siguiendo las instrucciones. Si un estudiante ve un error y levanta la mano, haz que el robot finalice las instrucciones dentro sus capacidades. Luego, haz que los estudiantes discutan el potencial error y obtengan una solución. Sigue repitiendo hasta que la pila esté armada correctamente.

Circular: Busca grupos que estén intentando tomar atajos agregando cosas (como números) a su código. Elógialos por su ingenio, pero recuérdales que para este ejercicio, los robots no comprenden nada que no sean los símbolos proporcionados. Si quieres, puedes sugerir que deberían guardar su brillante solución para la próxima vez que jueguen este juego, dado que pueden tener la oportunidad de usarla pronto.

Iterar: Dependiendo de tu tiempo disponible, mezcla las parejas y bríndales la oportunidad de hacer un patrón diferente. Cada vez que los grupos repiten el proceso, aliéntalos a elegir un patrón más desafiante.

Discussion Goal

Reflexionar: El objetivo de este debate es darles a los estudiantes un espacio para pensar en el sentido de su experiencia, como robot y como programador. Las preguntas son intencionalmente amplias, pero diseñadas para hacer que los estudiantes piensen sobre los desafíos de escribir un programa claro y sobre las restricciones de un robot o una computadora al interpretar sus instrucciones.

Discutir: Después de que todos han tenido para oportunidad de ser el robot, haz que la clase vuelva a debatir sobre su experiencia. En particular, discute como clase:

  • ¿Cuál fue la parte más difícil de obtener las instrucciones?
  • ¿Alguien encontró un error en tus instrucciones una vez que el robot las estaba siguiendo?
    • ¿Cuál fue el error?
    • ¿Por qué crees que no lo notaste cuando estabas escribiendo el programa?
  • Cuando eras el robot, ¿cuál fue la parte más difícil de seguir las instrucciones que recibiste?

Actividad de Cierre (10 min)

Escribir en el Diario

Hacer que los/as estudiantes escriban acerca de lo que aprendieron, por qué es útil y cómo se sienten, puede ayudar a solidificar cualquier conocimiento que hayan obtenido hoy y a construir una hoja de revisión para que la revisen en el futuro.

Sugerencias para el Diario:

  • ¿De qué trató la lección de hoy?
  • ¿Cómo te sentiste durante la lección?
  • Dibuja una pila de vasos que el robot hizo hoy.
  • ¡Dibuja una pila de vasos que te gustaría que hiciera un robot algún día!

Normas de aprendizaje

Ver las normas del curso

Estándares para ciencias de la computación CSTA K-12 (2017)

AP - Algoritmos y programación
  • 1A-AP-09 - Modela la forma en que los programas almacenan y manipulan datos utilizando números u otros símbolos para representar información.