Skip to main content

Memory transfer language as a tool for visualization-based-pedagogy


In this paper, MTL, an approach for visualization-based pedagogy, is analyzed and contextualized in both Cognitive Load Theory (CLT) and Dual Coding Theory (DCT). Through MTL, lectures, tutorials, laboratory sessions and individual study in learning and teaching programming are all carried out using two cognitive channels; verbal and non-verbal. RAM diagrams together with animations are used to visualize (represent the images of) codes, while text and voice are used for verbal presentations. A class experiment was carried out to evaluate the impact of using MTL together with animations in teaching programming. The chi-square test results revealed that, students' performance on one question (question 1) was significantly (p < 0.0001) higher for the experimental group (23.53%) as compared to the control group (1.89%). Similarly, the results of the chi-square test revealed that, students' performance on another question (question 2) was significantly (p < 0.0001) higher for the experimental group (23.53%) as compared to the control group (1.14%). It is concluded that the MTL approach enhances comprehension since it allows the use of two cognitive channels, which, in turn, reduces cognitive load.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19


  • Burkhard R. (2005). Knowledge Visualization: The Use of Complementary Visual Representations for the Transfer of Knowledge. A Model, a Framework, and Four New Approaches. A dissertation submitted to the Swiss Federal Institute of Technology Zurich.

  • Cetin, I. (2020). Teaching loops concept through visualization construction. Informatics in Education, 19(4), 589–609.

    Article  Google Scholar 

  • Clancy, M. (2004). Misconceptions and Attitudes that Interfere with Learning to Program. In: S. Fincher, & M. Petre (Eds), Computer Science Education Research (85–100). Routledge.

  • Dehnadi, S. (2009). A Cognitive Study of Learning to Program in Introductory Programming Courses. PhD Thesis, Middlesex University, School of Engineering and Information Sciences.

  • D’etienne, F. (2002). Software Design—Cognitive Aspects. Springer-Verlag.

    Book  Google Scholar 

  • Du Boulay, B., O’Shea, B. T., & Monk, J. (1981). The black box inside the glass box: Presenting computing concepts to novices. International Journal of Man-Machine Studies, 14, 237–249.

    Article  Google Scholar 

  • Figueiredo, J., Gomes, N., & García-Peñalvo, F. J. (2016). Ne-course for learning programming. In: F. J. García-Peñalvo (Ed.), Proceedings of the 4th International Conference on Technological Ecosystems for Enhancing Multiculturality (TEEM'16). Salamanca, Spain, November 2–4, 2016. ACM.

  • Gerdt, P. and Sajaniemi, J. (2005). Roles of variables in Object-Oriented Programming. OOPSLA’05: Companion to the 20th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, October 2005, pages 350–355, San Diego, California, USA.

  • Kaila, E., Rajala, T., Laakso, M.-J., & Salakoski, T. (2010). Effects of Course-Long Use of A Program Visualization Tool. In Proceedings of the 12th Australasian Conference on Computing Education (ACE'10). 97–106.

  • Kanellopoulou, Kermanidis, & Giannakoulopoulos. (2019). The dual-coding and multimedia learning theories: Film subtitles as a vocabulary teaching tool. Education Sciences, 9(3), 210. MDPI AG.

    Article  Google Scholar 

  • Klepsch, M., & Seufert, T. (2020). Understanding instructional design effects by differentiated measurement of intrinsic, extraneous, and germane cognitive load. Instructional Science, 48, 45–77.

    Article  Google Scholar 

  • Luxton-Reilly, A. (2016). Learning to program is easy. In Proceedings of the 2016 ACM Conference on Innovation and Technology in Computer Science Education (ITiCSE'16), New York, USA, 284–289.

  • Ma, L. (2007). Investigating and Improving Novice Programmers' Mental Models of Programming Concepts. University of Strathclyde Department of Computer & Information Sciences.

  • Masoud, M. (2016). Celiot: A Program simulation Tool Under MTL Framework. Doctoral Dissertation, Department of Computer Science College of Informatics and Virtual Education, The University of Dodoma.

  • Mladenović, M., Žanko, Ž, & Aglić, C. M. (2021). The impact of using program visualization techniques on learning basic programming concepts at the K–12 level. Computer Applications in Engineering Education, 2021(29), 145–159.

    Article  Google Scholar 

  • Mselle, L. J., & Mmasi, R. (2011). The Impact of Memory Transfer Language (MTL) in Reducing Programming Misconceptions: A Class Experiment. ITiCSE 2011, the 16th Annual Conference on Innovation and Technology in Computer Science Education, ACM Press.

  • Mselle, L. J. (2014a). Using Memory Transfer Language (MTL) as a tool for program dry-running. International Journal of Computer Applications (0975 –8887), vol. 85(9), January 2014a.

  • Mselle, L. J. (2014b). Formalization of Memory Transfer Language (MTL) on the mold of register transfer language. International Conference on Information Science and Applications.

    Article  Google Scholar 

  • Moreno, A., & Joy, M. (2006). Jeliot 3 in a Demanding Educational Setting. Proc. of the 4th PVW, (pp. 48–53). Florence, Italy.

  • Naps, T. L., Rößling, G., Almstrum, V., Dann, W., Fleischer, R., Hundhausen, C., Korhonen, A., Malmi, L., McNally, M., Rodger, S., & Vel´azquez-Iturbide, J. Á. (2003). Exploring the role of visualization and engagement in computer science education. SIGCSE Bull., 35(2), 131–152.

    Article  Google Scholar 

  • Paivio, A. (2006). Dual Coding Theory and Education. Pathways to Literacy Achievement for High Poverty Children. The University of Michigan School of Education, September 29-October 1, 2006.

  • Robins, A., Rountree, J., & Rountree, N. (2003). Learning and teaching programming: A review and discussion. Computer Science Education., 13, 137–172.

    Article  Google Scholar 

  • Shaffer, C. A., Naps, T. L., & Fouh, E. (2011). Truly interactive textbooks for computer science education. In Proceedings of the 6th Program Visualization Workshop (PVW'11). 97–106.

  • Sorva, J., Karavirta, V., & Malmi, L. (2013). A review of generic program visualization systems for introductory programming education ACM. Transactions on Computing Education, 13(4), Article 15.

    Article  Google Scholar 

  • Sweller, J., Van Merriënboer, J. J. G., & Paas, F. (1998). Cognitive architecture and instructional design. Educational Psychology Review, 10, 251e295.

    Article  Google Scholar 

  • Sweller, J., van Merriënboer, J. J. G., & Paas, F. (2019). Cognitive architecture and instructional design: 20 years later. Educational Psychology Review, 31, 261–292.

    Article  Google Scholar 

  • van Paas, F., & Gog, T. (2006). Optimizing worked example instruction: Different ways to increase germane cognitive load. Learning and Instruction, 16(2), 87 0 91.

    Article  Google Scholar 

  • Yates, F. A. (1966). The Art of Memory. Routledge and Kegan Paul.

    Google Scholar 

Download references

Author information

Authors and Affiliations


Corresponding author

Correspondence to Leonard Mselle.

Ethics declarations

Conflict of interest


Additional information

Publisher's note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Mselle, L., Ishengoma, F. Memory transfer language as a tool for visualization-based-pedagogy. Educ Inf Technol (2022).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI:


  • Memory Transfer Language (MTL)
  • RAM diagrams
  • Program Visualization (PV)
  • Cognitive Load Theory (CLT)
  • Dual Coding Theory (DCT)
  • Teaching and learning programming