14 de agosto de 2010

Aprendizaje activo

El aprendizaje activo es una técnica en donde los estudiantes hacen más que sólo escuchar la clase que dicta el maestro. El énfasis principal es el desarrollo de habilidades, mientras que la simple transmisión de información pasa a segundo plano. Los alumnos logran un razonamiento de orden mayor (por ejemplo: análisis, síntesis y evaluación), entablan actividades entretenidas (por ejemplo: discusiones y resolución de problemas) y reflexionan sobre sus actitudes y valores.

En el Tec de Monterrey llevamos bastante tiempo incorporando el aprendizaje activo a nuestros cursos mediante la aplicación de diversas técnicas didácticas (por ejemplo: aprendizaje colaborativo, aprendizaje basado en problemas, aprendizaje orientado a proyectos). Sin embargo nunca está de más conocer algunas nuevas actividades que fomenten el aprendizaje activo dentro del salón de clases. Una buena fuente de inspiración para actividades relacionadas a las clases de computación es CS-Unplugged. Aunque dicho material está diseñado para niños de primaria, yo he visto que resulta muy interesante y entretenido incluso también para personas de edad adulta. Los temas cubiertos ahí incluyen cosas como números binarios, representación de imágenes, compresión de textos, algoritmos de búsqueda, autómatas de estado finito, y protocolos de criptografía. El sitio de CS-Unplugged está en inglés, pero ahí mismo hay un PDF en idioma español, el cual incluye la descripción completa de la mayoría de las actividades.

Durante la segunda clase de mi grupo de Fundamentos de programación realicé la actividad 12 de CS-Unplugged titulada "Siguiendo Instrucciones — Lenguajes de Programación". El resumen de esta actividad es el siguiente:
Las computadoras generalmente se programan usando un "lenguaje", que es un vocabulario limitado de instrucciones que pueden obedecer. Una de las cosas más frustrantes de la programación es que las computadoras siempre obedecen las instrucciones al pie de la letra, aunque produzcan resultados absurdos. Esta actividad proporciona a los niños cierta experiencia con este aspecto de la programación.
A una alumna voluntaria le pedí que describiera oralmente la siguiente imagen a sus demás compañeros (quienes no la habían visto previamente) con el fin de que cada quien la reprodujera por su cuenta.

Se permitió que los demás hicieran preguntas para clarificar las instrucciones. El propósito era ver qué tan rápido y preciso se podía realizar el ejercicio. La siguiente imagen muestra cómo quedó el dibujo de un alumno:


Posteriormente se repitió el ejercicio tres veces más, pero en estas tres ocasiones no se permitió hacer preguntas al responsable de describir las imágenes.


Estos fueron algunos resultados:


Al finalizar los ejercicios le hice notar al grupo que esta forma de comunicación es la más parecida a la que experimentan los programadores cuando escriben sus programas. Dan una serie de instrucciones a la computadora y no saben qué efecto tendrán sino hasta después. Independientemente de qué lenguaje se esté utilizando, un programador debe ser suficientemente hábil para especificar exactamente lo que quieren que haga la computadora. A diferencia de los humanos, una computadora sigue las instrucciones de manera literal, incluso si éstas no tienen mucho sentido.

No hay comentarios.:

Publicar un comentario