Abstract
Programming classes offer unique opportunities to learn both semantic and syntactic precision, even for primary school children without prior knowledge in computer science. In order to make students progress autonomously, programming languages and environments need to be chosen with care to their didactic quality. This paper introduces four classes covering the majority of what we call structural programming errors. These mistakes are either syntactical errors or the result of invocations that do not match the signature of any user-defined command, and therefore prevent the execution of a program. Furthermore, we present a methodology that allows for detecting as many structural programming errors as possible, and show how we integrated this methodology in our Logo programming environment for primary schools. Finally, we reflect on an evaluation we carried out at school that confirms the didactic benefits of the chosen approach.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Hromkovič, J., Serafini, G., Staub, J.: XLogoOnline: a single-page, browser-based programming environment for schools aiming at reducing cognitive load on pupils. In: Dagiene, V., Hellas, A. (eds.) ISSEP 2017. LNCS, vol. 10696, pp. 219–231. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-71483-7_18
Smith, M.: https://obamawhitehouse.archives.gov/blog/2016/01/30/computer-science-all. Status as of 15 June 2018
https://programmailfuturo.it/progetto/descrizione-del-progetto. Status as of 15 June 2018
https://www.gov.uk/government/publications/national-curriculum-in-england-computing-programmes-of-study/, 15 June 2018
Mindstorms, S.P.: Children, Computers, and Powerful Ideas, 2nd edn. Basic Books, New York (1993)
Hromkovič, J., Kohn, T., Komm, D., Serafini, G.: Combining the power of Python with the simplicity of Logo for a sustainable computer science education. In: Brodnik, A., Tort, F. (eds.) ISSEP 2016. LNCS, vol. 9973, pp. 155–166. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-46747-4_13
Biggs, J.: Enhancing teaching through constructive alignment. High. Educ. 32(3), 347–364 (1996)
Harvey, B., et al.: Snap! (build your own blocks). In: Proceedings of the 45th ACM Technical Symposium on Computer Science Education. ACM (2014)
Fraser, N.: Ten things we’ve learned from Blockly. In: Conference: 2015 IEEE Blocks and Beyond Workshop (Blocks and Beyond) (2015)
Wolber, D.: App inventor and real-world motivation. In: Proceedings of the 42nd ACM Technical Symposium on Computer Science Education. ACM (2011)
Salanci, L.: EasyLogo - discovering basic programming concepts in a constructive manner. Constructionism 2010, Paris. http://edi.fmph.uniba.sk/~salanci/EasyLogo/index.html
Maloney, J., Resnick, M., Rusk, N., Silverman, B., Eastmond, E.: The Scratch programming language and environment. ACM Trans. Comput. Educ. 10, 4 (2010). Article 16
Grandell, L., et al.: Why complicate things?: introducing programming in high school using Python. In: Proceedings of the 8th Australasian Conference on Computing Education, vol. 52. Australian Computer Society Inc. (2006)
Lattner, C., et al.: https://clang.llvm.org/diagnostics.html. Status as of 15 June 2018
Kohn, T.: Teaching Python programming to novices: addressing misconceptions and creating a development environment. Doctoral thesis (2016)
Metcalfe, J.: Learning from errors. Annu. Rev. Psychol. 68, 6.1–6.25 (2016)
Gartmeier, M., Bauer, J., Gruber, H., Heid, H.: Negative knowledge: understanding professional learning and expertise. In: Proceedings of Vocation and Learning 2008, pp. 87–103. https://doi.org/10.10007/s12186-008-9006-1
Oser, F., Spycher, M.: Lernen ist schmerzhaft. Zur Theorie des negativen Wissens und zur Praxis der Fehlerkultur. Weinheim; Beltz (2005)
Kummerfeld, S.K., Kay, J.: The neglected battle fields of syntax errors. In: ACE 2003 Proceedings of the Fifth Australasian Conference on Computing Education, Adelaide, vol. 20, pp. 105–111 (2003)
Kornell, N., Metcalfe, J.: The effects of memory retrieval, errors, and feedback on learning. In: Applying Science of Learning in Education. VA Benassi (2013)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendix
Appendix
See Table 2.
Rights and permissions
Copyright information
© 2018 Springer Nature Switzerland AG
About this paper
Cite this paper
Forster, M., Hauser, U., Serafini, G., Staub, J. (2018). Autonomous Recovery from Programming Errors Made by Primary School Children. In: Pozdniakov, S., Dagienė, V. (eds) Informatics in Schools. Fundamentals of Computer Science and Software Engineering. ISSEP 2018. Lecture Notes in Computer Science(), vol 11169. Springer, Cham. https://doi.org/10.1007/978-3-030-02750-6_2
Download citation
DOI: https://doi.org/10.1007/978-3-030-02750-6_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-02749-0
Online ISBN: 978-3-030-02750-6
eBook Packages: Computer ScienceComputer Science (R0)