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.)

Play Testing

Last week in Code Club we did the project Space Junk and it was a hit.

screen-shot-2016-11-15-at-6-06-55-pm

Space Junk project with pulse shooting wand

My goals were for them to get the arrow keys working, learn about importing/exporting Sprites and spend some time checking out other people’s games.  If they were able to implement a growing planet or the timer, that was super.

Soon they will be starting their own projects, possibly in pairs, so I wanted to introduce the idea of sharing assets – like a Sprite – between two coders. When we discuss pair programming and they have the design review they will need to decide who will do which part and learning about exporting/importing Sprites will help.  I had a space cat Sprite from the Super Scratch Coding project as well as the Angry Bird and Angry Bird Pig from the Angry Bird lesson plans from Simon Haughton’s site.  These files were in the shared Code Club folder and I showed them how to import them.  We had some technical trouble with this.  Some of them were successful, then suddenly the Sprite could not be imported.  I couldn’t figure out if someone “saved” over the file inadvertently or that too many people were accessing the file and that somehow made it unusable by others.  It happened on both days.  I was prepared the second day and also had the files on a USB drive.

screen-shot-2016-11-15-at-5-56-36-pm

Angry Birds Space Adventure?

They did like the Angry Bird assets.  And even customized them.screen-shot-2016-11-15-at-6-00-41-pm

I made it a point in the last 15 minutes to ask who had a game I could test out. This took me out of troubleshooting mode and let them share with me their cool, silly, challenging, still in progress games. That’s part of being a club.

I also want to say that my volunteers are great and I couldn’t do this without their help!

Friends, Fun & Scratch

Yesterday was the first meeting of my 5th after school Code Club session.  My 5th in 2 years and I was in a really great mood afterward, so I must still really like doing this.

I think the students had a good time and enjoyed themselves.  A number of them were happy just to be sitting next to a friend and doing Scratch.

Screen Shot 2016-03-03 at 8.14.20 PM

We have a mixture of 4th graders from two schools so we started out by stating our names and sharing our favorite computer or video game.  I expected to hear more Minecraft than anything else, but there were a wide variety of games shared, some that I hadn’t heard before.  I may have to check them out.

The maze project turned out to be pretty challenging to the new-to-Scratch students.  In the end, if they were able to add the arrow key controls to their Sprite, I considered that a success.

Screen Shot 2016-03-03 at 8.12.56 PM

Maze game by a first time Scratcher.

 

The students who had previous experience with this project were game to try it again, which makes me enthusiastic about this bunch of coders.

The Maze of Death!!!!! project is really impressive.  The lightning is animated.  The student added a score variable.  He’s even set up his initial conditions. All in one hour.  I’m so proud.

I’m looking for a new high school volunteer.  I miss having that extra person to field code issues and check in on students.

I think we’ll try the Pong game next week.

 

A-mazing Fresh Start

For the first week of the 2nd session of Code Club, I asked that only the new members come so that we could go over the basics of Scratch. It would help to orient the new coders to Scratch if the “experts” weren’t there.  I planned on going over material the veteran coders had already learned, so they wouldn’t miss anything and the potential for them to distract the new Scratchers would be eliminated.

I thought I would start by teaching the new coders how to make a maze game on day one. It was one of the favorite types of games from the first session.  You learn the commands to control a Sprite using arrow keys and how to check if the Sprite is touching the walls.

Polar Adventure from Showcase #1

Polar Adventure, a maze game, from Showcase #1

Perhaps it was a bit adventurous for the very first time, but with a smaller group I thought Alex, my high school volunteer, and I could handle it.

Dawn of the Day,  maze-type game from Showcase #1

Dawn of the Day, maze-type game from Showcase #1

I also decided to create the instruction sheet myself.  Inspired by Code Club World project resources and Simon Haughton’s Scratch webpage, I customized my own version.

Maze Project #1 – Google Docs

I spent way too much time writing this up, but Alex was psyched just by the fact that I printed it in color.  Color copies are $$ but soooo helpful when learning Scratch because the code blocks are organized and grouped by color.

Alex also brought over a pair of college students, volunteers who are part of Coder Dojo, to help out. It was a spur of the moment sort of thing. I guess there was a code meeting at the high school with poor turn out so they had some extra time to come help us. The more help the merrier. In addition, a couple veteran students didn’t read the calendar carefully, especially the part about only new students the first meeting, and came to our meeting, so I assigned them to be one-on-one helpers. The helper to learner ratio was nearly even.  It was a nice start to the 2nd session and some great coding happened, like the example below.

Obstacle course by a new member with veteran support

Obstacle course by a new member with veteran support