New Paths for the Turtle

Turtle graphics, a popular approach to introducing young learners to programming, traces its roots back to the original Logo programming language. Logo, an educational programming language designed by Seymour Papert and others in 1967, played a significant role in the development of this technique.

My personal journey with Logo began during my time as a graduate student in education. As a young adult, I struggled with mathematics, finding abstract concepts elusive and distant, while others seemed to grasp them effortlessly. Mathematics became an enigma, something I couldn’t connect with. However, everything changed when I entered graduate school and was given the task of teaching geometry to a fifth-grade student using a special curriculum that leveraged Logo and its Turtle graphics feature.”

A friend suggested several years ago that I learn Python. I had dabbled with computer programming but never stuck with it. He invited me to sit in on a staff development session on using Python in educational settings. Fortunately for me, he introduced them to the Python ‘turtle module.’ There was a connection immediately to my earlier experiences with Apple LOGO, and I began to experiment. I was comfortable on the command line but new to the Python REPL. Nonetheless, I opened a new session and began by importing the ‘turtle module.’

don@pop-os:~$ python3
Python 3.10.12 (main, Jun 11 2023, 05:26:28) [GCC 11.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

I imported the turtle module and followed my friend’s example. He was on a MacOS computer while I was using a Linux laptop. The results were nearly identical, though.

I enjoyed moving the turtle around the screen and drawing some simple shapes. The true potential of Turtle lies not merely in its capacity to execute commands but in its ability to foster procedural thinking and encourage students to reflect on their thought processes. With the aid of Turtle graphics, programming students can receive instant visual feedback from their code and simultaneously explore mathematical concepts, such as estimation and variability.

Reading books like “Teach Your Kids to Code” by Bryson Payne and “Python for Kids” by Jason Briggs, I learned more about the ‘Turtle’ and Python in general. My love of learning and teaching invited me to think of how I could share this with others. In the past half dozen years, I have taught homeschool classes and conducted workshops in public libraries.

I recently completed a three-day session in a nearby public library. Each of the participating youngsters received a Raspberry Pi 400, which they learned to set up and connect to library-supplied displays and the local area network. The main focus of our classes was getting them started programming with Python. We used the Mu editor included with the Raspberry Pi operating system. In a bit less than three days, the students learned how to program the turtle using simple commands at first, then progressed to ‘for’ loops and the ‘random’ module. Each of the participants was able to take their library-supplied Raspberry Pi 400 home with them.

There is nothing more exciting than seeing students excited about learning. I encourage you to share your skills with young learners wherever and whenever you can.