Wednesday, May 3, 2023

STEM Lab Round 6

This was the last full round of the year in the lab as there are only a few weeks of school left. Some classes returned to their Code.org courses and others created their first true Scratch projects. We also got our hands on the Makey Makeys again and also rolled out the Raspberry Pi computers for some physical computing.

Kindergarten & 1st Grade

When it comes to teaching computer programming, I try to strike a good balance between giving the students set tasks to complete and giving them the creative freedom to explore the possibilities of what they are able to create with code. Code.org is a great tool for giving students practice with specific coding concepts like using loops or particular events. This kind of practice prepares them for the upper grades when they will work on projects with more open ended prompts.  



2nd Grade

In round 5 the second graders were introduced to the full version of the Scratch programming language. They completed several short, guided projects designed to familiarize them with the most useful commands and concepts. Round 6 had the students create their first multiday project with Scratch. The task was to plan and create an "about me" project. They planned their project on paper first determining what facts they would share about themselves. In Scratch the students spelled their names with sprites and then gave each letter a new costume that represented one of their personal facts. Clicking a letter causes it to change costumes and say something about the student before changing back into the letter. I was quite impressed with the projects the students created. Even though they all work the same way, each one reflects the personality and interests of the student that created it.



3rd Grade

Third grade spent round 6 learning to build a new kind of switch for the Makey Makey. Previously they created interactive posters that required the user to place one finger on a metal fastener serving as a  "ground" point and then touch the other metal fasteners connected to the key presses on the Makey Makey. We mostly referred to this week's creation as a keyboard. It had one long strip of copper tape acting as the ground for the cardboard keys. The underside of each key had copper tape that ran to the edge of the board where the Makey Makey's clips were attached. Pressing the key down brings the copper tape in contact with the ground wire, completing the circuit and triggering the key press. Students tested their boards with pre-made apps on the Makey Makey site as well as on Scratch projects they created.



4th and 5th Grades

Our 4th and fifth graders both worked on physical computing using the Raspberry Pi single board computer. The Pi functions like pretty much any other computer. It is about the size of a credit card and uses a micro SD card as its memory. The best thing about the Raspberry Pi is that is is designed for digital making projects. It has 40 general purpose input output (GPIO) pins that can be used of power and program physical components like LEDs, buttons, and motors. The Pi is a logical next step in physical computing after working with the micro:bit as the students did earlier in the year. 

Fourth grade started the unit by learning to build circuits on a breadboard using AA batteries to power the LEDs. Next the students moved to the Raspberry Pi and built circuits connected to the GPIO pins and programmed various blinky light effects using Scratch. They learned to use a tactile button to trigger actions with both the LEDs on the breadboard and on the computer screen. I was super proud of how well they did building their different circuits and then programming a variety of sequences. Several even discovered more efficient wirings so they had space on the breadboard for more LEDs, and more LEDs is always better!

The fifth grade classes learned to use the Python language to build graphical user interfaces (GUIs) in this unit. Those who were at Sinclair last year got a taste of Python in 4th grade, so most of the students had that familiarity with a text-based programming language. First they created a simple GUI that included a text box, a button, and a slider, each programmed to execute a certain function. As always, they were encouraged to tinker with the code to personalize their GUI. The week's final task was to create a GUI that could be used to control the behavior of bread boarded circuits (which they had worked with last year). Once again, their tinkering and customizations produced some wonderful results.