• Home
  • Química
  • Astronomía
  • Energía
  • Naturaleza
  • Biología
  • Física
  • Electrónica
  •  science >> Ciencia >  >> Otro
    ¿No eres una persona de matemáticas? Puede que aprendas a codificar mejor de lo que crees

    Las habilidades lingüísticas son un predictor más fuerte de la capacidad de programación que el conocimiento matemático. según un nuevo estudio de la Universidad de Washington. Aquí, El coautor del estudio, Malayka Mottarella, demuestra la codificación en Python mientras usa unos auriculares especializados que miden la actividad eléctrica en el cerebro. Crédito:Justin Abernethy / U. de Washington

    ¿Quieres aprender a codificar? Deja el libro de matemáticas. En su lugar, practique esas habilidades de comunicación.

    Una nueva investigación de la Universidad de Washington encuentra que una aptitud natural para aprender idiomas es un predictor más fuerte de aprender a programar que el conocimiento básico de matemáticas. o aritmética. Eso es porque escribir código también implica aprender un segundo idioma, la capacidad de aprender el vocabulario y la gramática de ese idioma, y cómo trabajan juntos para comunicar ideas e intenciones. Otras funciones cognitivas vinculadas a ambas áreas, como la resolución de problemas y el uso de la memoria de trabajo, también juegan un papel clave.

    "Muchas barreras para la programación, desde cursos de requisitos previos hasta estereotipos sobre el aspecto de un buen programador, se centran en la idea de que la programación se basa en gran medida en las habilidades matemáticas, y esa idea no nace en nuestros datos, "dijo el autor principal Chantel Prat, profesor asociado de psicología en la UW y en el Institute for Learning &Brain Sciences. "Aprender a programar es difícil, pero es cada vez más importante para obtener puestos calificados en la fuerza laboral. La información sobre lo que se necesita para ser bueno en la programación falta de manera crítica en un campo que ha sido notoriamente lento en cerrar la brecha de género ".

    Publicado online el 2 de marzo en Informes científicos , una revista de acceso abierto del Nature Publishing Group, la investigación examinó las habilidades neurocognitivas de más de tres docenas de adultos mientras aprendían Python, un lenguaje de programación común. Tras una batería de pruebas para evaluar su función ejecutiva, habilidades de lenguaje y matemáticas, los participantes completaron una serie de lecciones y cuestionarios en línea en Python. Aquellos que aprendieron Python más rápido, y con mayor precisión, tendía a tener una combinación de fuertes habilidades lingüísticas y de resolución de problemas.

    En el mundo actual centrado en STEM, aprender a codificar abre una variedad de posibilidades para trabajos y educación extendida. La codificación está asociada con las matemáticas y la ingeniería; Los cursos de programación de nivel universitario tienden a requerir matemáticas avanzadas para inscribirse y tienden a impartirse en departamentos de informática e ingeniería. Otras investigaciones, a saber, de la profesora de psicología de la Universidad de Washington, Sapna Cheryan, ha demostrado que tales requisitos y percepciones de la codificación refuerzan los estereotipos sobre la programación como un campo masculino, potencialmente desalentando a las mujeres de perseguirlo.

    Pero la codificación también tiene una base en el lenguaje humano:la programación implica la creación de significado al enlazar símbolos en formas basadas en reglas.

    Aunque algunos estudios han abordado los vínculos cognitivos entre el aprendizaje de idiomas y la programación informática, algunos de los datos tienen décadas de antigüedad, utilizando lenguajes como Pascal que ahora están desactualizados, y ninguno de ellos utilizó medidas de aptitud del lenguaje natural para predecir las diferencias individuales en el aprendizaje de la programación.

    Así que idiota que se especializa en los predictores neuronales y cognitivos del aprendizaje de idiomas humanos, se propuso explorar las diferencias individuales en cómo las personas aprenden Python. Python fue una elección natural, Prat explicó, porque se parece a las estructuras del inglés, como la sangría de los párrafos, y utiliza muchas palabras reales en lugar de símbolos para las funciones.

    Evaluar las características neuronales y cognitivas de la "aptitud para programar, "Prat estudió a un grupo de hablantes nativos de inglés de entre 18 y 35 años que nunca habían aprendido a codificar.

    Este gráfico muestra cómo las habilidades de los participantes del estudio, como aritmética y aptitud lingüística, contribuir al aprendizaje de Python. Según el gráfico, la cognición y la aptitud lingüística son mayores predictores del aprendizaje que la aritmética. Crédito:Prat et al./Scientific Reports

    Antes de aprender a codificar, los participantes tomaron dos tipos de evaluaciones completamente diferentes. Primero, los participantes se sometieron a una electroencefalografía de cinco minutos, que registró la actividad eléctrica de sus cerebros mientras se relajaban con los ojos cerrados. En investigaciones anteriores, Prat demostró que los patrones de actividad neuronal mientras el cerebro está en reposo pueden predecir hasta un 60% de la variabilidad en la velocidad con la que alguien puede aprender un segundo idioma (en ese caso, Francés).

    "Por último, Estas métricas del cerebro en estado de reposo podrían usarse como medidas sin cultura de cómo alguien aprende, "Dijo Prat.

    Then the participants took eight different tests:one that specifically covered numeracy; one that measured language aptitude; and others that assessed attention, problem-solving and memory.

    To learn Python, the participants were assigned 10 45-minute online instruction sessions using the Codeacademy educational tool. Each session focused on a coding concept, such as lists or if/then conditions, and concluded with a quiz that a user needed to pass in order to progress to the next session. Por ayuda, users could turn to a "hint" button, an informational blog from past users and a "solution" button, en ese orden.

    From a shared mirror screen, a researcher followed along with each participant and was able to calculate their "learning rate, " or speed with which they mastered each lesson, as well as their quiz accuracy and the number of times they asked for help.

    After completing the sessions, participants took a multiple-choice test on the purpose of functions (the vocabulary of Python) and the structure of coding (the grammar of Python). For their final task, they programmed a game—Rock, Papel, Scissors—considered an introductory project for a new Python coder. This helped assess their ability to write code using the information they had learned.

    Por último, researchers found that scores from the language aptitude test were the strongest predictors of participants' learning rate in Python. Scores from tests in numeracy and fluid reasoning were also associated with Python learning rate, but each of these factors explained less variance than language aptitude did.

    Presented another way, across learning outcomes, participants' language aptitude, fluid reasoning and working memory, and resting-state brain activity were all greater predictors of Python learning than was numeracy, which explained an average of 2% of the differences between people. En tono rimbombante, Prat also found that the same characteristics of resting-state brain data that previously explained how quickly someone would learn to speak French, also explained how quickly they would learn to code in Python.

    "This is the first study to link both the neural and cognitive predictors of natural language aptitude to individual differences in learning programming languages. We were able to explain over 70% of the variability in how quickly different people learn to program in Python, and only a small fraction of that amount was related to numeracy, " Prat said. Further research could examine the connections between language aptitude and programming instruction in a classroom setting, or with more complex languages such as Java, or with more complicated tasks to demonstrate coding proficiency, Prat said.


    © Ciencia https://es.scienceaq.com