Factor Analysis to Examine the Effect and Expectation of Reading Simple Source Codes for Improving Programming Skill

  • Shimpei Matsumoto Hiroshima Institute of Technology
  • Tomoko Kashima Kindai University
  • Shuichi Yamagishi Hiroshima Institute of Technology
Keywords: factor Analysis, learning support system, programming education, reading based programming learning


The authors have developed a programming learning support system based on source code reading whose primary target is novice programming learners. This system trains its learners by giving questions requiring to answer a variable’s value after the execution of a presented source code. This paper shows the details of the developed system and the examination result on the effect and the expectation of reading simple source codes based on the real operation to a basic programming lecture. After the learners had completed one semester of the instruction in programming by utilizing the developed system, we obtained learner’s responses by a questionnaire and analyzed it with factor analysis. The analysis result unveiled the characteristic factors and these degrees.


A. Robins, J. Rountree and N. Rountree, Learning and teaching programming: a review and discussion. Computer Science Education, Vol.13, No.2, pp.137-172 (2003).

A. Pears, S. Seidman, L. Malmi, L. Mannila, E. Adams, J. Bennedsen, et al., A survey of literature on the teaching of introductory programming, ACM SIGCSE Bulletin, Vol.39, No.4, pp.204-223 (2007).

M. Okamoto, K. Terakawa, M. Murakami, K. Ikeda, M. Mori, T. Uehara and H. Kita, Computer Programming Course Materials for Self-Learning Novices, Proc. of World Conference on Educational Multimedia, Hypermedia and Telecommunications, pp.2855-2861 (2010).

M. Lopez, K. Sutton and T. Clear, Surely we must learn to read before we learn to write!, Proc. of the Eleventh Australasian Conference on Computing Education, Vol.95, pp.165-170 (2009).

H. Kanamori, T. Tomoto and T. Akakura, Development of a Computer Programming Learning Support System Based on Reading Computer Program. In: S. Yamamoto (ed.) HCI 2013, Part III. LNCS, Vol.8018, pp.63-69. Springer, Heidelberg (2013)

T. Arai, H. Kanamori, T. Tomoto, Y. Kometani and T. Akakura, Development of a learning support system for source code reading comprehension, In: S. Yamamoto (ed.) HCI 2014, Part II. LNCS, Vol.8522, pp.12-19. Springer, Heidelberg (2014)

M. Tang, Caesar, A social code review tool for programming education, Doctoral dissertation, Massachusetts Institute of Technology (2011).

T. Busjahn and C. Schulte, The use of code reading in teaching programming, Proc. of the 13th Koli Calling International Conference on Computing Education Research, pp.3-11 (2013).

R. Lister, E. Adams , S. Fitzgerald, W. Fone, et al., A multi-national study of reading and tracing skills in novice programmers, ACM SIGCSE Bulletin, Vol.36, No.4,pp.119-150 (2004), DOI: http://dx.doi.org/10.1145/1041624.1041673

K. Cunningham, S. Blanchard, B. Ericson, and M. Guzdial, Using Tracing and Sketching to Solve Programming Problems: Replicating and Extending an Analysis of What Students Draw, In Proceedings of the 2017 ACM Conference on Interna-tional Computing Education Research (ICER ’17), ACM, pp.164-172 (2007), DOI: https://doi.org/10.1145/3105726.3106190

D. Spinellis, Reading, writing and code, ACM Queue, Vol.1, No.7, pp.84-89 (2003).

M. Weiser, Programmers Use Slices When Debugging, Communications of the ACM, Vol.25, No.7, pp.446-452 (1982).

D. Boswell, T. Foucher, The Art of Readable Code (Theory in Practice), O’Reilly Media (2011).

S. Matsumoto, K. Okimoto, T. Kashima and S. Yamagishi, Automatic Generation of C Source Code for Novice Programming Education, Human-Computer Interaction. Theory, Design, Development and Practice: 18th International Conference, HCI Inter-national 2016, Toronto, ON, Canada, July 17-22, 2016. Proceedings, Part I, Springer (2016).

Technical Papers (Information and Communication Technology)