Computational Thinking

I’m redesigning a coding unit in my New York Academy of Sciences STEM Education in the 21st century online course. I’m building off my Trick or Treat project and the Math Quiz game project that I have taught in the past, infusing the lessons with essential STEM skills like problem solving, critical thinking, and creativity.  The course is really helping me think about my learning objectives for the students. It is also helping me understand the importance of this types of activities – beyond that they are engaging for students.

Concurrent to the course, I’m actually running the unit in two math classes, co-teaching with the classroom teacher so I am able to fine tune the lessons and reflect on what went well or not so well.  Last week we finished up the Trick or Treat project (lesson 1 and 2) just before Halloween.  Here is the project instructions document: Public Trick or Treat instructions. One teacher expressed how organized the project was and how the handout made it easy for her to help students. (All this planning is paying off ) I also had a sample project that I modeled with and had the students brainstorm ideas for different actions when “trick” or when “treat” was selected.

I changed my handout for the next lesson when I heard that students felt they were getting out of learning because it was so much fun.  I wanted to make their learning visible to them.  They needed to know how much computational concepts and thinking they were actually doing. I came across the Creative Computing Curriculum Appendix on Computational Thinking and crafted this reflection page to help my students see what they were learning: Public Scratch: Reflecting on Learning  I went over all the concepts and we talked about how we had already used some of them and some we would use later.  We talked about the different practices, especially testing and debugging.  I was impressed with reflections they did.  I can see that they can identify the concepts and practices they are using as they learn to code.

Screen Shot 2019-11-03 at 6.20.13 PM

4th grader’s reflection

In addition, we spent time on testing and debugging.  I used this project to model how testing and debugging work (I even told the origin story of debugging) and I had a worksheet for them to fill out while testing.

Screen Shot 2019-11-03 at 6.22.55 PM

Reflection on revising

Screen Shot 2019-11-03 at 6.23.19 PM

This student knows how if-then-else blocks work!

Screen Shot 2019-11-03 at 6.24.20 PM

For 3rd grade I simplified it a bit, and still got awesomeness.

 

Screen Shot 2019-11-03 at 6.41.36 PM

 https://scratch.mit.edu/projects/340589577/

(I’m going to just hit send so this doesn’t end up like the numerous other draft posts I’ve written lately.)

New Code Club Starts

I am collaborating with the children’s librarian in my city to run a monthly code club for kids 8-12.  Our first meeting was last Monday.  We had six kids show up.  I knew three of them from two years ago when they were in my after-school 4th grade Code Club.  It was great to see them again.  The other three were mostly new to Scratch.  One of the coder’s grandmother stayed for the session and we set her up to play and learn Scratch, too, and she jumped right in a made a Chatbot project.

Screen Shot 2017-10-08 at 6.10.14 PM

I knew we were going to be using the library’s Chromebooks, so I set up a teacher account and a class along with some student accounts.  I figured a few of the coders might have a Scratch account already.  One said he did but didn’t remember it.  They all ended up using one of the class accounts.   That made it easy for sharing their projects at the end of the session.

Chatbot is one of my favorite projects from Code Club World.  It requires only one Sprite and Stage, is interactive, and the projects can become very creative very quickly.   It introduces the conditional block “if then, else”, a powerful, useful coding block for decision making.  It also introduces the ask-answer block pair as a quick way to introduce interactivity. The expert coders sort of remembered Chatbot but were very happy to revisit it.

By the end of the session, everyone was successful in setting up a Chatbot and coding an “if then, else” block at the least.  Some added more complexity with movements and costume changes. It was fun to see the different, creative takes on Chatbot.  The coders shared their projects, even though some were not complete and we played them all through.  I put them in our October project studio and liked them all.

Screen Shot 2017-10-08 at 6.42.18 PM.png

I thought the English/Spanish Chatbot project was a great idea – it could be a cool way to show what you’ve learned from Spanish class.

We asked the club members what types of projects they wanted to work on in future meetings.  I heard ideas ranging from Ghost Busters, Pong, anything with horses, to a platform game. Good ideas!  We are hoping more kids sign up and we can grow the club a bit.

It was great to be back working with Scratchers.  My after-school Code Club starts up next week. More new Scratchers.

Trick or Treat

Today was the second Scratch session with a 3rd grade math class and it was a blast.  Last week I introduced Scratch to them and they also tried out the Etch-a-sketch project from Simon Haughton’s Scratch Progamming lessons.   Some of them spent some time during the week playing with Scratch during free time in math class.

This week I wanted to introduce the “ask and answer” blocks and “if-then-else” so I came up with this Trick or Treat lesson, just in time for Halloween.

First I verbally asked them “Trick or Treat?” Most of them said, “treat” of course.  Then we brainstormed what a “treat” would look like in Scratch – do something (animation), change the costume, say something, play a sound.  They of course had big ideas like candy falling from the sky or the Sprite eating a pile of candy.  I tried to translate that into more programable language.  Then we brainstormed what a “trick” would look like.

I showed them my sample project where a ghost asks “Trick or Treat” and if you say “treat” he turns into a bowl of cheesepuffs otherwise he turns into a scary ghost.  I also had different sounds and a bit of animation (the Sprite turns and grows).

Next it was their turn. I directed them to picked a background for the stage and a Sprite.  Their choice.  We had a lot of ghost and ghouls, but quite a variety of backgrounds.

Screen Shot 2015-10-27 at 9.25.50 PM

Then they asked the question “Trick or Treat?” and set up the answer to equal trick or treat.  Also their choice.Screen Shot 2015-10-27 at 9.28.58 PM

We tested it and they noted it didn’t do anything. Well, not yet.  So we added a “say” block for each condition depending on if what they were looking for, trick or treat, and the opposite in the else clause.

Then I had them add two sounds, one for each condition.  In hindsight, I should have saved the sounds for last as noise level went up both from excitement and the random sounds playing in the room.

Screen Shot 2015-10-27 at 9.08.07 PM

Finally we added some costumes to the Sprite, one for each condition.  (There was a bit of confusion here because we weren’t adding more Sprites but costumes to our Sprite.)

Screen Shot 2015-10-27 at 9.41.58 PM

That was it, with just enough time to share their work. Their math teacher suggested this and it turned out to be a great idea. The projects were saved in a shared directory and all the laptops were closed and I displayed each project up on the screen for all to enjoy.  When it was their turn, I asked the project creator if they wanted me to answer “trick” or “treat” first, then played both cases for all their classmates to see. Screen Shot 2015-10-27 at 9.21.32 PM

I’m very pleased with how this project went with this group of 3rd graders.  I would definitely do it again- just have them add sound last.

Chatbot Decisions

This week both code clubs did the same project – Code Club World’s Chatbot. I like this one because it is not a game and students can be very creative at asking questions for the user to answer.  My goal was for them to learn about 1) user input, 2) if-then-else and 3) operators. That’s a lot. At a minimum, I think most everyone was able to use the “ask and answer” blocks, the “join” block and try one “if-then-else” block.

Screen Shot 2015-10-25 at 7.45.32 AMScreen Shot 2015-10-25 at 8.38.11 AM

Some were able to add animations at the end which I thought was pretty cool.  Some went back to their previous maze game and added some talking.  Also cool.

Screen Shot 2015-10-25 at 7.09.39 AM Screen Shot 2015-10-25 at 7.08.51 AM

The Wednesday club wore out my high school student with their needs, despite my call for them to ask a neighbor for help first before you ask an adult.Screen Shot 2015-10-25 at 7.50.35 AM

Thursday’s club figured out that if the answer is not typed exactly, then the “else” clause runs.  So if the user types “sure” instead of “yes” the program will think it is wrong.  One student had an extra space in the operator clause, as in answer = “yes “.  That bug took a bit to fix.  Another student was looking for a really big number:

Screen Shot 2015-10-25 at 7.47.21 AM

One of the tricky parts to this lesson is a defining variable and setting the answer to it. The students can follow the directions, but I don’t know that they understand why they are doing that or what it going on.  I have to remember these are pre-pre-algebra students.  Still, they will most likely want to keep track of a score or timer, so for now, they will try it and later we will come back to this concept when they need it in their projects.Screen Shot 2015-10-25 at 7.49.59 AM

While I love the creativity and extensions this project allows for, you do have to set expectations for appropriateness.  I had to ask a few students to change their responses to the questions.  I like to go around and test out their programs, putting my name in as the answer to “What’s your name?”.  When the response is “That’s a dumb name” or something equally as inappropriate, I get a bit disappointed and tell them to change it to something appropriate.  One student responded, “I didn’t think you’d play the game.” He obviously knew he was being inappropriate but was, at least, embarrassed by it.

Here’s one more creative take on Chatbot:Screen Shot 2015-10-25 at 7.15.26 AM Screen Shot 2015-10-25 at 7.15.16 AM