Learning programming is challenging. So, computer educators have developed various tools to help students. In this paper, we have developed a tool that combines the advantages of a Programming Automatic Assessment (PAA) system and Jupyter Notebook (JN) to support learning programming. The design direction of this system is free to use, easy to set up, and supports interactive computing. The Programming Automatic Assessment in Jupyter Notebook (PAAinJN) is available free of charge using the assessment module released on Git and the personal JN. The initialization is completed by executing in a code cell with two lines of code that downloads and executes the assessment module. In an interactive computing environment, presenting problems, writing code to be evaluated, and evaluating code can be executed in the code cells, and the problems and the results of the assessment are presented in the code cell outputs. The performance was verified by the examples presented in a high school informatics textbook using the programming automatic assessment system as teaching learning material. In addition, we propose a way to develop teaching-learning materials using PAAinJN in consideration of teachers and students and a way of distributing and collecting teaching-learning materials using the free Learning Management System. PAAinJN is expected to help students learn programming by eliminating assessment and feedback delays through PAA while learning to program in an interactive computing environment.
Objectives The Purpose in this study, a teaching⋅learning strategy was developed to lower the cognitive load when novice learners with block programming experience learn a text programming. Methods According to previous studies, Python was selected as a text programming language, and Python teaching⋅learning strategies with block programming language as a preceding organizer were developed and reviewed by experts. In addition, the developed teaching⋅learning strategy was applied to 19 elementary school students (8 experimental groups and 11 control groups) to measure computing thinking in a preliminary inspection and cognitive load in a post inspection. Results The teaching⋅learning strategy was finally completed after receiving a validity review from computer education professors and field experts. As a result of applying teaching⋅learning strategies, it was confirmed that they were homogeneous groups in the preliminary examination, and when teaching⋅learning strategies were applied, the cognitive load was measured lower than that of the control group. Conclusions Through prior research and expert review, teaching⋅learning strategy and learning materials with block programming language as a advanced organizer were developed. When learning Python with the developed strategy and learning materials, it was confirmed that the cognitive load was measured lower than with the direct teaching strategy. This is expected to increase academic achievement by allowing learners to have room for cognitive capacity and promoting learning due to the lower cognitive load when learning Python.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.