Understanding Notional Machines through Traditional Teaching with Conceptual Contraposition and Program Memory Tracing

Tipo de publicación: Journal Article

Publicado en: CLEI Electronic Journal

Autores
  • Hidalgo-Céspedes, Jeisson
  • Marín-Raventós, Gabriela
  • Lara-Villagrán, Vladimir

Investigadores del CITIC asociados a la publicación
Dr. Jeisson Hidalgo-Céspedes
Dra. Gabriela Marín Raventós
Dr. Vladimir Lara Villagrán

Proyecto asociado a la publicación
Creación de una visualización de programa para el aprendizaje constructivista de conceptos complejos de C++

Palabras claves
  • cognitive dissonance
  • conceptual contraposition
  • constructivism
  • InfoOK
  • lecture
  • notional machine
  • program memory tracing
  • programming learning
Resumen

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.

DOI BIBTEXT

Datos bibliográficos
Cita bibliográfica
Understanding Notional Machines through Traditional Teaching with Conceptual Contraposition and Program Memory Tracing