Sunday, May 21, 2017

Made with Scratch, and with Scratch Jr.

For the final rotation of the year, I decided to introduce the 2nd graders to full size Scratch. I had done a few lessons with them using Scratch Jr. which is a programming tool for early readers. These lessons focused on how to use the various commands to create different movements and actions. The great successes the students had with Scratch Jr. led me the decision to take them to the next level. In doing so, I hope to have them ready to use Scratch as a means of expression in their work next year.

During the first week of the unit I had students work through the built in tutorial lessons found in Scratch. After a brief introduction to the user interface, drawing their attention to the various palettes and drawing tools, I set them to work on the "Animate your name" lesson. Students worked in partner groups as pair programmers, taking turns as drivers and navigators. This partner work helps by lending each project 2 sets of eyes to read the directions and to watch for mistakes. Over the next few days, the students made a number of different games that employed a variety of programming techniques including different kinds of loops and conditional statements.

The second week began with an introduction to using broadcasts to control the flow and action in the programs. I started with a whole group example program using a knock knock joke. In the program the sprites each say their portion of the joke at the appropriate time. This is accomplished by coding each statement the sprites say as separate script, each initiated by a broadcast. The first task I set the groups was to program a simple conversation. Many elected to copy the knock knock format, but others decided to try to create an original conversation. Keeping their broadcasts in order proved challenging to many students. As the conversations grew in length and complexity (thanks to the addition of more sprites), the number of broadcasts also grew. They worked on programming conversations and stories all week. There was some frustration when all of the sprites started talking over each other. However, there was a lot of excellent debugging practice as well. By the end of the week, most groups had succeeded in creating a story with conversations, movements, and scene changes. No two stories were alike, which is the most wonderful thing about Scratch, the amount of creative freedom students can have while still working on the same assignment.


As I had done with second grade, I also taught Scratch Jr. lessons to the kindergarten and first graders. The focus was on using the various tools and giving the students time to explore and experiment. During this final unit, I wanted to begin to teach them how to use Scratch Jr. to show what they have learned about a topic similar to what the 3rd and 4th graders have been doing. So each day we started by watching a Brain Pop Jr. movie about a different topic; parts of a plant, frog life cycles, the seasons, etc. and made some kind of illustrated foldable paper display for the information gathered. The next class, after reviewing the previous day's topic, student pairs then worked in Scratch Jr. to create a program that shared what they knew about that subject. I offered some guidance about getting started for each topic, but most of the creative choices were left to the students. They had to learn about drawing their own sprites and backgrounds. They also had to master the Scratch Jr. version of broadcasts to initiate scene changes and sprite conversations. The most truly wonderful part of watching the students work on their programs was the moment each day when a student made a discovery and called to his or her neighbor and said, "Look at this!". The neighbor would inevitably ask, "How did you do that?" at which point the first student would teach what they had learned. In this way, discoveries spread across the room from all directions like ripples in a pond.

In the end, I am so proud of the amazing work these young coders have done and I am so excited to see where they will take this learning next year.


Friday, May 5, 2017

Makey Makey-ing Interactive Displays

For the final STEM Lab rotation I wanted 3rd and 4th grade to employ all of the skills they developed this year. They constructed cardboard arcades and costumes for robotic story retells. They created a variety of Scratch projects, some to share content area knowledge, some just for fun. So I planned a unit that would require both their physical and digital making acumen. Enter the Makey Makey.

The Makey Makey is an input/output board that allows students to create circuits that act as keyboard presses. Using the programming language Scratch, students are able to create projects with an interactive dimension. The end product of this unit is an interactive poster or display that responds to the user's touch to activate the different parts of the program.

Students were organized into pairs and then used the project selector to be assigned a topic. This was the first introduction to Makey Makey for most of them. The project selector is a Scratch program I created with several lists of topics. Students pressed one of 4 foil switches left over from our STEM night, and the project told them their topic. (Third grade received a science concept, 4th was assigned an influential woman from history.) This was followed by a day of research. Student teams recorded their information in journals and then planned their Scratch projects. They grouped their facts plotting what images or animations would be on screen at the time. The teams also had to plan their physical display pieces. I showed the classes a few half done versions of the projects to give them a starting point. Most groups ended up far exceeding  my ideas in terms of creativity and skill.

With their research and planning finished, the teams began creating their Scratch projects and displays. Students learned how to insert photographs and other graphics from their research into the program. They also learned about proper citations of sources and images. The Scratch presentation required students to build scripts around key press events. For example, when the space key is pressed the background changes or an animation begins and a sprite tells a piece of information about the topic. Other key press events cause different things to happen in the program. The displays could be anything from posters to paper sculptures. There was a wonderful variety of display pieces; posters like protest signs, a 3D submarine, a model of the UNIVAC, and a diorama of the jungle.

Once both parts, digital and physical were complete, the groups used copper foil tape with a conductive adhesive to "wire" their projects. Metal fasteners were used as buttons on the outward side of the display with the wires on the reverse. The Makey Makey uses alligator clip wires to connect the contacts on the device to the copper foil wires. Each contact is designated as a particular key, space, the arrow keys and 6 letters. The user touches a ground point on the display with one hand and one of the buttons with the other, thus closing a circuit. Makey Makey signals the computer that a key was pressed. The act of wiring and testing that touching the display caused the correct response in their program was an excellent exercise in basic circuits and debugging.

As always, I have been deeply impressed with the work the students produced. Now that they are familiar with using Makey Makey I cannot wait to see what they do with it next year!