Showing posts with label computer science. Show all posts
Showing posts with label computer science. Show all posts

Monday, June 8, 2026

Introducing Computer Science to Younger Learners with BeeBots


                            From Procedural Writing To Coding

Recently I was visiting my grandson's  first-grade classroom to watch his class present their procedural writing — Julian's book was titled How to Make Scrambled Eggs. After I listened to him read each step I told him that the procedural writing they were doing in class was similar to the coding activities we do during our visits together.  His eyes lit up!

On the way out, I mentioned this to his teacher and she invited me to come back as a special  guest to introduce this idea to both the first grade and second grade classrooms (My grandson, Oliver, is in second grade in the same school).  I was excited to bring one of my STEAM residency

When I was planning the visit,  I followed the same design thinking process I use to customize all my STEAM integrated maker/CS residencies.  I asked the teachers what their students were currently studying. The first graders were exploring change and cycles. The second graders were working on measurement.  I LOVE the challenge of  connecting STEAM and CS to curricular content.  Soon an idea started  buzzing around in my head: bees making honey.

As I was thinking about the change from nectar to honey, it seemed the perfect way to introduce  computer science concepts  to younger learners.  PLUS-- I had access to a fleet of little coding robots that looked like BEES!  The journey from flower to honeycomb gave us a chance to understand how an algorithm is a a series of steps where a bee flies to flowers (inputs), collects nectar (data), returns to the hive (processing), passes it bee-to-bee (transformation), fans it dry in the honeycomb (output). Every step matters. Every step is in order. Change the sequence and there's no honey.  I couldn't wait to get started designing this lesson.    

Why Bee Bots? 

I  have access to a variety of robots that my grandchildren (and other younger learners) love to code, but I decided on the BeeBots for several reasons:

  • Of course, they looked like BEES and provided a strong visual connection to the 'change' process we would explore.
  • There was no need to install apps/software/logins.  As a guest teacher, I didn't have a relationship with the IT staff in the building, nor was a I familiar with the process that would be required. 
  • It reduced the 'screen time' element from the lesson.  We were working with our hands, our  minds, and our manipulatives.  We were NOT introducing TWO new elements (software AND a robot we can code).  
  • The limited time that comes with being a guest teacher, meant that the lesson objectives had to be achievable in a shorter amount of time.  (Of course, I hoped to inspire the teachers to explore additional resources I would leave with them about introducing computer science to younger learners. 

If you're new to BeeBots , I highly recommend watching this model  introductory lesson from Mr. Vacca  introduce Coding with BeeBots to first and second graders (7 minutes) 

Creating the  Read-Aloud and Coding Challenges

I knew I wanted to ground the lesson using a read-aloud. I have been working on designing STEAM and CS residencies. inspired by literature for the past few years, and love to watch students' response to literature.  I prompted my AI assistant with  just the right information from my evolving lesson plan  to come up with a draft story.  

After tweaking the draft story to better fit my lesson design, I added some coding challenges that would engage the students while learning computer science concepts.  When seeking to engage students with hands on projects, I strike for the those projects to be minds-on experiences where the learning takes place -- not just dessert projects.  

StoryHere is read-aloud  and coding challenges written for this lesson.Buzz and the Honey Journey,

Every page has a coding challenge embedded right in it.  The goal is for the story to be read aloud, one page at a time, then to have the students experience the coding challenge --not as a worksheet, but as as a puzzle to solve with their robots, right then and there, on a story map spread out on the floor in front of them.

How to integrate coding challenges with the story 

Example from Page 1: Buzz wakes up and wiggles her wings. Challenge: Can you make your BeeBot wiggle — without moving forward? (Students use creative problem solving to discover that left-turn + right-turn = a wiggle.  


Creating the Story Map



creating story map

Story Map PDF
 

I often create a grid  using blue painters tape on the classroom floor to use with Bee-Bots.  But because this was not my classroom and I had limited time 'in the classroom' I created a half dozen story maps using poster board.  First I drew a 3×4 grid where each square is exactly 6 inches, which is exactly one BeeBot step. I pasted story images in each cell: the hive, the old oak tree, the babbling brook, the sunflower patch,  the lavender and clover, the pollen field, the marigold garden, additional bees, and the honeycomb.

The story Map

A 4×3 grid of 6 inch squares fits perfectly on one piece of standard poster board.  You can use this PDF to help you construct the story map-- you don't have to lay out the images in the same order. Also,  feel free to resize as desired. Make sure to paste the image corners down flat. Even a slightly lifted corner will catch the BeeBot's wheels and throw off the whole path. 



Introducing computer science to younger learners

I started the lesson by introducing the concept of computer scientist as a career. I asked  students: "Does anyone know what a computer scientist does?. We spent some time talking about ways that computer scientist influence our lives  - from video games to practical inventions  we use every day. 

Research tells us that foundational ideas about who belongs in certain careers begin forming around ages 7 and 8. If students — especially girls and students from underrepresented communities — have never been invited to see themselves as coders, that window begins to close before we even know it was open. A single hour with a BeeBot won't change everything. But it can plant a seed. It can let a child hold a robot and think: I did that. I made it go there. I'm a programmer. This is a career that people like me can choose. 

Then I had  students try to "program their teacher" — She stood in the middle of the classroom and I asked them to give her directions to reach the tissue box. Just like a robot, she followed their instructions literally. When they said "go forward," she went forward. When they forgot to tell her to turn, she  walked in the wrong direction. They learned immediately: computers do exactly what you say, not what you mean. This started to really understand the computer science concept of  programming or coding. 


Introducing the robots

It was now time to introduce the BeeBot itself — letting each pair hold one, count its buttons, explore its underside. We talked about safety rules the same way we talk about rules for any tool in a makerspace: " these rules keep the robot safe, not just you. The most important: never pull the robot backward. Lift it instead." (If you have limited Bee-Bots, you can simply have students take turns being the 'student demonstrator' as you lead the class through the lesson, and then use your Bee Bots as stations.


Before we started the read-aloud of our story, I let the students freely explore how they might get their robot to reach the tissue box (which was still on the floor of their classroom).  This quickly turned into a chaotic huddle of students and their robots as they approached the tissue box, but it also filled the room with exciting energy. 



To transition to our next activity, I selected a student to demonstrate how to "code" the robot more intentionally and think ahead of the task you wanted the robot to complete. 


The Read-Aloud and Coding Challenge

As we prepared for the Read-Aloud,  I distributed a poster board/story map to each group of 4 students.   Two pairs of students (previously assigned by their teacher) worked on each map simultaneously — one student physically coded the robot, while the other planned and  verbally directed the next move.  I reminded the students to switch roles frequently. This kept everyone engaged and gave each student meaningful time with the robot.



Before we started our read-aloud, we practiced a classroom signal for each student to STOP, TURN OFF the ROBOT, and LISTEN for the next instruction.   We practiced this a few times, since I knew that transitioning from "freely coding your robot" to LISTENING to the next page in the read-aloud might the tricky part of my lesson design. 

Introducing CS Concepts and Vocabulary 

I was intentional about introducing computer science vocabulary throughout — but always anchored to what students were already doing. Here's how some CS concept appeared naturally in the lesson:

Algorithm sounds like a big word, but the students loved saying it and quickly understood it to mean a series of steps that you can repeat to achieve a tasks. 

Sequencing was everywhere. Every time a student planned a path from one story stop to another, they were sequencing. I kept returning to the procedural writing connection: "You know how Julian's scrambled eggs recipe wouldn't work if you cracked the eggs after you cooked them? Same thing here. Order matters."

Debugging became the most powerful mindset shift of the day. When a BeeBot veered off  the poster board instead of toward the sunflower, I didn't let students feel like they'd failed. I said: "You just found a bug. That means you're a real programmer." By the end of the session, students were using the word "debug" naturally  instead of 'its not working."  

With the help of my AI assistance, I created some additional resources to help both teachers and students gain confidence with Computer Science Concepts and Vocabulary.  You might, also,  want to experiment with a Bee-Bot Emulator on our interactive white board as an additional station.

CS Concepts and Vocabulary Cards can be used by both teachers and students to gain confidence with computer science.


Adding measurement skills

For second graders, the BeeBot provided an opportunity to practice using the measurement skills they had been learning.  Make sure to have rulers or measuring tapes handy as you ask questions like:   "How far does the robot move when you code it to GO forward.   How wide is each square on the storymap? "  After completing a path, students counted how many squares their robot had traveled, then measured and calculated the total distance in inches. Some pairs compared two different routes between the same stops and asked: which is shorter?




What I'd Do Again (And What I'd Tweak)


Start with the body, not the robot.

Programming the teacher first grounded the abstract idea of "giving a machine instructions" in something students already understood from their own bodies and daily language.

Free exploration before structure.

Letting students play freely with the BeeBot before the story began — "can you get it to the tissue box?" — built confidence that made the structured coding activity feel safe to attempt.

Use a student to model, not just the teacher.

Following the Mr. Vacca model lesson, I asked a student (my grandson Julian, who'd been practicing) to demonstrate coding the BeeBot for his classmates. Peer modeling worked better than I expected. 

Using Coding  planning worksheets  

I photocopied coding planning worksheets for each students, but ended up not using them during our limited time together.  I decided to not interrupt the exploratory flow of the creative problem solving that accompanied each coding challenge.  Instead I recommend that the classroom teacher use these planning sheets  during a followup activity to review, reinforce, and reflect the computational thinking process that the students experienced.  Not using the planning sheets on the first day is more inline with constructivist learning. However, I do feel that using them during a follow up session provides our younger learners  an opportunity for deeper learning and metacognition. 

Everything You Need to Try This

I've packaged everything from this lesson so another teacher can pick it up and run with it. You don't need to be a CS expert. You don't need to have done this before. You need a BeeBot (or two), a piece of poster board, and a desire to let your students explore the joy of computational thinking. 

 Lesson Resources


  • Buzz and the Honey Journey — Read-Aloud StoryAn illustrated read-aloud with a coding challenge embedded on every page. Print as a booklet or display on a screen.

  • BeeBot Story Map — 3×4 Grid (Poster Board)A landscape-format map with 5 numbered story stops, decorative landmarks, coordinate labels, a legend, and a BeeBot button reference. Print landscape, mount on poster board. Each cell = 6 inches.

  • BeeBot Coding Cards — Full SetSequencing, loop, debug, algorithm, event, and decision cards — each tied to the honey journey story. Includes a teacher guide explaining how and when to use each card type, plus key discussion questions.

  • 90-Minute Lesson Plan Lesson Sequence, timeline, objectives, NGSS + ISTE standards alignment, vocabulary table with kid-friendly definitions, differentiation strategies, and formative assessment prompts.

🐝 Thank you to Ms. Manolis and Ms. Gargiulo and their first and second graders in NYC public schools for iniviting me into their classroom to introduce computer science to them.

You don't need to be a computer science teacher to teach computer science. You just need a story worth following, a robot worth coding, and the belief that every child in your classroom is already a computational thinker — they just haven't been told yet.


An additional thanks to Mr. Flint from Charlotte Elementary School for loaning us some additional Beebots.


Tuesday, May 13, 2025

Coding Robots for Creative Expression

Coding Robots for Creative Expression

When I say "robot," what image comes to mind?

Take a moment to picture a robot and what it's doing. 


Is it assembling parts in a factory? Perhaps it's vacuuming floors or delivering packages? Maybe it's even performing surgery or exploring Mars?

If you imagined a robot engaged in a task focused on efficiency, precision, or problem-solving, you're not alone. The vast majority of people envision robots solving problems. They think of robots as machines designed to make our lives easier by taking on repetitive, dangerous, or complex tasks.

Few people envision robots who can dance, create art, or express emotions?  But robots today are being used for creative expression. Check out this robot dancer and robot artist. 






By tweaking the prompts we use to introduce computer science to include creative computing challenges, we can engage a broader and more inclusive audience with computer science  education. 



When we integrate creative expression into computer science education, we not only teach technical skills but also foster innovation, artistic thinking, and cross-disciplinary connections.   This is one of the reasons I fell in love with the Finch Robot, 




If you are an educator  looking to bring creativity to computer science,
let me introduce you to  the Finch Robot.  


The Finch Robot was developed at Carnegie Mellon University's CREATE Lab, specifically designed to make computer science education more engaging and interactive. It's a small, two-wheeled robot with bird-like features that can be programmed by beginners to perform various actions, like talking, dancing, or drawing.   But don't be fooled by it's cuteness!  The Finch Robot can be used with students are young as Kindergarten, but can also be used to engage advanced high school students learning object oriented languages such as Java.    

How can ONE adorable robot deliver on this promise? 

It does this by offering multiple platforms for coding it on all types of devices ranging from tablets to chromebooks to laptop computers.   How you use the Finch robot depends on your educational goals and the age of your students.  



For my UVM computer science class project, I explored  5 different ways to  introduce age appropriate computer science concepts using the Finch Robot.

  • Kindergarten to 2nd Grade: Block-based FinchBlox introduces computational thinking concepts through simple visual programming
  • Upper Elementary: Web-based Snap! platform builds on block programming with more advanced capabilities
  • Middle School: MakeCode provides a hybrid experience, letting students transition between blocks and text-based JavaScript as they build confidence
  • High School: Text-based Python programming offers robust capabilities for more complex projects
  • Advanced AP Computer Science: Java programming introducing students to object oriented programming


Each of the Lessons below  uses the same Essential question. 



Each of the Lessons starts with the same "Hook". or Inspire Videos of robots engaging in creative expression.   Each of the Lessons below includes a couple skill builders that guide you towards the initial setup of the platform most appropriate for each level of students.  In each of the lesson is a skillbuilder to teach you how to  code your robot's movement as well as the LED lights in the robots tail and beak.  The skillbuilder is unique to the platform that is best suited for students of different ages. 

Lesson 1


           
Finch Blox Slides 

Introducing Computer Science to Younger Learners using Finch robot & FinchBlox


CS Lesson Plan  FinchBlox with younger learners



Lesson 2


Finch  Intro to Blocked Based with Snap Slides 

Introducing Computer Science to Upper Elementary using Finch robot and Block based Coding via the SNAP Plastform.

 CS Lesson Plan  Snap



Lesson 3 



Finch Using MakeCode JavaScript Slides

Introducing Computer Science to Middle School students using Finch robot and MakeCode (Block Based and Javascript)


MakeCode/JavaScript Lesson Plan




Lesson 4


Finch Using Python Slides

Introducing Computer Science to High School students using Finch robot & Python

Python Lesson Plan


Lesson 5 


Finch With Java Slides 

Introducing Object Oriented Computer Science to Advanced High School/ College students using Finch robot & Java

Java Lesson Plan



Following the initial skillbuilders, the lessons all end with the same Paired Programming Challenge, where students can use there new skills and CS platform to complete one of the three challenges below.












Even though the beginning "inspiration'. and the ending "Challenge" are the same for each lesson I created, the "how to Skillbuilders are specific to the CS educational goals appropriate for that level. on the different platform I recommend for that level sudents. 

There is a big difference between how a Kindergarten students interacts with Finch and a high school students learning object oriented programming using Java.






No matter where your students are in their computer science journey—from beginners taking their first steps into coding to advanced learners preparing for computer science careers—I believe that the Finch Robot provides an engaging platform for learning  to code a robot for creative expression.

If you'd like to learn more register for CSTA Vermont's Spring Event and join  Joe Bertellini and I as we introduce you to teaching computer science concepts using the Finch robot.  

Join CSTA Vermont members for their  annual Spring Event

Click here for More Info and Registration LINK

Announcement


Thursday, February 6, 2025

CS Inspired by Literature #WAOTL Challenge 5 - Adding Dialogue to your Scratch Project

 In my recent posts, I introduced a #WAOTL series where you and your students experience computer science by using Scratch to create and code an interactive experience with bioluminescent characters from the children's book "Whose Afraid of the Light" by Anna McGregor.  

Here are the posts in the series so far 

Today's post will introduce Challenge 5 where we will learn to add dialogue to our interactive experience.

By completing this challenge you will  create confidence with code using the following blocks of code: 

Let's add some dialogue to our experience.  We can make the dialogue displayed in text form whenever you click on the character.   

Select one of the character sprites in your project, then drag out the 
 "When this sprite is clicked block."  
Next, drag a purple "SAY" block. 



After you snap these two together, add text to let your character introduce themselves with an interesting fact.  
Have students reread the book and look at the appendix of the book for facts that can help them understand the role of bioluminescence in your character.

Next, decide how long you should display the “speech bubble”.

What if you want to also add a ‘real voice” along with the text dialogue when you click on your character. 

Use what you learned in the last challenge to record you voice and add a Start Sound block.  

Where would you put that that code block so that you could read AND listen to the sea character introduce itself when you click on it.? 

As I was playing with dialogue,  I decided that I wanted the characters to show when they talked.

I added a Show Costume block, but got  some unpredictable results. 

After some troubleshooting, I found a solution that worked. I knew that the costume always showed up when the diver was touching the sprite.  What if I used the GO TO block to move the character to the diver?  That worked well, and also added a fun element to my project.


Note: There are additional solutions that would require more advanced skills. I chose not to use those to stay within the skills that 4th grade students might have after completing these challenges.

Did you know that Scratch also offers some additional experimental code blocks including a Text to Speech Extension?  If you have extra time, you might want to explore this, by adding the extension, and dragging over the "speak" blocks  to replace the START SOUND block. 







 

Here is a partial solution of Challenge 5 to explore. . https://scratch.mit.edu/projects/1097888175/

I’ve coded only the Vampire Squid  to have speak when you click in it. Try adding dialogue boxes to the other characters.

 A nice thing about this story is that there are 4 characters giving the students a chance to repeat the code they just learned 3 more times.


GROUP PROJECT:  If you want students to work in groups, you can ask each student to  code the same story with only ONE character.   Then export all the characters into ONE project.  The code will also export with the character. 

To export a sprite or a stage, simply Right click in the sprite collection area of your project.   This could allow students to work in groups to create and code different parts of a project.  They could them email or upload their sprite to a folder for ONE person to collect them all and assemble them into one project. 




Challlenge 5 will be the last in this short beginning Coding Who's Afraid of the Light Series series, but we are working on some BONUS Challenges were we will use Circuits and Circuits Boards such as Makey Makey, Fun Key, and Micro:bits that will be released later this month.   Stay tuned. 

You can subscribe to this blog to get notified when the next challenge is posted.

Originally created for  CSTA-Vermont during Computer Science Education Week 2024

CS Inspired by Literature © 2024 by Lucie deLaBruere is licensed under CC BY-NC-SA 4.0