LMS Winter Carnival

Last week I ran two coding sessions at the middle school for their Winter Carnival.  There are a wide variety of activities offered for the 5th- to 8th-grade students during the morning, divided into two 1.5 hours sessions. Options ranged from skiing, dancing, and ping-pong, to cookie decorating, tic-tac-toe, and D&D.  I was invited to offer Scratch coding.

My activity, Coding/Scratch, had this description: “Students will have the option to create a game, animation or pursue a passion project of their choice using Scratch 3.0 coding environment.”

Despite the unlimited options in the description, I wanted to offer some project guidance as I didn’t know the coding experience of those who would sign up. I decided on three projects from Code Club World that in my experience offer students the greatest creative choice coupled with step-by-step instructions.  The first option was Chatbot.  I’ve discussed how much I like this project before and with the added text-to-speech options in Scratch 3.0, I knew this would be a hit. The second option was a “clicker game” presented with Code Club World’s Ghostbusters project.  The third project was the “side-scrolling platform game” Flappy Parrot from Code Club World.  I feel any of these three projects can be accomplished in 1.5-hours with this age group.

In preparation, I went through and created starter versions of these projects. I also set up a Scratch studio for everyone to share their projects. Once the students were logged into Scratch (some had to make their own, new accounts), I invited them to be curators so they could add their projects to our group studio. This part required a bit of administrative time but it is not difficult and works well for everyone to have a single place to go to play each other’s projects. I feel it is important to carve out time to share and showcase what everyone has accomplished, knowing that we all had a limited amount of time and that the projects aren’t perfect or even finished.

About ten students signed up for each session but only one girl in each session.  One of the math teachers joined me- she is eager to learn Scratch and we work well together.  I knew more than half of the students and some of them were with me in past Code Clubs. I think the students had a good time. I definitely feel like we supported their ideas and creativity. I’d love to get feedback from them. I shared the project studio with the school administrators and they thanked me for participating.

Screen Shot 2019-02-22 at 3.13.51 PM

Chungus Run – a creative Flappy Parrot game – good instructions, too 

Some notes from the sessions:

  • Time management is key with short sessions – I posted our schedule – Intro 10min/ Plan 10min/ Code 55min/ Share 15min
  • The project guides were helpful even if only to get them started before they went off on coding tangents.
  • These students showed creative, flexible thinking. Scratch supported their creativity by making coding flexible to their ideas.
  • It is difficult to share something you know is incomplete.  I announced a time check at 15 minutes before we wanted to share, so no one was caught unaware.
Screen Shot 2019-02-22 at 3.17.30 PM

Fishie Click game – former 4th grade Code Club member

Coding projects are like art – they are never really “finished” or “perfect”.  They are “done” when you decide to stop working on them. – I said this to someone who was bemoaning the end of the coding time and another student laughed.  She clarified that she was an artist and understood that fact very well.

Screen Shot 2019-02-22 at 3.16.38 PM

The Majestic Bird – Well done and so annoying!

 

Getting Them Ready

We’re already half-way through the fall Code Club session for 4th graders. Now is the time when they start working on the design of their own project.  Having the opportunity to create their own game is pretty much why they come. My job is to get them ready to be successful in this venture.  To this end, I try to present lessons that help them learn programming concepts that they will want to use in their game design.

After eight Showcases and 108 projects, I feel have an idea of the essential programming concepts students will be using in the games students like to make.  We move fast and don’t get the chance to do more than introduce these concepts – it’s more learning to code than learning computer science.  It’s a start.

Screen Shot 2017-11-16 at 8.06.44 PM

Get the taco to the Scratch cat

Here’s what they will want –  A Sprite they can control with arrow keys to move around their game.  (The maze game).  A Sprite that can chase after them (Cat and Mouse).  Both of these projects introduce sensing as well  – in the maze game you are forever checking if you touch the sides and in both, you are forever checking if you won.

Screen Shot 2017-11-16 at 8.08.34 PM

You’re the banana. Don’t let the monkey eat you.

They might want to keep track of a score or set a time limit.  (Ghostbusters)

Screen Shot 2017-11-16 at 8.01.13 PM

Click on the Sprites when they appear to get points.

Screen Shot 2017-11-17 at 5.25.16 AM.png

From experience, some of them will want a game with gravity. It’s a concept that I don’t usually spend any time on but this year, from talking with the students, I could tell there will be some platform games in the works.

Screen Shot 2017-11-16 at 7.56.40 PM

I used Code Club World’s Flappy Parrot project to introduce gravity.  It also reveals the animation trick of moving the background while the main character stays in the middle.

I wasn’t sure if they would be able to handle this project, but they worked through it well and I felt they were successful.

Screen Shot 2017-11-16 at 7.57.42 PM

Flappy robot costumes – hand drawn wings

This last week we did the virtual pet project from the Scratch Tips.  I printed some of the Scratch cards of the project as well.  Virtual pet introduces broadcast & receive which is an important but difficult concept.  Broadcast & receive is powerful but requires planning and keeping track of your Sprites. This level of thinking is just developing for them.  They struggled with broadcast and receive, but mostly with the motion blocks because they were modifying the placement of Sprites to fit their creative take on a virtual pet but couldn’t translate that to adjust the go-to blocks properly so they got some strange movements they didn’t understand.

All in all, I like this progression of projects: 1) Maze game, 2) Felix & Herbert, 3) Ghostbusters, 4) Flappy Parrot, 5) Virtual Pet. It presents a variety of game types and hits some good basic concepts.  It leaves out a few of my favorites, though, like Chatbot. I also feel they need more basic coordinate knowledge (move, go to, glide).

(The problem with not blogging regularly is that when you do, you have too much to say and the blog gets really long, for which I apologize.)

Random Coordinates with Ghostbusters

I must say I appreciate the wide variety of Code Club World’s Scratch projects that are out there. Last week both of my 4th grader Code Club students worked on Ghostbusters (and just before Halloween, too). The Ghostbusters project allowed me to talk about the Stage’s coordinate grid and introduce the Pick random block.  Two important concepts in Scratch programming and making interesting games.grid

It is also a fun game to code.  This version is an improvement over last year’s Ghostbusters project that we did. I compared the two and they are different.  The algorithm for appearing in random spots on the grid was simple to understand and easy to code, so the students saw results sooner.  That left more time to customize. Customizing is what these coders do best.

Screen Shot 2015-11-05 at 7.20.06 PM

Screen Shot 2015-11-05 at 7.47.55 PM

This ghoul is very hard to catch but does it actually go back in time?

The game also implements scoring and timers. Students were able to customize these as well, adding additional Sprites and varying the amount of time they show on the screen and the number of points you get when you click on them.

Screen Shot 2015-11-05 at 8.00.07 PM

Want big scores? Try this game.

One student wanted to increase the speed of the timer when certain sprites were clicked.  That required a different way implementing the timer.  I knew it could be done that way but I couldn’t think of how on the spot.  Now I easily come up with the algorithm- set up a speed variable, change the speed when Sprites were clicked, decrease the time by speed amount.Screen Shot 2015-11-05 at 8.14.31 PM

Sometimes the choice of background can change the difficulty of the game.  The project gives other ideas to change the difficulty as well.

Screen Shot 2015-11-05 at 7.59.09 PM

The background makes the black bat very tricky to click on.

The speed at which these students pick up the ideas from these projects and incorporate their own ideas and creativity amazes me.  In going over their projects for this blog, I realize I didn’t see all the coding that was going on at the time.  I’m impressed.

Screen Shot 2015-11-05 at 7.57.10 PM Screen Shot 2015-11-05 at 7.56.40 PM

The only sour note was some behavior issues that came up.  That’s disappointing.  It’s okay to have fun but not at the expense of other people’s learning.  Those kind of disruptions are not okay.

There’s no Code Club this week or next due to school schedules and holidays. I heard a lot of “I wish we had Code Club today” and even a “I wish Code Club was everyday!”

Something Strange in the Neighborhood

Who ya gonna call? This week we tackled the Ghostbusters game from Code Club level 1 projects.  I slated it for this week since we met just before Halloween.  I gave them a bit of leeway on following the project to the letter and let them pick any ghost sprite, and use any sound. Most of the issues we encountered this time were same as the ones we encountered last week – generally there were issues locating specific code blocks and difficulties following directions specifically enough for the game to work.

Ghostbusters Scratch

But they pick this stuff up so fast and make sense of it, too.  It is amazing.  Some of them are starting to know where they can make their own changes without affecting the game play or where their changes actually can make the game better.

My plan for Code Club this week was to start off reflecting on last week’s learning project and see how everyone felt Code Club was going. As much as I understand the importance of reflection, I don’t always take the time to let the students reflect. This week, though, I wanted to hear their thoughts on how the first learning project went. Unfortunately, reflection time at the beginning, during snack, was derailed a bit by the general, insuppressible excitement level of the students, something that I had been noticing all day – probably due to a trifecta of events this week: Open House last night, indoor recess due to rain that day, and the anticipation of Halloween on Friday.  There was nothing to do but move on to the main event: Coding!

I felt a bit more prepared this time as I had just walked through the Ghostbuster project with a couple of students earlier during indoor recess.  It really helps to actually work your way through a project, or help someone work their way through one. It is a different level of understanding than just reading through it. (Shocker)

When we came to the part to add a sound to the game when you score a point, I did fuel the fire of their enthusiasm by bringing out two microphones and letting the students record their own sounds. Recording from microphones worked surprisingly well despite the noise level of 22 students working in Scratch in an after-school setting.

Screen Shot 2014-10-30 at 10.37.02 PM

For their final independent project, I will want them to create all of their own sounds, sprites and backgrounds.  I may have to scrounge up another microphone or create a schedule for their use.

Boy was it hard to stop at 4:15