Skip to main content

Advertisement

Log in

Developing a source code reading tutorial system and analyzing its learning log data with multiple classification analysis

  • Original Article
  • Published:
Artificial Life and Robotics Aims and scope Submit manuscript

Abstract

To efficiently support novice programming learners who are feeling the programming difficult, clarifying the cause of preventing programming comprehension, and developing a new instruction method appropriate for their comprehension would be necessary. The objective of this paper is to develop a learning support system to facilitate the programming instruction through source code reading, which is also available for self-study and mini-examination. In addition, this paper aims to discover the unit of knowledge (knowledge module) which will obstruct an understanding for programming beginners. The developed system can automatically generate a source code of C programming language in which there is no particular meaning because the source codes as learning materials are generated randomly. The developed system was utilized in a programming class for novices. This paper obtained student answer log, after the students had completed one semester of the instruction, and analyzed the data. From the analysis result, the description which may make program reading comprehension difficult for a beginner was clarified.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

References

  1. Konecki M, Petrlic M (2014) Main problems of programming novices and the right course of action. In: Proceedings of the 25th central European conference on information and intelligent systems, pp 116–123

  2. Konecki M (2014) Problems in programming education and means of their improvement, Chapter 37. In: Katalinic B (ed) DAAAM international scientific book 2014. Published by DAAAM International, Vienna, pp 459–470. ISBN 978-3-901509-98-8, ISSN: 1726-9687. doi:10.2507/daaam.scibook.2014.37

  3. Kashima T, Matsumoto S, Yamagishi S (2014) Knowledge acquisition with eye-tracking to teach programming appropriate for learner’s programming skill. In: Proceedings of the third Asian conference on information systems, pp 287–292

  4. Okimoto K, Matsumoto S, Yamagishi S, Kashima T (2016) A source code reading based learning support system for novice programming education. In: Proceedings of the 21nd international symposium on artificial life and robotics, PS3, pp 765–768

  5. Boswell D, Foucher T (2011) The art of readable code (Theory in practice). O’Reilly Media, Sebastopol

    Google Scholar 

  6. Spinellis D (2003) Reading, writing and code. ACM Queue 1(7):84–89

    Article  Google Scholar 

  7. Wagstaff K (2004) Clustering with missing values: no imputation required, classification, clustering, and data mining applications. Springer, Berlin, pp 649–658

    Book  Google Scholar 

  8. Little R, Rubin D (2014) Statistical analysis with missing data. Wiley, New York

    MATH  Google Scholar 

  9. Robins A, Rountree J, Rountree N (2003) Learning and teaching programming: a review and discussion. Comput Sci Educ 13(2):137–172

    Article  Google Scholar 

  10. Pears A, Seidman S, Malmi L, Mannila L, Adams E, Bennedsen J et al (2007) A survey of literature on the teaching of introductory programming. ACM SIGCSE Bull 39(4):204–223

    Article  Google Scholar 

  11. Lopez M, Sutton K, Clear T (2009) Surely we must learn to read before we learn to write! In: Proceedings of the eleventh Australasian conference on computing education, vol 95, pp 165–170

  12. Kanamori H, Tomoto T, Akakura T (2013) Development of a computer programming learning support system based on reading computer program. In: Yamamot S (ed) HCI 2013, Part III. LNCS, vol 8018. Springer, Heidelberg, pp 63–69

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

  14. Kogure S, Okamoto M, Noguchi Y, Konishi T, Itoh Y, Adapting guidance and externalization support features to program and algorithm learning support environment. In: Proceedings of the 20th international conference of computers in education, pp 321–323 (2012)

  15. Kogure S, Okamoto M, Yamashita K, Noguchi Y, Konishi T, Itoh Y (2013) Evaluation of an algorithm and programming learning support features to program and algorithm learning support environment. In: Proceedings of the 21st international conference of computers in education, pp 418–424

  16. Yamashita K, Nagao T, Kogure S, Noguchi Y, Konishi T, Itoh Y (2016) Code-reading support environment visualizing three fields and educational practice to understand nested loops. Res Pract Technol Enhanc Learn 11:3. doi:10.1186/s41039-016-0027-3

    Article  Google Scholar 

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

  18. Busjahn T, Schulte C (2013) The use of code reading in teaching programming. In: Proceedings of the 13th Koli Calling international conference on computing education research, pp 3–11

  19. Lopez M (2008) Relationships between reading, tracing and writing skills in introductory programming. In: Proceedings of the fourth international workshop on computing education research, pp 101–112

  20. Okamoto M, Terakawa K, Murakami M, Ikeda K, Mori M, Uehara T, Kita H (2010) Computer programming course materials for self-learning novices. In: Proceedings of world conference on educational multimedia, hypermedia and telecommunications, pp 2855–2861

  21. Pennington N (1987) Stimulus structures and mental representations in expert comprehension of computer programs. Cogn Psychol 19:295–341

    Article  Google Scholar 

Download references

Acknowledgements

This work was partly supported by Furukawa Technology Promotion Foundation 2016, and Japan Society for the Promotion of Science, KAKENHI Grant-in-Aid for Scientific Research(C), No. 16K01147 and No. 17K01164.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Shimpei Matsumoto.

Additional information

This work was presented in part at the 21st International Symposium on Artificial Life and Robotics, Beppu, Oita, January 20–22, 2016.

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Okimoto, K., Matsumoto, S., Yamagishi, S. et al. Developing a source code reading tutorial system and analyzing its learning log data with multiple classification analysis. Artif Life Robotics 22, 227–237 (2017). https://doi.org/10.1007/s10015-017-0357-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10015-017-0357-2

Keywords

Navigation