El marco de Brennan-Resnick: II. Prácticas

  • Nivel:
    • Bachillerato
    • E.S.O.
    • F.P.
    • Infantil
    • Primaria
  • Área del pensamiento computacional:
    • Conceptos, Evaluación y Currículum

Prácticas computacionales 

Resolver problemas con una orientación computacional, especialmente si utilizamos la programación como herramienta, supone desarrollar procedimientos que utilizan los conceptos que vimos en el artículo anterior. Las prácticas computacionales van a enfocarse en los procesos de pensamiento y aprendizaje, es decir, pasamos del qué aprendemos al cómo aprendemos  

 

Ser incremental e iterativo 

A menos que el problema que nos traigamos entre manos sea extremadamente sencillo, lo más adecuado será ir resolviéndolo poco a poco. Cada parte en que hayamos dividido el problema es un triunfo hacia la solución total, pues nos permite trabajar con algo más manejable, relajando nuestra mente al centrarnos en cosas más concretas. Esto significa “ser incremental”. Además, a medida que resolvemos un problema, ya sea total o parcialmente, habrá mejorado nuestra comprensión del mismo, y eso nos inspirará para descubrir una forma más eficaz de resolverlo. Este es un proceso que se repite; al volver a resolver el problema con ojos nuevos y más potentes, volvemos a descubrir mejoras a nuestra solución. En esto consiste “ser iterativo”. 

 

Probar y arreglar 

Puede ocurrir que el programa que hayamos propuesto para resolver computacionalmente un problema no funcione de primera. De hecho, por mucho que nos pese, esto es lo más probable. Pero aunque no funcione del todo, seguramente habrá partes que sí van en la dirección correcta. Probando las secuencias, observando su desempeño y modificándolas a la luz de los resultados obtenidos (y fallidos), llegaremos a resolver el problema, es decir arreglaremos el programa. El bucle “probar, observar, modificar, arreglar” es una práctica fundamental cuando resolvemos problemas computacionalmente. Este bucle omnipresente en el día a día de un programador es conocido también con el término “depuración”. 

 

Reusar y remezclar 

Seguramente el problema que estás resolviendo no se te haya planteado a ti por primera vez. Alguien lo habrá resuelto antes que tú. Y si no se ha resuelto exactamente el mismo problema que estás tratando, habrá otros parecidos que sí lo estén. Así que no tienes por qué comenzar todo desde el principio. Puedes apoyarte en otras soluciones previas. Desarrollar esta práctica te dotará de superpoderes en la resolución computacional de problemas y podrás llegar muy, muy lejos. Parafraseando al insigne padre de la física Sir Isaac Newton: “Si he llegado a ver más lejos que otros es porque me subí a hombros de gigantes”.

En muchas ocasiones bastará hacer unos pequeños cambios a algo que ya exista para obtener algo novedoso. Esto es lo que significa “reusar”. Incluso podrás acoplar distintas soluciones ya existente para construir una nueva solución. Esto es lo que quiere decir “remezclar”. Además no solo puedes reusar y remezclar cosas que otros hayan hecho. Las mismas soluciones y programas que tú mismo realices, podrás reusarlas y remezclarlas en otros proyectos. Con el tiempo habrás confeccionado un catálogo de soluciones propias, ajenas y mixtas que te facilitarán cada vez más el desarrollo de nuevos proyectos computacionales. 

 

Abstraer y modularizar 

Abstraer es un concepto complejo y de difícil definición. En breve, y en el contexto de la resolución computacional de problemas, significa ocultar los detalles y revelar los elementos más importantes del problema. Se trata de una práctica que requiere mucha práctica, valga la redundancia, para llegar a alcanzarla. Y no dudes que siempre podemos mejorarla. Cuando dividimos un problema en partes más sencillas y las resolvemos, estas soluciones se pueden volver a utilizar en el mismo problema, o en otros, para alcanzar la solución. Esto es una forma de “abstraer”. Si te fijas tiene mucho que ver con “reusar”. Primero se abstrae y después se usa y se reusa la abstracción para facilitar la resolución del problema.  Cada una de estas abstracciones, son como piezas de un lego, cada pieza sirve para una cosa (resuelve un subproblema) y combinándolas construimos el objeto final (resolvemos el problema total). Esta última es la idea que subyace bajo la dimensión “modularizar”. 

 

Hasta aquí hemos llegado con la segunda entrega del marco de Brennan-Resnnick, si quieres conocer o repasar las otras dimensiones, tienes disponible los artículos sobre perspectivasconceptos en el apartado de más recursos. Con esta infografía podrás recordar cuando lo necesites las 4 prácticas clave del Pensamiento Computacional. En la próxima semana trataremos las perspectivas del marco para completar esta introducción a las dimensiones clave del pensamiento computacional. 

Imágenes de realización propia a partir de iconos de Flaticon.es y Freepik.es

Fuente: Brennan, K., & Resnick, M. (2012). New frameworks for studying and assessing the development of computational thinking. Proceedings of the 2012 Annual Meeting of the American Educational Research Association. Vancouver: American Educational Research Association., 1, 25.