jueves, 4 de enero de 2018

Pensamiento computacional ¿Una tercera competencia clave? (III). ¿Qué es el Pensamiento Computacional? Una definición.


Ésta es la tercera de una serie de entradas que, en conjunto, constituirán un capítulo del libro que estamos preparando para ser editado por la Editorial de la Universidad Católica de Santa María de Arequipa (Perú) con el título provisional de "Pensamiento computacional", cuya descripción y contenido se explica de forma provisional en otro post de este mismo blog
El título del capítulo ya encierra un propuesta de consideración de lo que debe ser el pensamiento computacional dentro del curriculum escolar de Primaria, Secundaria, Bachillerato o Secundaria Postobligatoria e incluso Educación Infantil: Pensamiento computacional ¿Una tercera competencia clave?


2. Definición de Pensamiento Computacional

Tras lo visto sobre Alfabetización Digital y conceptos asociados podemos abordar directamente la idea de pensamiento computacional.
Una primera aproximación a ese concepto es la que hace la informática Tasneem Raja (2014) en el post We Can Code It! , de la revista-blog Mother Jones:
“El enfoque computacional se basa en ver el mundo como una serie de puzzles, a los que se puede romper en trozos más pequeños y resolver poco a poco a través de la lógica y el razonamiento deductivo”.
Esta es una forma intuitiva en la que una autora, que proviene del mundo computacional, aborda una serie de métodos ampliamente conocidos en el mundo de la psicología del aprendizaje. Implícitamente está hablando de análisis descendente y de elaboración: Puzzles —problemas— que se pueden dividir en puzzles—problemas— más pequeños, para ir resolviéndolos. También, en el mismo párrafo, vemos una alusión implícita a la recursividad, falta la cláusula de parada y la vuelta atrás, pero evidentemente después de armar los puzzles pequeños cada uno hay que ensamblarlo en el puzzle general. Y también habrá que decir en qué nivel habrá que parar y dar marcha atrás.
Sin embargo, aunque todo el mundo la cita, no es  una buena definición, en general no es una definición es simplemente una cercamiento, eso sí afortunado al problema. Tampoco aborda la cuestión de una forma mínimamente estructurada o sistemática, ni con la complejidad que requiere, como veremos.
Hay otros procedimientos para abordar tareas complejas que igualmente se pueden considerar como propias de este pensamiento, como son el análisis ascendente, y todo lo que constituye la heurística, el pensamiento divergente o lateral, la creatividad, la resolución de problemas, el pensamiento abstracto, la recursividad, la iteración, los métodos por aproximaciones sucesivas, el ensayo-error, los métodos colaborativos, el entender cosas juntos, etc. que veremos en lo que sigue.
La definición de pensamiento computacional que se considera la más apropiada, y la que a falta de otra utilizaremos, es la que dió Jeannette Wing (Wing, March 2006), vicepresidente corporativo de Microsoft Research y profesora de Computer Science Department Carnegie Mellon University , que fue quien popularizó el término en su artículo “Computational Thinking. It represents a universally applicable attitude and skill set everyone, not just computer scientists, would be eager to learn and use”, cuyo título es en sí mismo una definición.
Wing dice que el “pensamiento computacional” es una forma de pensar que no es sólo para programadores. Y lo define:
“El pensamiento computacional consiste en la resolución de problemas, el diseño de los sistemas, y la comprensión de la conducta humana haciendo uso de los conceptos fundamentales de la informática”.
En ese mismo artículo continúa diciendo que
“esas son habilidades útiles para todo el mundo, no sólo para los científicos de la computación”.
Pero lo más interesante y lo que nos dio el método para trabajar en el artículo precedente de este trabajo (Zapata-Ros, 2015), es que describe una serie de rasgos que nos van a ser muy útiles para continuar con el trabajo de construir un corpus curricular para el aprendizaje basado en el pensamiento computacional. Así por ejemplo se dice:
  • En el pensamiento computacional se conceptualiza, no se programa.- Es preciso pensar como un científico de la computación. Se requiere un pensamiento en múltiples niveles de abstracción;
  • En el pensamiento computacional  son fundamentales las habilidades no memorísticas o no mecánicas.– Memoria significa mecánico, aburrido, rutinario. Para programar los computadores hace falta una mente imaginativa e inteligente. Hace falta la emoción de la creatividad. Esto es muy parecido al pensamiento divergente, tal como lo concibieron Polya (1989) y Bono (1986).
  • En el pensamiento computacional se complementa y se combina el pensamiento matemático con la ingeniería.- Ya que, al igual que todas las ciencias, la computación tiene sus fundamentos formales en las matemáticas. La ingeniería nos proporciona la filosofía base de  que construimos sistemas que interactúan con el mundo real.
  • En el pensamiento computacional lo importante son las ideas, no los artefactos. Quedan descartados por tanto la fascinación y los espejismos por las novedades tecnológicas. Y mucho menos estos factores como elementos determinantes de la resolución de problemas o de la elección de caminos para resolverlos.

Wing (March 2006) continua con una serie de rasgos, pero lo interesante ahora, con ser importante, no es esta perspectiva en sí sino, en el contexto de un análisis y de una elaboración interdisciplinar, ver las implicaciones que tienen estas ideas para una redefinición de un dominio teórico específico dentro de las teorías del aprendizaje. Eso por un lado, y por otro encontrar un currículum adecuado a esos dominios conceptuales para las distintas etapas educativas y para la capacitación de maestros y profesores.


Referencias

Bono, E. D. (1968). New think: the use of lateral thinking in the generation of new ideas. Basic Books.
Pólya, George (1945). How to Solve ItPrinceton University Press.
Pólya, G. (1989). Como plantear y resolver problemas Ed. Trillas. (Primera edición 1965)
Raja, T. (2014). We can code it!. http://www.motherjones.com/media/2014/06/computer-science-programming-code-diversity-sexism-education.
Wing, J.M. (March 2006). Computational Thinking. It represents a universally applicable attitude and skill set everyone, not just computer scientists, would be eager to learn and use. COMMUNICATIONS OF THE ACM /Vol. 49, No. 3. https://www.cs.cmu.edu/~15110-s13/Wing06-ct.pdf
Zapata-Ros, M. (2015). Pensamiento computacional: Una nueva alfabetización digital. RED. Revista de Educación a Distancia. Número 46.  15 de Septiembre de 2015. Consultado el (dd/mm/aa) en http://www.um.es/ead/red/46



Pensamiento computacional ¿Una tercera competencia clave? (II). ¿Qué es el Pensamiento Computacional?

Ésta es la segunda de una serie de entradas que, en conjunto, constituirán un capítulo del libro que estamos preparando para ser editado por la Editorial de la Universidad Católica de Santa María de Arequipa (Perú) con el título provisional de "Pensamiento computacional", cuya descripción y contenido se explica de forma provisional en otro post de este mismo blog
El título del capítulo ya encierra un propuesta de consideración de lo que debe ser el pensamiento computacional dentro del curriculum escolar de Primaria, Secundaria, Bachillerato o Secundaria Postobligatoria e incluso Educación Infantil: Pensamiento computacional ¿Una tercera competencia clave?
En la primera abordamos la pertinencia del Pensamiento Computacional 

1. Alfabetizaciones y culturas digitales

El pensamiento computacional se ha definido como una nueva alfabetización digital. Será importante que primero nos acerquemos a este concepto.
La idea más extendida sobre lo que es la alfabetización digital (Digital Literacy) es que consiste en una trasposición.
A lo largo de la historia se han sucedido distintas alfabetizaciones y todas han tenido una significación común: han supuesto una adaptación a los nuevos medios de comunicación, representación y proceso de la información entre humanos. Así, según esta idea, la Alfabetización Digital es la adaptación y la capacitación para esas funciones de comunicación, representación y proceso a las coordenadas de la revolución tecnológica y de la sociedad de la información, consideradas en sentido estrictamente tecnológico, como revolución de medios de comunicación y de difusión de ideas.
Ésta es la idea del autor que pasó como el creador del concepto: Paul Gilster (1997). Este autor no nos proporcionó una listas de habilidades, competencias o actitudes en la  definición de lo que es una cultura digital (a diferencia de como nosotros tratamos de hacer). Dio una explicación muy general, como la capacidad de entender y utilizar la información de una gran variedad de fuentes digitales. Por tanto, se trata de la actualización per se de lo que se entiende de forma  tradicional por alfabetización. Sólo que en este caso se trata de  la capacidad de leer, escribir y realizar cualquier transacción con la información, pero ahora utilizando las tecnologías y los formatos de datos actuales, al igual que la alfabetización clásica utilizaba la tecnología de la información y los formatos de cada época (libros, papiros, pergaminos, tablillas,…). Pero sobre todo, en ambos casos, se considera como un conjunto de habilidades esenciales para la vida. La crítica es que ésta es una expresión genérica del concepto, sin ir ilustrada o acompañada "listas de competencias". Limitación que intentamos superar en nuestro trabajo (Zapata-Ros, 2015)
Otros autores utilizaron y explicaron el concepto durante los años noventa:

Bawden (2001) la define como la capacidad de leer y comprender  elementos de información en los formatos de hipertexto o multimedia.

Lanham (1995) la considera como una especie de "alfabetización multimedia”. Se basaba, de forma débil, en que desde una fuente digital se podrían generar muchas formas de texto, de informaciones, imágenes, sonidos, etc.  Esto justificaba la necesidad de una nueva forma de alfabetización, con el fin de interpretar, de  dar sentido a estas nuevas formas de presentación, obviamente una alfabetización entraña muchas más operaciones y ámbitos de desarrollo que las técnicas interpretativas. Obviamente se trataba además de un planteamiento restrictivo al centrarse en el multimedia, frente al concepto más amplio de la alfabetización digital, demasiado focalizado en una tecnología concreta de una época concreta.

Distintas concepciones de este tipo son revisadas ​​por Eshet (2002) revisa estas concepciones ye llega a la conclusión de que la alfabetización digital debe considerarse  más como  la capacidad de utilizar las fuentes digitales de forma eficaz. Se trata pues  de un tipo especial de mentalidad o pensamiento. Esta conceptualización está bastante más próxima a lo que planteamos en este trabajo, solo que se refiere a la forma de procesar la información no a organizar la resolución de problemas. El pensamiento computacional es más una resolución de problemas.

Pero un gran mérito de la definición de Gilster, en su libro de 1997, es que rechaza de plano la idea que dio lugar al mito de los “nativos digitales”.  Afirma explícitamente que "la alfabetización digital tiene que ver con  el dominio de las ideas, no con las pulsaciones en el teclado". Dice claramente, en su concepción, lo limitado de las "habilidades técnicas" desde la perspectiva de la alfabetización digital. Señala que "no sólo hay que adquirir la habilidad de hallar las cosas, sobre todo se debe adquirir la capacidad de utilizar esas cosas en la vida del individuo"(pp. 1-2).

Un fuerte impulso de esta idea sobre lo establecido por Gilster (1997) lo da David Bawden (2008, Capítulo 1), donde afirma  que la alfabetización digital implica una forma de distinguir una variedad creciente de conceptos y de hechos, para delimitar los que son relevantes en orden a conseguir  el dominio de las ideas. E insiste en lo necesario para ello de una evaluación cuidadosa de la información, en el análisis inteligente y en la síntesis. Todo ello como vemos tiene que ver con la metacognición. Para ello  proporciona listas de habilidades específicas y de técnicas que se consideran necesarias para estos objetivos, y  que en conjunto constituyen  lo que califica como una cultura digital. Es importante señalar que los auténticos avances sobre estas ideas siempre son las mismas, provienen de listas de competencias, donde resaltan los aspectos metacognitivos.

Sobre estas competencias Bawden (2008) remite a las expuestas en otro trabajo anterior (Bawden, 2001). En las habilidades que señalan se constatan ideas como la de construir un "bagaje de información fiable" de diversas fuentes, las habilidades de recuperación, utilizando una forma de "pensamiento crítico" para hacer juicios informados sobre la información recuperada, y para asegurar la validez e integridad de las fuentes de Internet, leer y comprender de forma dinámica y cambiante material no secuencial. Y así una serie de habilidades donde como novedad se introducen las affordances de conocimiento en entornos sociales y de comunicación en redes, y la idea de relevancia.

Llegados a este punto hay una segunda línea de delimitación conceptual, estudiada por Eshet-Alkalai (2004). A partir de su reflexión  advierte sobre la incompatibilidad entre los planteamientos de aquellos que conciben la alfabetización digital como "principalmente constituida por habilidades técnicas, y los que la ven centrada en aspectos cognitivos y socio-emocionales del trabajo en entornos digitales”.

Otro criterio que se ha tenido en cuenta en la aproximación al concepto de Alfabetización Digital fue el de clasificar (Lankshear y Knobel, 2006) según se tratase de un enfoque conceptual o de un enfoque "operacional”.

Es importante esta última tendencia, la de definiciones basadas en operaciones,  porque implica una estandarización. Y esto confiere un carácter "funcional" a  la Alfabetización Digital. Estamos pues en presencia de un enfoque de índole cultura digital, centrando en el estudio en la naturaleza de las  tareas, presentaciones, demostraciones de habilidades, etc. que se realizan, que progresan en la construcción de estándares  para definir qué es o no es Alfabetización Digital.

Por último hay una variante comercial de la Alfabetización Digital, que consiste en una certificación de competencias. Es la acreditación conocida como Internet and Computing Core Certificación (IC³) (www.certiport.com). Su página web  afirma que la "certificación IC³ ayuda a aprender y demostrar a Internet y la alfabetización digital a través de un estándar de evaluación del aprendizaje válido para la industria en todo el mundo". Se basa en un sistema de formación y de certificación a través de un examen que abarca contenidos sobre Fundamentos de  Informática, en aplicaciones básicas y clave para la vida,  y en lo que llaman la “vida conectada”.
Lo que se propone en este trabajo, con la construcción de idea del pensamiento computacional a partir de elementos o de formas específicas de pensamiento para resolver problemas, tiene que ver con la Alfabetización Digital en que éste está constituido por competencias clave que sirven para aprender y comprender ideas, procesos y fenómenos no sólo en el ámbito de la programación de ordenadores o incluso del mundo de la computación, de Internet o de la nueva sociedad del conocimiento, sino que es sobre todo útil para emprender operaciones cognitivas y  elaboración complejas que de otra forma sería más complejo, o imposible, realizar. O bien, sin estos elementos de conocimiento, sería más difícil resolver ciertos problemas de cualquier ámbito no solo de la vida científica o tecnológica sino de la vida común. Como dijimos se considera como un conjunto de habilidades esenciales para la vida en la mayoría de los casos y como un talante especial para afrontar problemas científicos y tecnológicos. Señalamos en relación con esta última acepción algunos ejemplos que veremos después, o hemos visto, en este trabajo, como son el de la  determinación de los génesis de los contagios, en el caso que cuestiona teorías generales como la teoría miasmática del origen de las enfermedades, o la secuencia de llenado de los asientos en el embarque de aeronaves.

Referencias
Bawden, D. (2001). Information and digital literacies: a review of concepts. Journal of Documentation, 57(2), 218–259.
Bawden, D. (2008). Origins and concepts of digital literacy. Digital literacies: Concepts, policies and practices, 17-32. http://sites.google.com/site/colinlankshear/DigitalLiteracies.pdf#page=19
Eshet, Y. (2002). Digital literacy: A new terminology framework and its application to the design of meaningful technology-based learning environments, In P. Barker and S. Rebelsky (Eds.), Proceedings of the World Conference on Educational Multimedia, Hypermedia and Telecomunications, 493–498 Chesapeake VA: AACE, Retrieved November 30, 2007, from http://infosoc.haifa.ac.il/DigitalLiteracyEshet.doc
Eshet-Alkalai, Y. (2004), Digital literacy: a conceptual framework for survival skills in the digital era, Journal of Educational Multimedia and Hypermedia, 139(1), 93–106. Available at: http://www.openu.ac.il/Personal_sites/download/Digital-literacy2004-JEMH.pdf
Lanham, R.A. (1995). Digital literacy, Scientifi c American, 273(3), 160–161.
Lankshear, C. and Knobel, M. (2006). Digital literacies: policy, pedagogy and research considerations for education. Digital Kompetanse: Nordic Journal of Digital Literacy, 1(1), 12–24.
Zapata-Ros, M. (2012). La Sociedad Postindustrial del Conocimiento. Un enfoque multidisciplinar desde la perspectiva de los nuevos métodos para organizar el aprendizaje. Amazon. Consultado en http://www.amazon.es/Sociedad-Postindustrial-del-Conocimiento-multidisciplinar/dp/1492180580.
Zapata-Ros, M. (2015). Pensamiento computacional: Una nueva alfabetización digital. RED. Revista de Educación a Distancia. Número 46.  15 de Septiembre de 2015. Consultado el (dd/mm/aa) en http://www.um.es/ead/red/46


sábado, 30 de diciembre de 2017

Pensamiento computacional ¿Una tercera competencia clave? (I)

Con ésta quiero iniciar una serie de entradas que en conjunto constituyan un capítulo del libro que estamos preparando para ser editado por la Editorial de la Universidad Católica de Santa María de Arequipa (Perú) con el título provisional de "Pensamiento computacional", cuya descripción y contenido se explica de forma provisional en otro post de este mismo blog
El título del capítulo ya encierra un propuesta de consideración de lo que debe ser el pensamiento computacional dentro del curriculum escolar de Primaria, Secundaria, Bachillerato o Secundaria Postobligatoria e incluso Educación Infantil: Pensamiento computacional ¿Una tercera competencia clave? 
Parte primera

¿Por qué un corpus curricular sobre “pensamiento computacional” ahora?

Hace dos años decíamos (Zapata-Ros, 2015) que “las instituciones y agencias competentes, los expertos y los autores de informes de tendencia se han visto sorprendidos por un hecho: la sociedad y los sistemas de producción, de servicios y de consumo demandan profesionales cualificados en las industrias de la información”. Constatando, en el mundo desarrollado, la existencia de altas tasas de paro con un considerable número de puestos de trabajo de ingenieros de software, desarrolladores de aplicaciones, documentalistas digitales, que se quedan sin cubrir por falta de egresados de las escuelas técnicas, por falta de demanda de estos estudios por parte de potenciales alumnos y sobre todo por la falta de personal capacitado.
Esta era una causa pero hay otras que señalamos en (Zapata-Ros, 2012) como son las disrupciones universitarias que hacen que un número considerable de individuos algunos extremadamente competentes soslayen la vía de formación, y promoción profesional formales que teóricamente la universidad tienen encomendadas por otras más autónomas.
Tras una primera etapa de toma de conciencia ante la situación algunos países han reaccionado de forma diversa según podemos ver otro apartado del presente trabajo.
En ese cuadro podemos ver distintas respuestas por parte de los sistemas educativos de los países más sensibles, los que han abordado el problema desde la perspectiva de una reorganización del curriculum. Sin embargo la cuestión de fondo supone la aparición de unas nuevas destrezas básicas. Las sociedades más conscientes han visto que se trata de una nueva alfabetización, una nueva alfabetización digital, y que por tanto hay que comenzar desde las primeras etapas del desarrollo individual, al igual como sucede con otras habilidades clave: la lectura, la escritura y las habilidades matemáticas, e incluso estudiando las concomitancias y coincidencias de esta nueva alfabetización con estas competencias claves tradicionales.
Afortunadamente la propuesta de poner los niños a programar desde las primeras etapas está cediendo. Según esta opción, la más frecuente hasta ahora y la más simple  a fuer de ser una respuesta  mecánica, ha consistido en favorecer el aprendizaje de la programación y de sus lenguajes de forma progresiva. Esto consistiría en proponer a los niños tareas de programar desde las primeras etapas. De manera que la progresión estuviese en la dificultad de las tareas y en su carácter motivador, desde las más sencillas y más lúdicas a las más complejas y aburridas. Se vincula aprendizaje con la respuesta a un estímulo, no con las características de aprendizaje y cognitivas del niño, en la tradición más clásica del conductismo.
Sin embargo una propuesta que hacíamos hace dos años (Zapata-Ros, 2015) se está abriendo cada vez más paso y lo hace de manera más decisiva. Se trata de la alternativa, ya tenida en cuenta (Papert, 1980),  que enlaza con corrientes clásicas del aprendizaje apoyado en la tecnología. Nos referimos al construccionismo. Esta alternativa está sostenida por algunos autores, inspira a profesores y grupos innovadores en la puesta en marcha de actividades y en algunos pocos casos a corporaciones que,  frecuentemente de forma aislada, nos planteamos la cuestión de otro modo: Las competencias que se muestran como más eficaces en la codificación son la parte más visible de una forma de pensar que es útil no sólo en ese ámbito de actividades cognitivas, las que se utilizan en el desarrollo y en la creación de programas y de sistemas informáticos. En definitiva sostienen que hay una forma específica de pensar, de organizar ideas y representaciones, que es propicia y que favorece las competencias computacionales. Se trata de una forma de pensar que propicia el análisis y la relación de ideas  para la organización y la representación lógica de procedimientos. Esas habilidades se ven favorecidas con ciertas actividades y con ciertos entornos de aprendizaje desde las primeras etapas. Se trata del desarrollo de un pensamiento específico, de un pensamiento computacional.
Hemos dicho que un precedente remoto de estas ideas está en el construccionismo, en las ideas de autores como Seymourt Paper en las ideas que puso en marcha ahora hace cincuenta años.
Paulo Blikstein (2013) de la Universidad de Stanford, dice que si un historiador tuviera que trazar una línea que uniese la obra de Jean Piaget sobre la psicología del desarrollo a las tendencias actuales en la tecnología educativa, la línea simplemente se llamaría “Papert”.  Seymour Papert ha estado en el centro de tres revoluciones: el desarrollo del pensamiento en la infancia, la inteligencia artificial y las tecnologías informáticas para la educación. Quizá el que no haya tenido el impacto debido se deba a que se anticipó.
La visión de Papert se podría sintetizar diciendo que “los niños deben programar la computadora en lugar de ser programados por ella” (children should be programming the computer rather than being programmed by it) (Papert, 1980  a través de Blikstein, 2013)
Ahora, en la fase actual del desarrollo de la tecnología y de las teorías del aprendizaje se podría decir “son los niños los que tienen que educar a los ordenadores no los ordenadores los que tienen que educar a los niños”
Este trabajo, el anterior (Zapata-Ros, 2015), y en general las actividades y reflexiones que se proponen, están justificados por el papel que, en el contexto de cambios sociales, laborales, y culturales (Zapata-Ros, 2014), tiene el desarrollo individual que, desde las primeras etapas, faciliten una integración en ese nuevo entorno, mediante un  aprendizaje orientado hacia las competencias que son necesarias en la programación.
Se trata pues, como vamos a ver, de una nueva alfabetización. De una alfabetización que permita a las personas en su vida real afrontar retos propios de la nueva sociedad. Pero no solo eso, que permita a los individuos organizar su entorno, sus estrategias de desenvolvimiento, de resolución de problemas cotidianos, además de  organizar su mundo de relaciones, en un contexto de comunicación más racional y eficiente.
Todo ello con el resultado de que los individuos puedan organizar estrategias más eficientes para conseguir objetivos personales de índole muy diversa. En definitiva se trata de conseguir una mayor calidad de vida y un mayor nivel de felicidad.
Coincidiendo con la perspectiva que señaló Paper (1980) y antes los psicólogos genéticos y constructivistas (Piaget, 1977) sobre el desarrollo, en este planteamiento subyace, como idea-fuerza,  que, al igual a como sucede con la música, con la danza o con la práctica de deportes, es clave  que se fomente una práctica formativa del pensamiento computacional desde las primeras etapas de desarrollo. De manera que, al igual que se pone en contacto a los niños con un entorno musical, de danza o de  deporte, se haga con un entorno de affordances y de actividades que promuevan, a través de la observación y de la manipulación, destrezas y formas de pensar que sean un campo abonado donde se inserten, fluyan, las formas de trabajar y de resolver problemas propias de los programadores eficientes.
Sin embargo hay que decir, y así lo constatamos en las indagaciones que hemos hecho para escribir este capítulo, que no tenemos en muchos casos ni evidencias de que esos entornos y esas manipulaciones desarrollen las destrezas computacionales o habilidades asociadas a lo que hemos llamado pensamiento computacional.  Habría pues, como primera cuestión, señalar la necesidad de fomentar investigaciones para tenerlas.
De alguna forma, no es nueva esta perspectiva, pero sí descontextualizada de esa situación. Tradicionalmente, en el diseño curricular de las primeras etapas de desarrollo se ha hablado de aprendizajes  o de destrezas concretas que en un fururo predispondría a los aprendices para aprender mejor en un futuro habilidades matemñatica, geométricas, de lenguaje, como son la seriación, discriminación de objetos por propiedades, en las primeras etapas, y en las del pensamiento abstracto o para la resolución de problemas se ha hablado de la modularización, de análisis descendente, de análisis ascendente, de recursividad,… en la perspectiva Montesori () por ejemplo esto es básico. Para ello se han desarrollado ya multitud de recursos, juegos y actividades que los educadores infantiles conocen bien.

En el trabajo que sirve de precedente a este (Zapata-Ros, RED 46) recurrimos a un caso de un niño que secuencia a los pocos meses y ha utilizado juguetes de este tipo. Ese mismo niño ha utilizado juegos de composición (tangram y puzles) y de percepción y manipulación del espacio 3D, con un notable rendimiento en pensamiento abstracto en esta área. De esta manera en un ejercicio de dibujo, sin orientaciones previas, el niño fue capaz de dibujar la planta de su clase, como podemos ver la reproducción donde se distinguen elementos claramente simbolizados en formas, como son la pizarra la mesa y sillas o la escalera. Así como una persona que podría ser un maestro o un niño.
El niño se ha desprendido de su contingencia corporal-espacial y ha visto la distribución del espacio y objetos, claramente simbolizados como si estuviese desde arriba.


Hay por tanto multitud de áreas del aprendizaje que conviene explorar e investigar en esta nueva frontera. Y en la planificación de los curricula tendrá que plantearse esta dicotomía: Enseñar a programar con dificultad  progresiva (si se quiere incluso de forma lúdica o con juegos) o favorecer este nuevo tipo de pensamiento. Obviamente no hace falta decir que nuestra propuesta es la segunda, que además incluye a la primera.
Pero volvamos al tema central, la naturaleza y el tema del pensamiento computacional.
Tropezamos con varios problemas de comienzo: delimitar el contenido y encontrar los términos y conceptos adecuados para definirlo.
En un principio se utilizó la expresión codificación y precodificación. La segunda extraída de la literatura anglosajona, coding  o code. En este sentido se utilizó en los textos que publicitaron el año 2014 como el año del código, o de la codificación, o de la programación (Year of code). Es importante acceder al documento de difusión donde además de utilizar el término code dan una aproximación bastante general pero precisa del término ya desde el principio. Así se dice:
A través de la codificación (code) la gente puede descubrir el poder de la informática, cambiando su forma de pensar acerca de su entorno y obtener el máximo provecho del mundo que le rodea.

La codificación (coding) es cada vez más una competencia clave que tendrá que ser adquirida por todos los jóvenes estudiantes y cada vez más por los trabajadores en una amplia gama de actividades industriales y profesiones. La codificación es parte del razonamiento lógico y representa una de las habilidades clave que forma parte de lo que ahora se llaman “habilidades del siglo 21″.
Como vemos es un dominio conceptual muy próximo a lo que hemos visto y veremos que es el pensamiento computacional, al menos se expresa con ese sentido que le hemos atribuido.
Por otro lado de igual forma que se habla de prelectura, pre-escritura o precálculo para nombrar competencias que allanan el camino a las destrezas clave y a las competencias instrumentales que anuncian, cabe hablar de precodificación preprogramación para designar las competencias que son previas y necesarias en las fases anteriores del desarrollo para la codificación.
Un planteamiento útil en este sentido es que los niños se familiaricen en las primeras etapas de desarrollo a preconceptos de variable, función, valor, parámetros, que sin necesidad de referencias explícitas, desarrollen habilidades y preconceptos  que en el futuro puedan alojar operaciones o conceptos más complejos propios de habilidades cognitivas superiores más propios de la programación. Así los equivalesntes a variables pueden ser rasgos de objetos como el color, la forma, el tamaño,… Y los procedimientos u operaciones con estos rasgos (variables) pueden ser la seriación, el encaje, etc. Evidentemente hay muchas más habilidades y más complejas en su análisis y en el diseño de actividades y entornos para que este aprendizaje se produzca. Así, este ámbito de la instrucción es lo que podría denominarse precodificación o preprogramación. Sin embargo creemos que es más propio llamarle precodificación, pues codificación describe, con más precisión y más ajuste conceptual, la transferencia de acciones e informaciones para que puedan ser interpretados por los ordenadores y otros dispositivos de proceso, circulación y almacenamiento de la  información.
Si solamente hablásemos de algo preparatorio para la programación, podríamos hacerlo así, y sin duda sería correcto. Sin embargo esto se correspondía con un propósito más amplio que es prepararse para dotarse de claves de comprensión y de representación de los objetos de conocimiento en general. Es por ello que vemos más adecuada la expresión “pensamiento computacional” (computational thinking), que a continuación desarrollaremos
Otra expresión que se propone habitualmente es la de alfabetización digital, o “una nueva alfabetización digital”. Sin embargo hay que  reconocer que, al menos en español e impropiamente, esta expresión tiene resonancias próximas al término “alfabetización informática”, al menos en su uso. Que inevitablemente, por el uso, nos recuerda la informática de usuario, al considerare esta alfabetización como el conocimiento y la destreza para manejarse en entornos de usuario. Así es frecuente entre la gente poco ilustrada confundir al buen informático con el que maneja bien, es hábil, con los programas de usuario, las APPs, o al que se maneja con fluidez y rapidez en los ambientes de menús, ventanas y opciones, o simplemente al que tiene habilidad en los pulgares para manejar un smartphone, o con el índice para moverse por un tablet. En una acepción lamentablemente muy extendida y banal ha dado lugar a que prendan conceptos paracientíficos como son los de nativo y emigrante digital.
En lo que sigue aceptamos la definición de alfabetización digital (computer literacy) como el conocimiento y la capacidad de utilizar las computadoras y la tecnología relacionada con ellas de manera eficiente, con una serie de habilidades que cubren los niveles de uso elemental de la programación y la resolución de problemas avanzada (Washington, US Congress of Technology Assessment, OTA CIT-235 April 1984, page 234). Con el reparo, ya citado,  de que en ese mismo documento se acepta que la expresión alfabetización digital también se puede utilizar para describir el nivel de acomodo que un individuo tiene con el uso de programas de ordenador y otras aplicaciones que están asociados con las computadoras . La alfabetización digital por último se puede referir a la comprensión de cómo funcionan los ordenadores y a la facilidad de operar con ellos.
En lo que sigue hablaremos más de “pensamiento computacional” (computational thinking) y de  las iniciativas necesarias para que esta nueva alfabetización digital se produzca: El estudio y la investigación de un nuevo curriculum escolar y el análisis de propuestas para la formación para maestros y profesores.


El primer dilema del pensamiento computacional

Como hemos señalado, una vez aceptada la necesidad de que los niños, desde sus primeras etapas de desarrollo, adquieran las habilidades del pensamiento computacional, constatamos que se han producido dos alternativas que constituyen los términos de un dilema:
Por un lado la respuesta más frecuente y  más simple,  a fuer de ser una respuesta  mecánica, ha consistido en favorecer el aprendizaje de las técnicas ya consagradas de programación y de sus lenguajes de forma progresiva, o de lenguajes cada vez más complejos: primero juegos con estructuras constructivas de lenguajes ---bucles, iteraciones, etc---- luego lenguajes sencillos utilizados para resolver problemas divertidos, de juegos, etc y posteriormente ir aumentando la dificultad, sin señalar que en cada uno de estos pasos hemos ido dejando gente por el camino y al final nos quedamos con la élite friki de los programadores de siempre. En esencia se trataba de proponer a los niños tareas de programar desde las primeras etapas. De manera que la progresión estuviese en la dificultad de las tareas y en su carácter motivador, desde las más sencillas y más lúdicas a las más complejas y aburridas. Se vincula aprendizaje con la respuesta a un estímulo, no con las características de aprendizaje y cognitivas del niño, en la tradición más clásica del conductismo.
Este es el tipo de planteamiento que está detrás de la idea simple pero eminentemente de rendimiento y productividad: La de obtener individuos que hagan muchas líneas de programa y capaces de  hacerlas muy rápidamente, sin pensar previamente mucho en el problema a resolver, sin diagramas, sin diseño,… En definitiva es la idea que hay detrás de los concursos de programación, de enseñar a programar a través de juegos, etc.
Como hemos dicho es un planteamiento competitivo, que deja a fuera a muchos niños y que como corolario tiene otro efecto: hacer poco deseable para muchos ser programador, o cuanto menos  les da una imagen de frikis a los programadores (individuo gordo descuidado, atado al ordenador poco amigo del ejercicio físico y del aseo personal). En definitiva unos tipos raros con un perfil poco atractivo. Éste  puede llegar a ser un planteamiento por muchas razones excluyente.
Luego está el otro término del dilema. Lo importante según esta visión no es que los alumnos escriban programas, sino desarrollar en ellos actitudes y capacidades para  enfrentar los problemas en las situaciones previas no solo al código, sino incluso al algoritmo. De manera que la organización de la solución, a partir de la visión del problema y de las herramientas cognitivas y metacognitivas, de que dispone para resolverlo, le fluya. Para ello lo importante es que los maestros sepan cómo los alumnos se representan la realidad, su mundo de objetivos y expectativas, pero también cómo funcionan los mecanismos de aprendizaje en estos casos, y cuáles son las formas de trabajar exitosas de los que tienen éxito en hacer programas potentes.
Así pues lo importante no es el software que escriben, sino lo que piensan cuando lo escriben. Y sobre todo la forma en que lo piensan.
Conocer este mundo de ideas, de procedimientos y de representaciones, cómo operan, constituye el principio básico del “pensamiento computacional”. Y cualquier otro conocimiento, como memorizar a la perfección las reglas que constituyen la sintaxis y las primitivas (la gramática) de cualquier lenguaje de programación, no le sirve de nada a los alumnos si no pueden pensar en buenas maneras de aplicarlas.
Éste es pues el segundo término del dilema en el que hay que decidir.
Desgraciadamente, como veremos en la segunda parte de este capítulo, la modalidad por la que se ha optado de forma más frecuente ha sido la de enseñar a programar directamente. Esa ha sido también la que se ha empezando a utilizar en nuestro país. Así,  por ejemplo, se ha hecho en la Comunidad de Madrid[1] (Valverde et al, 2015). Simplemente se describen los contenidos y destrezas de programación a conseguir. La novedad consiste en introducir un bloque de contenidos, de forma convencional (no diferente de cómo se hace con el resto) dentro de las asignaturas de libre configuración autonómica. Así en el punto c (1º y 2º) del artículo 8, que remiten al anexo III de la orden, dice:
“1º (…) se establecen los contenidos, los criterios de evaluación y los estándares de aprendizaje evaluables de las materias Tecnología, Programación y Robótica, Ampliación de Matemáticas: Resolución de Problemas y Taller de Música.
2º. El Departamento de Coordinación Didáctica de Tecnología se responsabilizará de la impartición de la materia Tecnología, Programación y Robótica con carácter prioritario. Secundariamente, podrán impartirla profesores de la especialidad de Informática, siempre que previamente estén cubiertos en su totalidad los horarios de la Familia Profesional de Informática y Comunicaciones.”
El patrón es el mismo que cualquier otra disciplina, pero en este caso se hace además de forma subsidiaria.
Lo que subyace en la redacción, en éste como en otros casos es un abordamiento convencional: Conducir a los alumnos de secundaria por el camino más áspero, el de los contenidos y estándares de aprendizaje, pero en este caso, los de la programación per se. En este contexto no se proporcionan, ni se mencionan, otro tipo de ayudas o de claves para conseguir los efectos de que hablamos en el apartado anterior. Está muy lejos, cuando no en otra esfera, de lo que se plantea como Pensamiento Computacional.
Algunos de los resultados de esta forma de operar puede ser la exclusión de los que no tienen el don, o la habilidad innata, para programar directamente. De aquellos alumnos que ante sólo la presencia del problema a resolver se les activan mecanismos para con los elementos de programación (de los que proporciona un lenguaje específico: Sintaxis, órdenes, procedimientos, filosofía propia del lenguaje) elaborar el código.  Esta dinámica conduce a la creación de estereotipos y perfiles de alumnos con facilidad para la programación, y del tópico de que la programación es solo cosa de los programadores.
Hay otro efecto derivado. Si se aprende a programar como algo asociado a un lenguaje, es posible que no se produzca la transferencia,  y que en futuras ocasiones o en distintos contextos no se pueda repetir el proceso. Esto hace que la competencia profesional sea menos, y que la inserción no se produzca con toda eficacia que podría ser si se hiciera vinculado a operaciones cognitivas superiores. Las asociaciones profesionales se quejan de que las empresas contraten a informáticos de forma efímera. Sin reparar que es posible que suceda porque han aprendido de forma efímera, como algo vinculado a lenguajes y a programas pasajeros. De manera que en un futuro próximo, cuando cambie el programa o la versión actual, no tendrán flexibilidad mental para adaptarse a nuevos entornos, no solo de programación, sino de problemas. Esto no sucede, y las empresas lo saben, si contratan a titulados más familiarizados con elementos de pensamiento heurísticos, o de otro tipo de entre los glosados en el repertorio del trabajo de referencia (Zapata-Ros, 2015). Nos referimos a la facilidad con que estas empresas recurren a matemáticos o físicos, que sí tienen esa competencia de abstraer los procedimientos para distinguir aspectos invariantes de la resolución de problemas en entornos cambiantes.
Esto no ocurre así cuando se empieza por desarrollar habilidades generales previas que se puedan activar en situaciones de elaboración de códigos o de resolución de otros problemas. Podemos afirmar que sí existen referencias (Raja, 2014) de investigaciones que ponen de manifiesto que cuando se empieza por enseñar el pensamiento computacional en vez de por la elaboración de códigos, desvinculando la iniciación en el aprendizaje a ser diestros con el ordenador, tal como se entiende habitualmente, se evita el principio de discriminación que hace que algún tipo de niños y de niñas se inhiban.
Una última derivación del tema es que esta forma de organizar el aprendizaje supone  un principio de democratización en el acceso a este conocimiento, que de esta form no queda restringido a las élites de programadores. De manera que incluso, los que en un futuro pueden ser bibliotecarios, médicos o artistas, pueden ser también buenos programadores. Y por ende podría ampliar la base de conocimiento que se vuelca al mundo de la computación, lo que constituye el motor y el combustible de la Sociedad del Conocimiento.


Referencias.-

Blikstein,  (2013). Seymour Papert’s Legacy: Thinking About Learning, and Learning About Thinking. https://tltl.stanford.edu/content/seymour-papert-s-legacy-thinking-about-learning-and-learning-about-thinking
Papert, S. (1980). Mindstorms: Children, computers, and powerful ideas. Basic Books, Inc. http://www.arvindguptatoys.com/arvindgupta/mindstorms.pdf
Piaget, J. (1947). La psychologie de l'intelligence [The psychology of intelligence]. http://dx.doi.org/10.4324/9780203278895
Piaget, J. (1972). Psicología de la inteligencia. Editorial Psique. Buenos Aires.
Piaget, J. (1977). The role of action in the development of thinking. In Knowledge and development (pp. 17-42). Springer US.
Zapata-Ros, M. (2012). La Sociedad Postindustrial del Conocimiento. Un enfoque multidisciplinar desde la perspectiva de los nuevos métodos para organizar el aprendizaje. Amazon. Consultado en http://www.amazon.es/Sociedad-Postindustrial-del-Conocimiento-multidisciplinar/dp/1492180580.
Zapata-Ros, M. (2015). Pensamiento computacional: Una nueva alfabetización digital. RED. Revista de Educación a Distancia. Número 46.  15 de Septiembre de 2015. Consultado el (dd/mm/aa) en http://www.um.es/ead/red/46




[1] DECRETO 48/2015, de 14 de mayo, del Consejo de Gobierno, por el que se establece para la Comunidad de Madrid el currículo de la Educación Secundaria Obligatoria. Recuperado a partir de http://www.bocm.es/boletin/CM_Orden_BOCM/2015/05/20/BOCM-20150520-1.PDF




jueves, 28 de diciembre de 2017

Libro "Pensamiento computacional"

Me es grato adelantar como primicia la próxima publicación de un libro sobre Pensamiento Computacional, por cuenta de la Editorial y Universidad de Santa María de Arequipa, en Perú.

Igualmente me cabe el privilegio de coeditarlo junto con Klinge Orlando Villalba Condori.
Pero sobre todo ha sido un placer coordinar la edición de tan relevantes colegas de paises tan diversos y representando visiones desde tantos ángulos como las que está previsto se manifiesten en los distintos capítulos.
El contenido que, de forma provisional, podemos adelantar es el que a continuación ofrecemos

Libro “Pensamiento computacional”

Editores / Coordinadores
MIGUEL ZAPATA ROS, Profesor Honorífico de la Universidad de Murcia -Centro de Formación y Desarrollo Profesional, investigador del Instituto Interuniversitario de economía Internacional y editor de RED.
KLINGE ORLANDO VILLALBA CONDORI, Profesor de la Universidad Universidad Nacional de San Agustín(UNSA) y de la Universidad Católica Santa María(UCSM), de Arequipa  Perú. Miembro de la Sociedad de Investigación Educativa Peruana (SIEP), del grupo de Investigación en Educación y  Tecnología EDUTEC-PUCP (Pontificia Universidad Católica del Perú), del Grupo de Investigación en InterAcción y eLearning (GRIAL de la Universidad de Salamanca-España) y de la catedra CONCYTEC en TIC de la Universidad Nacional de San Agustín.

Entidad editora
Universidad Católica de Santa María de Arequipa, Perú


Autor/ Filiación
Título
Walter Bender, Massachusetts Institute of Technology

Educational Affordances for Computational Thinking

Pascual Pérez-Paredes, Universidad de Cambridge
Miguel Zapata Ros Universidad de Murcia y Universidad de Alcalá.

Un lenguaje de patrones y un corpus lingüístico interdisciplinar para el curriculum de Pensamiento Computacional. O unas bases para él.

Jesús Moreno León (Programamos & Universidad Rey Juan Carlos), Marcos Román González (Universidad Nacional de Educación a Distancia) y Gregorio Robles (Universidad Rey Juan Carlos)

Herramientas de evaluación y sistemas de recomendación para el desarrollo del pensamiento computacional.
Romero, Margarida.
Laboratoire d’Innovation et Numérique pour l’Education (#fabLINE). Université de Nice Sophia Antipolis, France.

Pensamiento computacional y resolución cocreativa de problemas


Jesús Valverde Berrocoso
Jesús Acevedo Borrega
Mario Hidalgo Pulgarín
Universidad de Extremadura

Contextos y experiencias de aprendizaje no-formal e informal para el desarrollo del pensamiento computacional.

Fernanda Ledesma. ANPRI - Associação Nacional de Professores de Informática

They think, program and learn school subjects, project in Portugal
Francisco García Peñalvo. Universidad de Salamanca. GRIAL
Introduciendo la programación y el pensamiento computacional en la escuela.

Carina González, Universidad de la Laguna. Red de Campus Virtuales

La enseñanza-aprendizaje del Pensamiento Computacional en edades tempranas: una revisión del estado del arte
Adem Karahoca, Tamer Uçar, DİLEK KARAHOCA
Bahcesehir University. Turquía.

Assessment of Computational Thinking in programming language education
Ruth Díaz Bello. Gerente de Planificación, Desarrollo y Evaluación Curricular. Vicerrectorado Académico. Universidad Central de Venezuela.

El pensamiento computacional y el currículo 
Miguel Zapata Ros, Universidad de Murcia, Universidad de Alcalá, Instituto Interuniversitario de Economía Internacional.

Pensamiento computacional, ¿la tercera competencia clave?
Rafael Morales Gamboa
María Elena Chan Núñez
José Luis Mariscal Orozco
Universidad de Guadalajara (México)

Pensamiento computacional y saber ser con otros
Alejandro Pisanty , UNAM (México).
¿Debe introducirse el aprendizaje de la programación de computadoras en el bachillerato?

Habib Fardoun, Universidad Rey Abdulaziz 
Cesar A. Collazos, Universidad del Cauca.
Julio Ariel Hurtado. Universidad del Cauca.
René Fabián Zúñiga Muñoz, Universidad del Cauca.

DESARROLLO DEL PENSAMIENTO COMPUTACIONAL APLICANDO MECANISMOS DE ABSTRACCIÓN EN EL CONTEXTO DE CHILDPROGRAMMING