Improving the mental models held by novice programmers using cognitive conflict and jeliot visualisations

L. Ma, J. D. Ferguson, M. Roper, I. Ross, M. Wood

Research output: Chapter in Book/Report/Conference proceedingConference contribution book

11 Citations (Scopus)


Recent research has found that many novice programmers often hold non-viable mental models of basic programming concepts which can limit their potential to develop appropriate programming skills. Previous work by the authors suggests that a teaching model that integrates cognitive conflict and program visualisation can help novices formulate appropriate mental models. This paper first outlines a 'concepts roadmap' that provides an ordered approach to learning programming concepts allowing students to build on fundamental base knowledge. It then reports the results of a series of studies investigating the use of the Jeliot visualisation tool as the visualisation component of the proposed learning model when applied to these concepts. The findings include: the ease with which Jeliot can be tailored to visualise a range of concepts using a variety of examples; the Jeliot visualisation of object reference was too complex for CS1 students; further evidence that CS1 students struggle to develop appropriate understanding of a range of key programming concepts; and, further evidence that an integrated cognitive conflict/visualisation strategy can help students develop an appropriate understanding of key programming concepts.
Original languageEnglish
Title of host publicationITICSE 2009
Subtitle of host publicationproceeding of the 2009 ACM SIGSE annual conference on innovation and technology in computer science education
EditorsPatrick Brézillon, Ingrid Russell , Jean-Marc Labat
Place of PublicationNew York
Number of pages5
Publication statusPublished - 1 Jul 2009


  • improving
  • mental models
  • novice programmers
  • cognitive conflict
  • jeliot visualisations
  • cs1


Dive into the research topics of 'Improving the mental models held by novice programmers using cognitive conflict and jeliot visualisations'. Together they form a unique fingerprint.

Cite this