De alguna manera, aprender a programar una computadora es similar a aprender un nuevo idioma. Requiere aprender nuevos símbolos y términos, que deben organizarse correctamente para instruir a la computadora sobre lo que debe hacer. El código de la computadora también debe ser lo suficientemente claro para que otros programadores puedan leerlo y entenderlo.
La lectura de códigos informáticos no depende de las regiones del cerebro que participan en el procesamiento del lenguaje
A pesar de esas similitudes, los neurocientíficos del MIT han descubierto que leer el código de una computadora no activa las regiones del cerebro que están involucradas en el procesamiento del lenguaje. En su lugar, activa una red distribuida llamada red de demanda múltiple, que también se usa para tareas cognitivas complejas como resolver problemas matemáticos o crucigramas.
| También podría interesarte: El GPS del cerebro: cómo sabe dónde estamos nosotros y los otros
Sin embargo, aunque la lectura de código de computadora activa la red de demanda múltiple, parece depender más de diferentes partes de la red que los problemas matemáticos o lógicos, lo que sugiere que la codificación tampoco replica con precisión las demandas cognitivas de las matemáticas.
“Comprender el código informático parece ser algo propio. No es lo mismo que el lenguaje, y no es lo mismo que las matemáticas y la lógica ”, dice Anna Ivanova, estudiante graduada del MIT y autora principal del estudio.” Evelina Fedorenko, profesora asociada de neurociencia de desarrollo profesional Frederick A. y Carole J. Middleton y miembro del Instituto McGovern para la investigación del cerebro, es la autora principal del artículo, que aparecía ayer en eLife. Investigadores del Laboratorio de Ciencias de la Computación e Inteligencia Artificial del MIT y de la Universidad de Tufts también participaron en el estudio.
| También podría interesarte: La belleza está en el cerebro: crean IA capaz de crear imágenes atractivas a partir de datos cerebrales
Un enfoque principal de la investigación de Fedorenko es la relación entre el lenguaje y otras funciones cognitivas. En particular, ha estado estudiando la cuestión de si otras funciones dependen de la red del lenguaje del cerebro, que incluye el área de Broca y otras regiones del hemisferio izquierdo del cerebro. En un trabajo anterior, su laboratorio ha demostrado que la música y las matemáticas no parecen activar esta red lingüística.
“Aquí, estábamos interesados en explorar la relación entre el lenguaje y la programación de computadoras, en parte porque la programación de computadoras es un invento tan nuevo que sabemos que no podría haber ningún mecanismo cableado que nos convierta en buenos programadores“, dice Ivanova.
| También podría interesarte: Descubren un área del cerebro crucial para reconocer eventos visuales
Hay dos escuelas de pensamiento con respecto a cómo el cerebro aprende a codificar, dice. Uno sostiene que para ser bueno en programación, debes ser bueno en matemáticas. El otro sugiere que debido a los paralelismos entre codificación y lenguaje, las habilidades lingüísticas podrían ser más relevantes. Para arrojar luz sobre este tema, los investigadores se propusieron estudiar si los patrones de actividad cerebral al leer el código de la computadora se superpondrían con la actividad cerebral relacionada con el lenguaje.
Los dos lenguajes de programación en los que se centraron los investigadores en este estudio son conocidos por su legibilidad: Python y ScratchJr, un lenguaje de programación visual diseñado para niños de 5 años en adelante. Los sujetos del estudio eran todos adultos jóvenes que dominaban el idioma en el que estaban siendo evaluados. Mientras los programadores se encontraban en un escáner de resonancia magnética funcional (fMRI), los investigadores les mostraron fragmentos de código y les pidieron que predecir qué acción produciría el código.
Los investigadores vieron poca o ninguna respuesta al código en las regiones del lenguaje del cerebro. En cambio, encontraron que la tarea de codificación activaba principalmente la llamada red de demanda múltiple. Esta red, cuya actividad se extiende a lo largo de los lóbulos frontal y parietal del cerebro, generalmente se recluta para tareas que requieren tener en mente muchos datos a la vez, y es responsable de nuestra capacidad para realizar una amplia variedad de tareas mentales.
| También podría interesarte: ¿Cómo funciona el cerebro de un programador? Descubren sus áreas cerebrales más afinadas
“Hace prácticamente cualquier cosa que sea un desafío cognitivo, que te haga pensar mucho“, dice Ivanova.
Estudios anteriores han demostrado que los problemas matemáticos y lógicos parecen depender principalmente de las múltiples regiones de demanda en el hemisferio izquierdo, mientras que las tareas que involucran la navegación espacial activan el hemisferio derecho más que el izquierdo. El equipo del MIT descubrió que leer el código de la computadora parece activar tanto el lado izquierdo como el derecho de la red de demanda múltiple, y ScratchJr activó el lado derecho un poco más que el izquierdo. Este hallazgo va en contra de la hipótesis de que las matemáticas y la codificación se basan en los mismos mecanismos cerebrales.
Efectos de la experiencia
Los investigadores dicen que si bien no identificaron ninguna región que pareciera estar dedicada exclusivamente a la programación, tal actividad cerebral especializada podría desarrollarse en personas que tienen mucha más experiencia en codificación.
“Es posible que si se toman personas que son programadores profesionales, que han pasado 30 o 40 años codificando en un idioma en particular, puede comenzar a ver alguna especialización o cristalización de partes del sistema de demanda múltiple“, dice Fedorenko. “En las personas que están familiarizadas con la codificación y pueden realizar estas tareas de manera eficiente, pero que han tenido una experiencia relativamente limitada, no parece que veas ninguna especialización todavía“.
| También podría interesarte: Cómo se ve la soledad en el cerebro, según un nuevo estudio
En un artículo complementario que aparece en el mismo número de eLife, un equipo de investigadores de la Universidad Johns Hopkins también informó que la resolución de problemas de código activa la red de demanda múltiple en lugar de las regiones del idioma.
Los hallazgos sugieren que no existe una respuesta definitiva sobre si la codificación debe enseñarse como una habilidad basada en matemáticas o una habilidad basada en el lenguaje. En parte, eso se debe a que aprender a programar puede basarse tanto en el lenguaje como en múltiples sistemas de demanda, incluso si, una vez aprendido, la programación no depende de las regiones del lenguaje, dicen los investigadores.
“Ha habido reclamos de ambos campos: tiene que estar junto con las matemáticas, tiene que estar junto con el lenguaje”, dice Ivanova. “Pero parece que los educadores en ciencias de la computación tendrán que desarrollar sus propios enfoques para enseñar código de manera más efectiva“.
La investigación fue financiada por la National Science Foundation, el Departamento de Ciencias Cerebrales y Cognitivas del MIT y el Instituto McGovern de Investigación del Cerebro.
| También podría interesarte: El cerebro: una supercomputadora que ejecuta un código binario orgánico, según nueva teoría
Fuente original y referencias
Massachusetts Institute of Technology (2020). To the brain, reading computer code is not the same as reading language: Neuroscientists find that interpreting code activates a general-purpose brain network, but not language-processing centers. Recuperado el 16 de diciembre de 2020 de https://news.mit.edu/2020/brain-reading-computer-code-1215
Anna A Ivanova, Shashank Srikant, Yotaro Sueoka, Hope H Kean, Riva Dhamala, Una-May O’Reilly, Marina U Bers, Evelina Fedorenko. Comprehension of computer code relies primarily on domain-general executive brain regions. eLife, 2020; 9 DOI: 10.7554/eLife.58906
Crédito imagen: Jose-Luis Olivares, MIT