Skip to main content

How I teach Python on the Raspberry Pi 400 at the public library

After a long year of putting plans on hold, declining COVID case numbers in the United States are bringing back community-based programming courses.
177 readers like this.
women programming
Image by:

WOCinTech Chat. Modified by Opensource.com. CC BY-SA 4.0

After a long and tough year, I've been looking forward to once again sharing my love of Python and open source software with other people, especially middle and high school students. Before the pandemic, I co-wrote a grant to teach Python programming to middle school students using Raspberry Pi computers. Like many other plans, COVID-19 put mine on hold for over a year. Fortunately, vaccines and the improved health in my state, New York, have changed the dynamic.

A couple of months ago, once I became fully vaccinated, I offered to self-fund a Raspberry Pi and Python programming course in our local public library system. The Chautauqua-Cattaraugus Library system accepted my proposal, and the co-central library in Olean, N.Y., offered to fund my program. The library purchased five Raspberry Pi 400 units, Micro-HDMI-to-VGA adapters, and inline power adapters, and the library system's IT department loaned us five VGA monitors.

With all our equipment needs met, we invited middle school students to enroll for four afternoons of learning and programming fun.

All the students were socially distanced, each with a new Pi 400 and VGA monitor at their desk. Our class was small, made up of a fourth-grade student and two sixth-grade students. None had a programming background, and their keyboarding skills were rough. However, their innate curiosity and enthusiasm carried the day.

Learning and iterating

We spent the first afternoon assembling the Pi 400s, connecting them to the library's wireless network, and installing the Mu Python editor, which we used for the class.

Raspberry Pi 400 equipment
Image by:

(Don Watkins, CC BY-SA 4.0)

I followed this with a brief introduction to Raspberry Pi OS and how it differs from Windows and macOS computers and offered a brief tutorial on using the Mu editor.

Since we were meeting in a public library, I emphasized that the library has books covering the concepts and Python programming code used in the class, especially Teach Your Kids to Code by Dr. Bryson Payne and Python for Kids by Jason Briggs. I created daily handouts for the students to refer to alongside the instruction. I also used my own Raspberry PI 400 connected to a 32" LCD monitor to illustrate the code and programming results.

Raspberry Pi 400 setup
Image by:

(Don Watkins, CC BY-SA 4.0)

I like to use the turtle module to introduce Python programming. It's always been well received, and the students love the graphics they can create while learning Python basics like variables, for loops, lists, and the importance of syntax.

I learn something new every time I teach, and this was no exception. I especially enjoy watching students iterate on my code examples—some are from books, and others are my own creations. The fourth-grader in our class took this example code and added two more colors and corresponding code to create a six-color spiral.

# multicolor spiral
import turtle as t
colors = ["red", "yellow", "blue", "green"]
for x in range(100):
 t.pencolor(colors[x%4])
 t.circle(x)
 t.left(91)
Spiral graphic created in Python
Image by:

(Don Watkins, CC BY-SA 4.0)

At the end of the four-day course, each student received a Raspberry Pi 400 and a book explaining how to program their computer. They also got a list of free and open source software resources, a reading list of recommended books available in the library, and some open educational resources available on the web.

Open learning

Mark Van Doren said, "the art of teaching is the art of assisting discovery." I saw that play out in this classroom using open source tools. More students need opportunities like this to help them gain a quality education. The Raspberry Pi 400 is a great form factor for teaching and learning.

The Olean Library plans to offer another similar course later this year. I encourage you to share your love of free and open source software with your own communities.

What to read next
User profile image.
Educator, entrepreneur, open source advocate, life long learner, Python teacher. M.A. in Educational Psychology, M.S. Ed. in Educational Leadership, Linux system administrator.

4 Comments

These comments are closed.
Avatar
Kevin Cole | June 22, 2021
No readers like this yet.

Most excellent, dude!

Avatar
Kevin Cole | June 22, 2021
No readers like this yet.

At HacDC we recently ran a "prototype" alpha-test run of a six- to eight-week class using the SparkFun / RedHat CoLab robot, based on the BBC micro:bit microprocessor and the SparkFun moto:bit board for controlling motors and sensors. The idea was to run it by some of the more skilled before offering it to a wider audience once we're open for business again.

Avatar
Don Watkins | June 23, 2021
No readers like this yet.

Great idea. I've used the BBC :Microbit in a prior Raspberry PI and coding class that held in August 2019. I'd like to incorporate that again. I admire your work with HacDC.

In reply to At HacDC we recently ran a by kjcole

Avatar
The Cube | June 26, 2021
No readers like this yet.

While I laud teaching kids programming and other STEM topics, I have to say that I really really dislike Python, and while it is better than using BASIC, I fear that introducing programming using Python will have negative consequences down the road.

https://www.computercollection.net/index.php/2020/04/13/python-the-good-and-the-mostly-bad/

Creative Commons LicenseThis work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License.

About This Site

The opinions expressed on this website are those of each author, not of the author's employer or of Red Hat.

Opensource.com aspires to publish all content under a Creative Commons license but may not be able to do so in all cases. You are responsible for ensuring that you have the necessary permission to reuse any work on this site. Red Hat and the Red Hat logo are trademarks of Red Hat, Inc., registered in the United States and other countries.

A note on advertising: Opensource.com does not sell advertising on the site or in any of its newsletters.

AltStyle によって変換されたページ (->オリジナル) /