1. Understanding Notional Machines through Traditional Teaching with Conceptual Contraposition and Program Memory Tracing
- Author
-
Jeisson Hidalgo-Cespedes, Vladimir Lara-Villagran, and Gabriela Marín
- Subjects
clase magistral ,Computer science ,constructivismo ,notional machine ,Cognitive dissonance ,02 engineering and technology ,Tracing ,Constructivism ,programming learning ,lcsh:QA75.5-76.95 ,contraposición conceptual ,rastreo de memoria de programa ,aprendizaje de la programación ,constructivism ,020204 information systems ,Constructivism (philosophy of education) ,0202 electrical engineering, electronic engineering, information engineering ,ComputingMilieux_COMPUTERSANDEDUCATION ,Notional amount ,Lecture ,Conceptual contraposition ,Programming learning ,Cognitive science ,máquina nocional ,lecture ,business.industry ,cognitive dissonance ,05 social sciences ,050301 education ,General Medicine ,Notional machine ,disonancia cognitiva ,conceptual contraposition ,Artificial intelligence ,lcsh:Electronic computers. Computer science ,Program memory tracing ,business ,0503 education ,Contraposition (traditional logic) - Abstract
A correct understanding about how computers run code is mandatory in order to effectively learn to program. Lectures have historically been used in programming courses to teach how computers execute code, and students are assessed through traditional evaluation methods, such as exams. Constructivism learning theory objects to students’ passiveness during lessons, and traditional quantitative methods for evaluating a complex cognitive process such as understanding. Constructivism proposes complimentary techniques, such as conceptual contraposition and colloquies. We enriched lectures of a “Programming II” (CS2) course combining conceptual contraposition with program memory tracing, then we evaluated students’ understanding of programming concepts through colloquies. Results revealed that these techniques applied to the lecture are insufficient to help students develop satisfactory mental models of the C++ notional machine, and colloquies behaved as the most comprehensive traditional evaluations conducted in the course. Una comprensión correcta sobre cómo las computadoras corren programas es imprescindible para aprender a programarlas efectivamente. Clases magistrales se han usado históricamente en los cursos de programación para enseñar cómo las computadoras ejecutan código, y los aprendizajes de los estudiantes se han evaluado a través de métodos tradicionales, como exámenes. La teoría de aprendizaje constructivista objeta la pasividad de los estudiantes durante las lecciones y los métodos cuantitativos para evaluar procesos cognitivos complejos, tales como la comprensión. El constructivismo propone técnicas complementarias, tales como la contraposición conceptual y los coloquios. En este trabajo se enriquecieron las clases magistrales de un curso de "Programación II" (CS2) combinando contraposición conceptual con rastreos de memoria de programa. Luego se evaluó la comprensión que los estudiantes tenían de los conceptos de programación a través de coloquios. Los resultados revelaron que esas técnicas aplicadas a la clase magistral son insuficientes para ayudar a los estudiantes a desarrollar modelos mentales satisfactorios de la máquina nocional de C++. Además se encontró que los coloquios se comportaron como las evaluaciones tradicionales más exhaustivas realizadas en el curso.
- Published
- 2016