This lecture will give a practical report on programming education using Python for elementary school
students. Programming education for elementary school students often uses block-based programming
languages such as Scratch. In contrast, I chose to teach with Python in order to provide the students
with insights into computer and hardware mechanisms. In this report, I share an educational method
for teaching programming, using Python, to elementary school students. In addition, I report the
difficulties associated with teaching Python to elementary school students.
This proposal is a practical report on programming education using Python for elementary school students in Japan. The activities described herein teach programming and computer mechanics as after-school exercises. In our activities, we use Python as the programming language. In addition, Raspberry Pi computers were used for teaching purposes.
## Activity Contents
Basics of computers and ICT / IoT
Raspberry Pi and easy GPIO programming
Product development to solve personal problems
## Reasons for choosing Python
In programming education for elementary school students, block-based programming languages such as Scratch are often used. Block-based programming has advantages such as easy drag-and-drop programming, ease of learning, and ease of teaching. However, I chose to teach with Python, a text-based programming language. One reason for this choice was that text-based programming languages provide cognitive learning that follows computer behavior. Furthermore, the progression from GPIO (General-purpose input / output) programming using a Raspberry Pi to advanced technologies such as IoT (the Internet of Things) and machine learning is possible.
## Challenges in learning Python
Learning Python for Japanese elementary school students has two challenges: keyboard input and the need to read English.I solved the challenges in the following ways:
+ Short program example
I prepared a short program example. The reason is to reduce the amount of keyboard typing. In addition, the program can be executed immediately. This will help prevent elementary school students from getting bored of programming.
+ Comments in the program in Japanese
I used Japanese for the comments in the program. Hence, elementary school students can help read the English methods.
## Results and Discussion
Elementary students without any programming experience were able to learn Python. However, they needed a lot of time to understand the course material. This was a result of learning the Raspberry Pi operations and GPIO programming concurrently, which led to a greater learning content for children. This can be addressed by making the learning process easier, such as by preparing and providing many sample programs. Hence, Python teaching materials associated with GPIO and other mechanisms are necessary.
I used Python in programming education for elementary school students and found that Python can be learned by children. However, the learning environment is important, and we will address this factor in the future.