7 de marzo de 2022

P

Pensamiento computacional, una competencia más allá de la programación

por Pablo Rodríguez Canfranc

El pensamiento computacional es una disciplina básica para abordar la resolución de problemas en un mundo cada vez más complejo y digitalizado.

Una sociedad digital demanda competencias digitales en la población. El uso intensivo de tecnología en todos los ámbitos de la vida cotidiana requiere de la ciudadanía la habilidad para establecer un marco de relaciones con las máquinas que permita sacar un rendimiento óptimo de ellas. Es por ello por lo que una de las mayores preocupaciones institucionales actuales en relación con la transformación en la que nos vemos inmersos está relacionada con la capacitación, con el desarrollo de habilidades digitales para poder aprovechar los beneficios de un mundo conectado a las redes.

Este es un aspecto relevante en cualquier ámbito de nuestras vidas, desde realizar una gestión financiera al cumplimiento de las obligaciones fiscales, o solicitar una cita médica, pues cada vez se van convirtiendo más en actividades virtuales que no requieren una presencia física, pero que implican unos mínimos conocimientos de navegación y operativa a través de internet, que, por desgracia, una parte de la población española todavía no posee. No obstante, es en el terreno laboral donde la capacitación digital se convierte en un factor crítico, pues en un futuro a medio plazo el trabajador humano tendrá que convivir con sistemas inteligentes en prácticamente cualquier tipo de actividad.

Es en el terreno laboral donde la capacitación digital se convierte en un factor crítico, pues en un futuro a medio plazo el trabajador humano tendrá que convivir con sistemas inteligentes en prácticamente cualquier tipo de actividad

En los últimos tiempos se ha hecho mucho hincapié en la necesidad de que la programación informática se convierta en una disciplina curricular desde los niveles educativos más básicos, con el fin de preparar a los alumnos para poder vivir, y, sobre todo, para poder trabajar, en un mundo en el que la tecnología está omnipresente. No cabe duda de que aprender lenguajes de programación nos puede aportar un conocimiento sobre la estructura lógica de funcionamiento de un sistema informático, sin embargo, el enseñar a programar sin más puede resultar limitado e incluso insuficiente. Por una parte, la vertiginosa evolución de la innovación digital tenderá a convertir en obsoletos con relativa rapidez los lenguajes de programación aprendidos durante la infancia, obligando a las personas a asimilar otros nuevos a lo largo de la vida. Por otra parte, las interfaces de las máquinas que nos permiten interactuar con ellas son cada vez más cercanas a la forma de comunicación humana, y el manejo de los programas y de los dispositivos se vuelve progresivamente más intuitivo, lo que implica que para tareas no muy especializadas la programación puede acabar por no resultar necesaria. Podría ocurrir algo similar a lo que sucedió en los albores de la informática de consumo. Durante la década de los ochenta, se hizo mucho énfasis en la necesidad de aprender a programar, porque los ordenadores personales iban a invadir todos los ámbitos laborales, como efectivamente sucedió en la década siguiente. Pero, a la vez que proliferaban los PC, surgieron los entornos de trabajo gráficos, primero en los equipos Apple y poco después a través de la difusión del entorno Windows de Microsoft, de forma que para manejar aplicaciones informáticas estándar ya no hacía falta picar complicadas líneas de comandos, sino únicamente pinchar elementos gráficos virtuales en la pantalla. Hoy en día los interfaces han dado un salto adelante más permitiéndonos manejar los sistemas con el uso del habla.

Es por ello, que, aparte de la enseñanza más específica sobre programación, cobra especial sentido una aproximación mucho más amplia a la relación entre el ser humano y la máquina, algo que se denomina pensamiento computacional.

¿Qué es y qué no es el pensamiento computacional?

El término “pensamiento computacional” fue introducido por primera vez en 2006 por Jeannette M. Wing en un breve artículo titulado Computational Thinking. Ella lo concibe como una disciplina que implica “resolver problemas, diseñar sistemas y comprender el comportamiento humano, utilizando los conceptos que son fundamentales para la informática”. En suma, se trata de una filosofía para plantear y resolver problemas utilizando la lógica por la que se rigen las máquinas. La propia Wing amplió su definición en 2011 en este sentido:

“El pensamiento computacional son los procesos mentales implicados en la formulación de problemas y de sus soluciones, de forma que las soluciones son representadas de tal manera que puedan ser llevadas a cabo con efectividad por un agente procesador de información.”

De esta definición emergen dos conceptos: que se trata de una forma de razonamiento que no depende exclusivamente de la tecnología, y que es una metodología para la resolución de problemas por humanos, por máquinas, o a través de la colaboración de ambos. Básicamente, consiste en plantear un problema siguiendo el proceso operativo de un sistema inteligente.

En 2009, las organizaciones Computer Science Teachers Association e International Society for Technology in Education elaboraron una lista de las principales características del pensamiento computacional:

  • Es una forma de formular problemas que nos permite utilizar ordenadores u otras herramientas para resolverlos.
  • Supone organizar y analizar los datos de forma lógica.
  • Representa los datos a través de abstracciones, como pueden ser los modelos y las simulaciones.
  • Automatiza la obtención de soluciones a través de pasos ordenados mediante el pensamiento algorítmico.
  • Identifica, analiza e implementa las posibles soluciones con el objetivo de obtener la combinación de etapas y recursos más eficiente y efectiva.
  • Permite generalizar y aplicar este proceso de resolución de problemas a una gran variedad de campos.

Una disciplina que implica resolver problemas, diseñar sistemas y comprender el comportamiento humano, utilizando los conceptos que son fundamentales para la informática

Por otro lado, Jeannette M. Wing también llegó a subrayar en sus escritos qué es lo que no considera que es el pensamiento computacional. En primer lugar, el pensamiento computacional se basa en conceptualizar, no en programar: describe una forma de pensar con diferentes niveles de abstracción, convirtiéndose en un proceso previo a la programación. Se trata además de una habilidad fundamental del ser humano, que no es rutina mecánica y repetitiva. Aunque menciona a los ordenadores, es una forma de razonamiento específicamente humano de resolver problemas, no se trata de una forma de pensar como computadoras, sino de hacerlo con ellas. El pensamiento computacional complementa y se combina con el pensamiento matemático y con el asociado a la ingeniería. Finalmente, se trata de una disciplina que produce ideas y conceptos que usamos para resolver problemas, pero no está creado para producir, artefactos o software.

Los cuatro pilares

Todas las fuentes de conocimiento sobre pensamiento computacional coinciden en que este se asienta sobre cuatro pilares o técnicas básicas: descomposición, identificación de patrones, abstracción y diseño de algoritmos.

La descomposición consiste en dividir los problemas difíciles de resolver en partes más pequeñas y manejables, para que puedan ser comprendidas, evaluadas y resueltas de forma separada. Esto facilita el acometer problemas complejos.

El reconocimiento de patrones hace alusión a la capacidad para generalizar al identificar en un problema similitudes y conexiones con otros, de forma que permite resolver nuevos problemas aplicando la experiencia y las enseñanzas derivadas de haber resuelto otros anteriormente.

Por otra parte, la abstracción consiste en centrar el foco en lo importante del problema, dejando de lado los detalles sin importancia. El reto consiste en convertir un problema en más fácil de resolver quitando lo accesorio, pero manteniendo lo esencial.

Finalmente, el uso de algoritmos implica establecer los pasos apropiados a seguir para resolver un problema o completar una tarea correctamente, y organizarlos en una serie de instrucciones.

El pensamiento computacional no es programar, ni siquiera pensar como lo hace un ordenador; supone una manera de resolver problemas. Aunque el pensamiento computacional puede trabajarse con la programación y la robótica, también puede utilizarse sin ellas, en modo “desenchufado”. Básicamente, es una disciplina que enseña a pensar de forma crítica y lógica, basándose en los avances de la ciencia computacional. Puede acabar aplicándose en programación informática, pero no necesariamente. Programar consiste en desarrollar algoritmos para herramientas digitales con el fin de que lleven a cabo una serie de acciones requeridas, y estos pueden tener su origen en el pensamiento computacional.

El pensamiento computacional no es programar, ni siquiera pensar como lo hace un ordenador

El esfuerzo de muchos expertos académicos y pedagogos se centra en que la introducción de pensamiento computacional en la formación reglada no se limite a la informática y las áreas más técnicas, sino que sea una formación transversal, aplicable a distintos campos del conocimiento.

Enseñando a pensar de forma algorítmica

Hay quien prefiere hablar de pensamiento algorítmico, porque el término computacional alude directamente a los ordenadores, mientras que esta disciplina es más amplia que el mero aprendizaje de informática, aunque con frecuencia su resultado acabe en forma de programación.

La Comisión Europea defiende la inclusión del pensamiento algorítmico o computacional en los currículos educativos de los Estados miembros en base a dos evidencias:

  1. El desarrollo de estas habilidades en niños y adolescentes les permite razonar de forma distinta, expresarse a través de diferentes medios, resolver problemas del mundo real, y analizar aspectos del día a día desde una perspectiva nueva.
  2. El pensamiento computacional prepara al alumnado para desempeñar empleos digitales, cuya demanda se va a dispara a corto plazo en la Unión Europea.

Diversos expertos del campo de la educación añaden otros factores que recomiendan la incorporación del pensamiento computacional a la enseñanza obligatoria. En primer lugar, implica el desarrollo de la nueva alfabetización que resulta necesaria para desenvolverse en el mundo en el que vivimos, una alfabetización que nos permite no ser sólo consumidores digitales, sino creadores y participantes activos con la tecnología. Estimula la habilidad para pensar de manera sistemática, algo especialmente útil en el campo de las ciencias experimentales, y puede ser un medio con el que tratar de despertar conciencias científicas y promover el estudio de las disciplinas STEM. En este sentido, combinado con la enseñanza de informática (por ejemplo, el diseño de videojuegos) y de la robótica puede estimular la curiosidad y la motivación del alumnado. Finalmente, el pensamiento algorítmico podría llevar al estudiante a redefinir su relación con el resto de las asignaturas, y a replantearse el proceso de aprendizaje.

El pensamiento computacional puede ser considerada una competencia transversal del currículo en la medida en que apoya el desarrollo de la habilidad para trabajar con la incertidumbre en situaciones complejas, y la necesidad de precisión en la resolución de problemas.

En este sentido, conviene subrayar que el recientemente aprobado Real Decreto 95/2022, de 1 de febrero, por el que se establece la ordenación y las enseñanzas mínimas de la Educación Infantil introduce el pensamiento computacional en las enseñanzas mínimas de educación infantil de España. En concreto, establece que el alumnado “experimentará y desplegará progresivamente destrezas sencillas propias del método científico y del pensamiento computacional y de diseño”. De esta forma, define como una competencia específica “el desarrollar, de manera progresiva, los procedimientos del método científico y las destrezas del pensamiento computacional, a través de procesos de observación y manipulación de objetos, para iniciarse en la interpretación del entorno y responder de forma creativa a las situaciones y retos que se plantean”.

Foto de Antonio Batinić en Pexels

Bibliografía

European Commission (2016) “Developing Computational Thinking in Compulsory Education”.

Repenning, A. (2017) “Computational Thinking ≠ Programming”. Swiss Informatics Society. Disponible en: https://magazine.swissinformatics.org/en/computational-thinking/

Sánchez-Vera, M. (2019) “El pensamiento computacional en contextos educativos: una aproximación desde la Tecnología Educativa”. Realia. Disponible en: https://ojs.uv.es/index.php/realia/article/view/15635/14639

Valenzuela, J. (2020) “Cómo desarrollar pensadores computacionales” en ISTE. Disponible en: https://www.iste.org/es/explore/how-develop-computational-thinkers

Wing, J. M. (2006) “Computational Thinking”. COMMUNICATIONS OF THE ACM March 2006/Vol. 49, No. 3. Disponible en: http://www.cs.cmu.edu/afs/cs/usr/wing/www/publications/Wing06.pdf

Wing, J. M. (2011). “Research Notebook: Computational Thinking-What and Why?” The Link.


Pablo Rodríguez Canfranc

Economista especializado en el estudio del impacto de la tecnología en la sociedad. Actualmente trabaja en el área de estudios y publicaciones de Fundación Telefónica.


Comentarios