Open-source News

How I get students excited about math with Python and Raspberry Pi

opensource.com - Fri, 08/12/2022 - 15:00
How I get students excited about math with Python and Raspberry Pi Don Watkins Fri, 08/12/2022 - 03:00 Register or Login to like Register or Login to like

I am teaching Python using Raspberry Pi 400 computers in a local library for the second year in a row. A couple of this year's students have not experienced success with mathematics in their school. One asked me if she needed algebra to attend our class. I told her I had failed algebra, geometry, and trigonometry in school. She was relieved. Another student rushed in the door a bit late because she was taking geometry in summer school after failing to pass the course during the school year. I shared my own story of learned helplessness and my distress at the thought of math tests. My own bad experiences impacted my high school and early college years.

I like Python, and in particular, the turtle module, because of an experience in graduate school in the early 1990s. The exercise used Apple's logo to teach students geometry, leading to an epiphany that completely changed my attitude toward mathematics. This week's class has four eighth-grade students. Two have math backgrounds, and two have math phobias. On the first day of class in the Olean Public Library, we started with a brief explanation of the RaspberryPi 400 and how to connect each of those computers to old VGA monitors that came from storage. I gave the students a brief overview and tour of the ports, peripheral mouse, and microHDMI cable we would use. We proceeded, step by step, to assemble the parts of the Raspberry Pi 400 units and connect them to the monitors. We powered up the units, and I assisted the students as they properly configured their computers for the United States and the Eastern Time Zone. We connected to the library's wireless network and were ready to begin.

More on Raspberry Pi What is Raspberry Pi? eBook: Guide to Raspberry Pi Getting started with Raspberry Pi cheat sheet eBook: Running Kubernetes on your Raspberry Pi Whitepaper: Data-intensive intelligent applications in a hybrid cloud blueprint Understanding edge computing Our latest on Raspberry Pi

I gave the students a brief overview of all the software on their computers. Then I introduced them to the Mu-Editor that comes pre-installed on their computers. We reviewed the Read-Evaluate-Print-Loop (REPL). I explained that while we could execute code in the REPL, they would find it easier to write the code in the Mu-Editor and then save their code with a .py extension to ensure that the system could execute it properly. I explained how our code needed comments and how to add and save them properly.

# first program print("Hello World")

Then I introduced them to the turtle module. We talked about the elements of a square; that squares are made up of four equal sides and contain 90-degree angles. We wrote the following code together, saved our work, and executed it.

# First Turtle Square import turtle turtle.forward(200) turtle.right(90) turtle.forward(200) turtle.right(90) turtle.forward(200) turtle.right(90) turtle.forward(200) turtle.right(90)

I explained how to change the code and add features like a different pen color and a different color background.

# First Turtle Square import turtle turtle.pencolor("blue") turtle.bgcolor("yellow") turtle.forward(200) turtle.right(90) turtle.forward(200) turtle.right(90) turtle.forward(200) turtle.right(90) turtle.forward(200) turtle.right(90)

I introduced them to the turtle.shape to change from the default to look more like a turtle. I encouraged them to save each time and to iterate. They had fun sharing their results.

In our second session, I demonstrated how to use a for loop to draw a square and how to clean up the code by assigning the "turtle" to a specific letter. Then I ran the code.

#For Loop import turtle as t for x in range(4): t.forward(200) t.right(91)

One of the students who had experienced mathematics problems in the past said, "That square looks crooked."

I said, "You're right. What's wrong with it?"

She let me know that my t.right should be 90 and not 91. I corrected the error and reran the code. It looked perfect, and she was proud to have experienced some success with mathematics.

We changed our code, and I introduced them to new possibilities within the turtle module, including speed, pen color, and background color. They enjoyed it when I demonstrated how we could easily create a square spiral using the following code:

# square spiral import turtle as t t.speed(0) t.bgcolor("blue") t.pencolor("yellow") for x in range(200): t.forward(x) t.right(91)

We changed our code again to make circle spirals. The students were leaning into the learning, and our ninety-minute class came to an end. One of the students is in summer school re-taking geometry which she failed during the school year, and each day she runs a block and a half to make it to our class, where she excels at constructing geometric shapes. She has a great eye for detail and regularly helps the other students identify errors in their code. Her watchful eye inspired me to discuss the value of open source software and the power of many eyes on the code with the group.

Image by:

(Don Watkins, CC BY-SA 4.0)

# circle spiral import turtle as t t.speed(0) t.bgcolor("blue") t.pencolor("yellow") for x in range(100): t.circle(x*2) t.right(91) t.setpos(60,75) for x in range(100): t.circle(x) t.right(91) Image by:

(Don Watkins, CC BY-SA 4.0)

Using Python with open source hardware and software to facilitate mathematics instruction amazes me. With a little ingenuity, it's possible to reimagine mathematics education. Each student who participated in our class will receive the Raspberry Pi 400 they worked on to take home and use. They'll have to find a display to connect to, but for a bit over one hundred dollars per unit, we are investing in their future. You can have the same effect in your community if you are willing to donate your time. Public libraries are great spaces for extracurricular activities, and some of the resources I have used as the basis for my classes come from library books. One of those books is Teach Your Kids to Code. Another is Python for Kids and A Simple Turtle Tutorial by Al Sweigart is available online. We used Raspberry PI 400 kits with VGA monitors and microHDMI to VGA adapters. You could easily adapt this instruction using refurbished Linux laptops, Windows, and/or macOS laptops.

Reimagine math with the help of these open source technologies.

Image by:

Opensource.com

Python Raspberry Pi What to read next This work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License. Register or Login to post a comment.

Top 5 Best WordPress Plugins for e-learning Professionals

Tecmint - Fri, 08/12/2022 - 13:05
The post Top 5 Best WordPress Plugins for e-learning Professionals first appeared on Tecmint: Linux Howtos, Tutorials & Guides .

Whether you are a teacher at a school, academy, or institute, or if you are an independent tutor or a volunteer who gives online classes, you need to have special tools to be able

The post Top 5 Best WordPress Plugins for e-learning Professionals first appeared on Tecmint: Linux Howtos, Tutorials & Guides.

Linux Mint 21 XFCE Edition New Features and Installation

Tecmint - Fri, 08/12/2022 - 11:57
The post Linux Mint 21 XFCE Edition New Features and Installation first appeared on Tecmint: Linux Howtos, Tutorials & Guides .

Linux Mint 21, codenamed “Vanessa”, was officially released on July 31, 2022. Linux Mint 21 is based on Ubuntu 22.04 and will be supported until April 2027. Linux Mint 21 comes in three editions:

The post Linux Mint 21 XFCE Edition New Features and Installation first appeared on Tecmint: Linux Howtos, Tutorials & Guides.

Asahi Linux May Pursue Writing Apple Silicon GPU Driver In Rust

Phoronix - Fri, 08/12/2022 - 01:55
When it comes to the Apple M1 and M2 support on Linux, one of the biggest obstacles to suitable daily use for end-users is the current lack of GPU acceleration. Reverse engineering has been happening for the Apple Silicon graphics processor, early experiments being carried out under macOS and Asahi's m1n1 environment, and the next step will be to start writing a Direct Rendering Manager (DRM) kernel driver. To some surprise, the feasibility of writing this DRM kernel GPU driver in the Rust programming language is being explored...

Linux 5.19.1 Released With LTS Kernels Back To 4.19 For The "PBRSB" CPU Issue

Phoronix - Thu, 08/11/2022 - 23:00
A number of new Linux kernel stable releases are out this week with new mitigations around the latest batch of published CPU security vulnerabilities. Linux 5.19.1, 5.18.17, 5.15.60, 5.10.136, 5.4.210, and 4.19.255 are the new releases out today...

AMD Posts Linux Patches For "LbrExtV2" Zen 4 CPU Feature

Phoronix - Thu, 08/11/2022 - 21:11
While all of the key Zen 4 CPU functionality appears in place for the mainline Linux kernel, AMD engineers continue working to enable other new Zen 4 features for use under Linux. The newest patches out of AMD this morning are for LbrExtV2...

Ubuntu 22.04.1 LTS Released

Phoronix - Thu, 08/11/2022 - 21:10
Following a one week delay due to a last minute blocker bug being discovered, Canonical today has shipped Ubuntu 22.04.1 LTS as the first point release to this current long-term support series...

Pages