Category Archives: coding

Edison Robot Coding

On Fridays this year, my third grade STEM students have opportunities to develop their coding skills using Edison robots. Over the years, in addition to Edison, I have used BeeBot robots, Thymio robots, and the Dash robot in after-school coding clubs as well as summer coding camps. I love the ways EdScratch and the Edison robot challenges foster independent student learning, allow for multiple pathways to a coding challenge, and support an open-ended approach to the development of computational thinking skills.

Shelly Fryer teaching coding to 3rd grade STEM students using Edison Robots

Physical computing is important and powerful. As we find in mathematics and with the importance of manipulatives to help students move move from concrete to abstract thinking, or from abstract to concrete thinking, coding robots can help students make these transitions and connections in powerful ways.

On Friday last week, students in all four of my Science classes explored ways to create music using code. Specifically, their challenge was to code “The Hokey Pokey” and make their Edison robot play the song as well as dance.

Some coding curriculum lessons challenge students to move through a sequential series of puzzles. Those kinds of lessons have value and an important place in student learning, since they “chunk skills” to help build foundational coding abilities. However, I really enjoy using the Scratch coding language for open-ended problem solving, allowing students to find creative coding solutions. These kinds of challenges invite students to creatively experiment and discover different pathways to a coding challenge.

Everyone’s code does NOT look the same! These kinds of coding challenges also work well in collaborative settings. I enjoy asking my students to partner up and work with a classmate. We know collaboration and communication skills are vital to develop in school, and these robotic coding challenges provide great opportunities for students to practice working together in teams.

Coding under the constraints of our class meeting times is also great for the development of “a growth mindset.” This is something we have been talking about and working on for several years at our school. Not all students are able to complete coding challenges fully during our class time. We talk about how “we’re not there YET,” but we will keep iterating and trying to find different solutions that can address our challenge of the day.

I love helping my students develop this rich set of skills during our STEM robotics lessons! If you have not yet checked out Edison Robots, the Scratch programming language, or “EdScratch” (the modified version of Scratch used by Edison) I encourage you to do so! They are wonderful platforms for student learning and computational thinking!

Adventures in Coding Summer Camp

One of my passions is helping students love coding. I love opportunities in the summer to lead camps which allow me to build relationships with students outside my ‘normal’ academic grade level (3rd grade) at Casady School. Last week, I led a camp for rising kindergarten, 1st and 2nd grade students, called “Adventures in Coding” through our “Casady Summer by The Lake” program. The majority of our camp activities were ‘offline,’ using BeeBot robots.

Our final ‘coding adventure’ for the camp was a “Pirate Adventure.” We used the PBS Scratch Jr. app to draw and animate our own pirate scenes. This is a 13 minute video tutorial I created in advance for my students to use in this activity, and I’ve added it to my YouTube playlist of Scratch Junior tutorials.

Coding Edison Robots with EdBlocks

Today in day 2 of our holiday robotics camp for 2nd through 5th graders, students started writing code for their Edison Robots using EdBlocks. Like Scratch Junior, EdBlocks is a simplified, block-based coding language which allows younger students (ages 7-12) to program and control a robot. Yesterday, students started by using Barcode Programming. By advancing to EdBlocks, students were able to create their own programs on iPads and download them to their Edison Robots via an “EdComm cable,” which is an audio cable that sends digital signals similar to the way “old school” modems worked.

One student group used the musical functions in EdBlocks to program the song, “We Wish You a Merry Christmas.” Another group used the “messaging” feature and infrared blocks to send messages between robots, so they could code a ‘dance party.’ I was very proud of all the student groups and the way they demonstrated persistence in problem solving various bugs and challenges in their algorithms.

We started our day with a design challenge, to design and plan a robot which would help our planet and environment. Students used Lego bricks to create a static version of their robot ideas. We then watched a clip from the movie, “Walle,” and did a “See, Think, Wonder” thinking routine. Students wondered about how the trash got so bad in Walle’s world, what happened to all the people as well as the other Walle robots which were not functioning, and thought about feelings and emotions which Walle had working on earth in that situation.

For this day, we used our iPads, and each student was able to build their own code. We shared the Edison Robots, and took turns downloading their programs into the robots. Students worked mostly in self-selected groups. It is interesting to observe the ways students choose to work in our camp, especially since we have a wide range of ages that is different from a “traditional” or regular classroom. I love this multiage aspect of our break camps because it allows students to share their ideas and expertise regardless of their age or grade. In a robotics camp like this, we are all learners and can all be teachers!

In this 2 minute video, one of our third grade girls explains how she coded her Edison robot to pick up trash. This was her first experience with coding and robotics. I was so pleased with how she developed her computational thinking skills and applied her creative imagination!

I’m looking forward to continuing to use our Edison Robots with my 3rd grade STEM students when we get back to class after our holiday break. This robotics camp provided a good opportunity for Michaela Freeland (@_mfreeland) and I to both get a better understanding of how some of our youngest students can both learn and apply their coding skills through robotics!

Winter Break Edison Robotics Camp

This Christmas break, my friend Michaela Freeland (@_mfreeland) and I decided to offer a two day, morning robotics camp for students in our lower and middle divisions. We opened registration up to 2nd through 6th grade students, and ended up with 11 students ranging in age from 7 to 11. 9 are girls and 3 are boys. Today was day 1 of our robotics camp, which we’re holding from 9 am to noon. Last summer we co-led two different robotics camps using Thymio Robots from TechyKids. For our winter break camp, we are using Edison Robots.

We offered this camp for several reasons:

  1. To provide students with opportunities for extended periods of time to play, explore, and engage in “design challenges “
  2. To develop computational thinking skills
  3. To develop collaboration and problem solving skills
  4. To have fun with friends, learning how coding and robotics can be both challenging and fun!

In third grade my students have been coding using both the iPad apps “PBS Scratch Junior” and “Scratch Junior.” This has helped many of them develop a strong foundation in coding. They have told stories, created animations, and made games. I love the creative ways my students apply the ideas we are learning in Science and STEM class, and represent them through coding in Scratch Junior’s “kid-friendly” block-based environment.

Our design challenge for day 1 of our winter break robotics camp was to use at least two of the Edison Robot “pre-programmed” bar codes to navigate a maze. Students had the opportunity to explore five different, pre-programmed bar code programs to introduce them to the possibilities of the Edison robot sensors.

In this 2 minute video, two third graders and one first grader explain how they developed a maze using the “follow a torch/flashlight” and “clap controlled driving” programs.

I am looking forward to seeing what our students will learn and create tomorrow, as we introduce them to the “EdBlocks Programming Language” based on Scratch Junior blocks from MIT. EdBlocks is web-based, so our students will be using iPads and the Safari web browser to create their programs.

Build a Snowman in Scratch JR

This is an 18 minute video tutorial for my 1st and 2nd grade coding club students, demonstrating how to use the draw tools in Scratch Jr (for iPad) and add some basic blocks to make characters (sprites) interact.

This is based on a lesson included in the book, “The Official ScratchJr Book: Help Your Kids Learn to Code” by Marina Umaschi Bers (@marinabers) and Mitch Resnick (@mres).

I added this video tutorial to a YouTube playlist which includes other PBS Scratch Jr. videos I’ve made along with my husband, Wes Fryer (@wfryer).

Commands for our Offline Coding Activities

Last year I taught several coding clubs for elementary students using “regular” Scratch, and those resources are available on my school teacher website: mrsfryer.casady.org/home/scratch.

I will introduce this snowman activity in Scratch Jr. this week to my 1st and 2nd graders. This is our third meeting. In the first two classes, I introduced coding vocabulary and basic movements through several “unplugged” (offline) activities inspired by Code.org’s “CS Fundamentals Unplugged” lessons. I also used these offline coding activities after Christmas break with my 3rd grade language arts students.

If you use this tutorial with your own students, have questions or feedback, please reach out to me on Twitter @sfryer!

Great Week of Coding Camps with Elementary Students

This past week I led two coding camps. Both were 4 day camps, which lasted 3 hours each day. The morning session was for 1st through 3rd graders, and the afternoon session was for 4th and 5th graders. A few of the students had participated in my Spring 2018 after-school Scratch Club, but most were new to coding. In this post I’ll share some of the apps and websites we used, both “plugged” and “unplugged” activities we did, and some of my lessons learned.

 

I’ve shared all the lesson plans I developed in this Google Drive folder.

I drew lessons from both Code.org’s elementary “unplugged” activities (“CS Fundamentals Unplugged”), and from PBSkids Scratch Jr. lessons. Direct links to those websites and resources are included in each lesson plan. All of these lessons and resources are available free.

 

One of the most important elements of the week was developing our coding vocabulary. Algorithm, program, debugging, binary, patterns, looping, repeating, and digital citizenship were all terms and concepts we learned about together. All of these terms came from the Code.org unplugged activities.

I love how coding can open the door to interdisciplinary and cross-curricular connections for students. One example of this was our coding of “The Very Hungry Caterpillar” by Eric Carle. I created this lesson as a remix /  modification of Code.org’s “Happy Maps” unplugged activity lesson model.

We began each coding camp half day for my younger students with an unplugged lesson. This was followed by coding activity stations, which included the Bee-Bot  and Bee-Bot robots, as well as the Osmo apps Coding Awbie and Tangram. Younger students used only iPads for their coding activities.  Each day we included a break with time to go outside for recess, and this provided an important brain break with unstructured play time outside. We also had a snack during our break.

This schedule and lesson sequence allowed students to engage in paired coding, which is strongly encouraged by Code.org in their CS Fundamentals courses. This past spring, I completed the Code.org teacher training with a face-to-face workshop in San Antonio as well as follow-up monthly webinars. Code.org provides free training for teachers who want to learn how to teach and lead coding lessons with their students.

After our break we used PBSkids Scratch Jr. lessons and design challenges. The lessons and videos provided context and inspiration for students to explore the coding blocks and create their own programs.

One of the things I love the most about bringing Scratch Jr. and the Scratch program to my students is how they use these platforms for open ended creativity. They love drawing, recording their voices, and making things disappear! These invitations to open-ended creativity provide a nice balance to the lessons of Code.org. Code.org lessons tend to be more scripted and puzzle oriented. Both are great, and can compliment each other. My students enjoyed both in our coding camps this week.

In the afternoon with my older students, our coding camp time started with open exploration. Just as we know from working with students using math manipulatives, students need opportunities to play and explore independently before participating in guided instruction. This lesson sequence worked well for my students. Instead of promising students “free time” if they finished early, every student had about 30 minutes at the start of our camp each day to play.

After open exploration and play time, each day we completed an “unplugged activity” which focused on vocabulary and building basic coding foundations. One of my favorite lessons was the digital citizenship video and conversation we watched and had our last day together. When I shared this video with my students, I played it from my lesson plan link using SafeYouTube.net, which removes (free) all advertising, comments, and related videos.

After the unplugged activity, our break and snack, we jumped into “Getting Unstuck” coding challenges using Scratch on our Chromebooks. Getting Unstuck is a 21 day challenge currently being facilitated worldwide by the Creative Computing Lab at the Harvard Graduate School of Education.

These challenges were great because they provided simple prompts that introduced my students to different Scratch blocks. We were also able to view many projects created by others, which were both inspiring and simple to remix. I loved the simplicity of these coding challenges! You can check out all of the projects my students created and shared in this Scratch Studio, which is a gallery of projects.

We ended each day by writing in our reflection journals, which is a strategy suggested by Code.org. I printed a Code.org reflection journal for each student, and this proved to be a wonderful way to wrap up our intensive half-days of learning. The reflection below was one of my favorites from the week. “Today I learned it’s ok to remix.” Indeed it is, and the Scratch community provides the perfect environment to learn both that lesson as well as many other important lessons we are emphasizing in our school’s Digital Citizenship initiative.

I recorded some wonderful videos of my coding camp students reading their code, explaining their thinking, and demonstrating their algorithms in action. I will share those here later, after I am able to contact the parents and get their permission to share them publicly.

If any of the ideas, resources or links I’ve mentioned here are helpful or inspiring to you, please share a comment or reach out to me on Twitter @sfryer. I can’t want to continue coding and learning with my students in the school year ahead!