Checking Up on Individual Projects

We have two weeks until our Showcase of Projects and I’ve been checking in with all of the Code Club members to see how they are doing.  There are no team or pair projects this round which I find surprising but this year’s 4th-graders are very much unique individuals.  I tried putting two students together on one project, but they just couldn’t work together.  So they each have a similar project.  This does mean that there will be a lot of projects to present at the Showcase.

 

Screen Shot 2018-01-07 at 2.50.43 PM

Keep away from Bendy

 

The character Bendy from Bendy and the Ink Machine game is featured in a couple of chase games.  How these nine-year-olds know about this horror game, beats me.  I hadn’t heard of it, but then again, I don’t like scary things.

 

Screen Shot 2018-01-07 at 5.09.06 PM

Virtual Pet Dragon

 

Most of the students are in good shape.  The two virtual pet projects just need a few tweaks. The trivia and math quiz projects seem fine.

 

 

 

Screen Shot 2018-01-07 at 2.47.26 PM

Answer the riddles 

The Riddler is well coded, but I think I need to show this coder how to make his own blocks for the “you answered it wrong”.  He has duplicated his code in each “else” loop. Perfect opportunity to teach code reuse or refactoring. Now I finally have a reason to show them how those dark purple blocks work.

 

 

Screen Shot 2018-01-07 at 2.49.42 PM

This code shows up in each of his “else” statements.  

 

 

The flying cat and maze games could use some more work, but now that I’ve seen the state of everyone’s code, I think we might spend some time this week talking about game testing, how important it is, how to do it well and how to fix the glitches.

Equally important as testing for bugs, is to test for fun-ness.  We want our games to be fun.  Yes, we do.

Advertisements

Coding Their Own Way

The students have begun their independent projects for our showcase in May.  They are really into their projects already.  At our last meeting, I met with (most of) the teams or individuals to go over their Game Design Document (GDD).  Over time I’ve been adding things to the GDD to make it more comprehensive but it has gotten a bit unwieldy.  Students don’t always fill it all out or their ideas don’t fit in with the description. I definitely need to reflect on the GDD and figure out what should remain and what can go.

Let’s go back to basics.  Why do I have the GDD?  Is it for the students or for me?

To make a project that takes multiple weeks to complete, but has a hard deadline, you’ll need a plan.  Planning is part of the engineering design process. In this sense, the GDD is for the students.

If you are working in a team, the need for a plan is crucial.  Who will create the backdrops? Who will code the Sprites? Do we agree on the gameplay? A team definitely needs a GDD to define roles, divide the labor, and to communicate ideas.

How do you know if it is a project that can be done in 4 weeks? What parts of the game are you not sure how to code? What should you work on first?  These questions are why the GDD is for me.  I see myself as the project manager for these 10-year-olds.  I want to ensure a project isn’t too large: “There will be 5 levels and a boss level with an army attack and when you die you turn into a zombie with a special power and then….” Yikes. I want to see that team members have communicated their ideas and agreed on the design. I want to make sure each team member has a job to do.  I want to know what parts of the coding will be tricky for them so I can find some examples of code to help them.

All of the projects this time seem pretty well thought out. There are no “try not to laugh” projects.  No Makey-Makey projects either, sadly.  There are a couple of maze games, two games with gravity, one animation, one karate game, and some adventure games.

One or two of the projects aren’t very complicated and I worry that they’ll finish too early.  I shouldn’t, though.  It will be good to have a couple of more polished, well-tested games for the showcase.

Screen Shot 2017-04-23 at 5.12.45 PM

This student is going to use this as her independent project and make a “Flappy Bird” type game.

I can’t end without sharing a few screenshots of student work.  The previous week I showed the students how to use the Tips tab to get step-by-step instructions on different games.  I suggested they try the “Make It Fly” tutorial.  This was an optional project and many chose that time to work on their GDD instead.

Screen Shot 2017-04-23 at 5.13.22 PM

This shows interesting graphic editing skills and some good coding.

Screen Shot 2017-04-23 at 5.14.47 PM

Makes you smile.

Don’t Laugh

The projects for our showcases are finished and have been published on the Scratch site and I’m compiling them onto our school Code Club page in preparation for our final meetings this week when the parents come to see what we have been up to.

screen-shot-2017-01-08-at-7-40-19-pm

Chatbot and Pong game in one project

There are some pretty impressive projects.  And the students’ hard work is evident.  Maze games, Chatbots, Races, Survivor games, Pong types:

screen-shot-2017-01-08-at-7-36-30-pm

Space Pong – hit the portal that matches the ball color.

Then there’s The Epic Game where there are 4 games in one project.  The two girls working on this one came in at recess to work on it and were really motivated to meet their goal of finishing it.

screen-shot-2017-01-08-at-7-44-31-pm

The Epic Game – it took epic effort.

They learned a lot about game flow, how to use broadcast effectively and how making one seemly insignificant change can break everything. And about testing, testing, testing. I thought I would need to show them Rik Cross’s Cheat Codes, but their chatbot like game flow let us quickly get to the game that was having issues.

I’m really proud of all of these projects and coders, even the two, possibly three, Try Not To Laugh projects.  Yes, it seems we have a dancing llama infection.  The first TNTL project was a dancing llama project from Showcase #2 called Super Awesome Llama Man. I wasn’t that impressed with the project makers plan or effort, but it fit his personality and every single 4th grader who sees it seems to think it is hilarious in it’s absurdity. This year the llama man Sprite is back in a couple of Try Not to Laugh projects.  Also is a walking taco and troll face.

screen-shot-2017-01-08-at-8-17-40-pm

Llama is back – TNTL

I okayed one TNTL project but when two students project derailed because they couldn’t agree on how to proceed with their joint project, I okayed their change to a TNTL project.

 

screen-shot-2017-01-08-at-7-34-03-pm

So many llamas

I tried to find funny gifs other than the llama, but they all love the llama.  Really, it’s not funny anymore.

 

Tales of Hour of Code 2016

Hour of Code or Computer Science Education Week was well received by the school this year. Every class from Kindergarten to 4th grade had the opportunity to work on one of Code.org’s Hour of Code tutorials during their computer lab time. This is Code.org’s third year of promoting a week of computer science education and I’ve supported them each year by introducing these tutorials to my students.

screen-shot-2016-12-12-at-7-27-21-amThis year Minecraft and Moana were the big hits, as well as Angry Birds and Star Wars.  The tutorial options are a great way to give students choice in the learning and they are so fun.  Students can’t believe they can play Minecraft at school.  I like the new Minecraft Designer tutorial.  I felt it gave the students a peek at the code behind the game and allowed them a lot of freedom of choice and freedom to be goofy.  What 8 year old wouldn’t want a chicken that lays diamonds!  Meanwhile they don’t even realize how much they are learning about how to program.

20161207_141456

1st grade Hour of Code activities

I do like to see who has that algorithmic thinking skill and is able to solve the tutorial puzzles independently.  For 2nd graders in general, Moana and Minecraft have pretty difficult concepts, like algorithmic planning, iteration and events (in Minecraft Designer).  Some of them look to each other for help, sometimes I have to read the directions to them, sometimes I have to be Steve or the boat so they can see how it turns in place and moves forward.  One 2nd grader surprised me at how easy the tutorial was for him.  I called him a Coding God (they are studying Ancient Greek Gods right now). He thought that was hilarious. I hope he signs up for Code Club when he is in 4th grade.

 

In addition to general class Hour of Code activities, my three math enrichment classes completed their Scratch math games.  That’s 27 new math games coded by 8-10 year olds. Here are the 4th graders, and 3rd graders studios. This week they played each other’s games and gave feedback in terms of Two Stars and a Wish, as I have done in the past.  I love this step in the game engineering process.  The students have to take the time to notice and test each game and learn to give good feedback.  I’m hoping we get time to improve the games based on the feedback they receive.

20161208_103326

I will leave the option of Hour of Code activities for the rest of December – making it Month of Coding at our school!

There are so many tutorials at Code.org/learn.  I may have to try a few myself. I’ve been meaning to learn Javascript.

Catch ’em

Week 2 for Code Club happened.

We did an old project game called Felix and Herbert which I’ve done before.  It’s not on the list of current Scratch project at Code Club World, but its simple concept with different movements- follow mouse movements- makes it a good second week project. It is a cat and mouse game and introduces some good game elements such as broadcasting and keeping score.

screen-shot-2016-10-17-at-6-31-44-pm

I allowed the students to pick any two Sprites – one to chase and one to be chased.  This let to some creative pairings.

screen-shot-2016-10-17-at-7-19-40-pm

It also became important in debugging to know which Sprite was which. When introducing the project I did point out where it says “Test your project.”  I let them know that this was a big part of programming.  I think I’ll need to emphasize that each time. I notice a lot of creative testing – playing with sounds, looks, speed, scoring, but not much debugging or referring to the project pages when things don’t work.

screen-shot-2016-10-17-at-6-29-48-pm

At the beginning of Code Club, I decided, we would add a bit of reflection to our meeting. On Wednesday I asked how the first code club went?  What were the successes and failures.  Many noted that they ran out of time or weren’t able to get the sensing of the edge of the maze to work.  I told them that it was a difficult task and if they were able to set up the Sprite to use the arrow keys, that was a success.

With Thursday’s group, I asked them to share one thing they found that they liked about Scratch.  This time I asked for positive responses mostly because they’d only played with Scratch and hadn’t really tackled a whole project yet.

I enjoyed this reflection time.  These are big groups and I don’t always get to connect with each student during our hour of coding.  Afterward Code Club I do take the time to look at the projects they save, highlighting a few here and noting any trending issues. And, of course doing my own reflecting on this blog.

I must say that my volunteers are awesome!  They work very hard fielding questions, debugging code, working with students. Even so, I think the students are asking for help too quickly.  They need to look at the project more closely and begin to do a bit more problem solving themselves.

screen-shot-2016-10-17-at-6-31-22-pm

 

Pair Programming

I have been neglecting my blog.  Code Club sessions and other “coding with student” adventures have occurred and I have not sat down and reflected. Now it is Computer Science Education Week or Hour of Code and I’ve more to say than will fit in one post.

Partner Work at Code Club

Pair programmers

So let me start with how I’ve become a supporter of pair programming.

Coding is generally thought of as one person sitting in front of a computer hacking away at code for hours on end.  Most of my programming is done this way – I’ve been known start a coding session and come away with no sense of what time it is.  As soon as one feature is implemented, there is always another bug or feature to work on.

I have done some pair programming with my spouse, who is a software engineer.  I believe he called it “extreme” programming at first.  He drives and I navigate and this works for us.

My Code Club students can choose to work with partners on their own designs.  I also pair up math students for Scratch Math Games.

This year I used Code.org’s Pair Programming video to introduce the concept.  The video does a nice job modeling pair programming and listing  Do’s and Don’t’s.  I like that the programmers are girls.  My only problem is the one inappropriate bit where one girl tries to stop the other girl from talking by covering up her mouth.  That would not be appropriate behavior in elementary school.

Now that both Code Clubs and both math groups have seen the video and we’ve talked about the concept, the teams seem to work better. It’s not all sunshine and roses, but when an issue comes up, we’ll be able to communicate using the same language and expectations.  So watch out bossy navigators and drivers who hog the mouse, you’ll be switching roles soon.

 

20150205_pair programming

Maze Race Game

Last week’s Code Club took a lot of planning and preparation.  I’m going to write about it in 2 parts. Here’s part 1.

I introduced one last project for Code Club on Wednesday.  I wanted them to learn that Sprites can sense what they are touching, like a color, or the stage’s edge, or another Sprite. Collision detection is a fairly basic element in many computer games and not trivial to code for in many programming languages, in my opinion. Scratch makes it fairly intuitive. I found three different instructional resources that teach the creation of a maze or race game in Scratch.

Code Club World has a Boat Race project in beta form. It is so new, in fact, that when I went looking for a project of this type, it was only available from Code Club (for UK clubs only).  Looks like a fun project and I want to try it next time.

In Jeremy Scott’s “Starting from Scratch” guide, there’s a maze game that introduces collision detection. I like this resource from the Royal Society of Edinburgh.  It explains basic computer science concepts and ideas that the students will be exposed to using Scratch. That helps me use the correct terminology and know the “why” do I teach this behind the “how” do I teach this. The maze game instructions looked easy to follow to me, but it wasn’t in the Code Club format that the students had grown used to.

Maze game.

Maze game -use the arrow keys to reach the dragon. Don’t touch the sides.

I also came across Simon Haughton’s website and in his second Scratch lesson he has a car racing game. The goal is to cross the finish line without driving off the track.  Driving off the track sends you back to the beginning. I like how he has the students make their own race track in 3 simple steps: Flood the stage with color,  draw or erase the “track”, and draw a finish line in a different color.

My take on Race Game

I used his instructions first with a group of 4th grade students who have been learning a bit about Scratch during school.  We didn’t have time to do any extensions, like adding a timer, enemies or sounds, but a couple of students added a “crashed” costume to their car. Turns out if the new costume is bigger or a different shape than your original, you may be touching the edge of the track even when sent back to the start.  Another student was starting to add an oil slick, like my water hazard, before we ran out of time.

Unsure of how much coding time we’d have in Code Club this week, because we had a guest speaker coming talk about software development, I decided to started with Jeremy Scott’s Maze game instructions. We used the maze gif resource for the stage but I let them choose any two sprites for explorer and target. One student spent the whole time editing the sprite to his satisfaction -a graphic designer in the making, perhaps?  Next we set up the arrow key controls on the explorer sprite and added collision and target detection.   By the end of Code Club some were able to start a second level of their own design.

Second level student example

Second level student example

cp maze

Second level, student example

The jump to using different sources for instruction was hardest on my volunteers.  Our speaker stayed to assist and I had my high school student there as well. I had experience fielding questions with this after my 4th grade class earlier that day, but my volunteers were grasping the concepts at the same time as the students. Also the handouts weren’t as readable as they could’ve been. After a rough start, things settled down and the students seemed pretty independent.  Hey, I think that’s success right there.

What about that guest speaker, you ask?  That’ll be part 2.