International Code Club

This summer I’ve been hosting a weekly virtual code club for middle school students (ages 9-12) through my local library. It started slow at the beginning with one or less students each week. But over the weeks it has grown and now we are up to four or five!! It doesn’t sound like very much, but from talking to Christina from Code Club, that’s not unusual size for virtual code clubs.

I’ve been enjoying setting up the Scratch lessons each week. They included these topics:

Animation

Imaginary Sports – a Scratch Design Studio prompt for June

Music and Sound

Text-to-Speech & Translate

Examples from our studio https://scratch.mit.edu/studios/27193347/

Catch Game

Space Invaders

Pen blocks & Stamps

We have two more weeks where we will make a “How to” Scratch project and end with a “Surprise” project -using a prompt from Getting Unstuck 2020.

Each week I create a Scratch studio with some sample projects and a sharable document with some code tips or project instructions (or links to online project instructions), and I include the link to our weekly studio and virtual meeting. Students are invited to the weekly studio to remix what’s there and then share and add their project to the studio. I started out adding them as curators, but it was easier to temporarily open the studio to allow anyone to add projects and then turn off that option later.

Despite the low numbers, the meeting were successful in that those who showed up learned and created projects they were proud of. I’m proud of them, too. I like to spend the last 10 minutes letting the student share their screen to demo their projects – or let me play their projects if they’re shy. Later I will go and view any more projects that get added or shared to play, favorite, and comment on them.

This last week we found out that two of our participants actually live in Canada when one asked if we all were from her province. That’s the thing with online clubs, there’s no physical boundaries. I had to say, no, some of us were in New Hampshire. It didn’t seem to matter to her. Or any of us. We were having a good time coding and hanging out together.

I’m not sure how my club happened to get some Canadian middle school Scratchers. The library posts the offering on their website and parents can email to sign up. I always have a librarian as a co-host and second adult, as recommended by the Raspberry Pi Foundation (Code Club’s parents organization). She is the one to forward the meeting link and shared document to those who’ve signed up. Our meeting link is not on the website.

A couple of weeks ago I was commenting on one of my participant’s own Story studio to ask her if I could share her studio with the Creative Coders. Another Scratcher commented back and asked if they could join the club. I posted the library sign up link there in the comments. I wonder if they followed through? The librarian noted once, earlier in the summer, that one of the parents asked what time zone the meeting was in. So, I guess, that makes my code club an International Code Club. Pretty exciting!

I’ve learned a lot this summer, too. I’m more comfortable with the online format. I’m getting used to the awkwardness of everyone quietly coding for a half hour with very little questions. I’m quicker at navigating around and finding students recently shared projects. I’m learning what type of projects work in this remote setting.

If you want to know more about the project documents I share with the students, here’s an example (without the meeting link).

2020 Winter Carnival Remix

I led two coding sessions at the middle school for their Winter Carnival again this year. I had a new collaborating teacher this time and we were in the computer lab on desktops (instead of Chromebooks).  We had a variety of ability levels and grades in attendance.  Some were brand new to Scratch and others were part of the middle school’s code club.  That’s another new thing at the middle school. Some of my former elementary Code Club members started a code club this year that happens once a week during one of their study halls. (Super proud of them for advocating for themselves)

I wanted to offer different projects than last year but projects that would still be interesting to both beginners and more advanced coders.  We settled on Flappy Parrot and Pong.  I am also really interested in Text-to-Speech and Computer Poetry Generation and my collaborating teacher is excited about Makey-Makey devices.  So we offered both of those as well although none of the middle schoolers decided to work on those types of projects.

I set up a studio in my teacher account and added a few starter projects prior to Winter Carnival. During each session, I collected the students’ Scratch usernames to add them as curators.  This didn’t always work out as some were creating accounts on the spot and then never received an email verification.  I think the issue is on our district’s end and not Scratch’s.  I think some students’ emails are locked down more than others.

Screen Shot 2020-02-16 at 1.17.03 PM

Toad Dash example Flappy Parrot/Geometry Dash project

Screen Shot 2020-02-16 at 1.19.08 PM

Co-teacher’s Flappy Parrot example – gradually gets harder

For those who couldn’t get their new Scratch accounts to work, we downloaded their completed Scratch 3 project to the desktop and uploaded it through my teacher account.  Once their account is activated, they’ll be able to remix it into their own account, if interested.  This is one of those technical issues that you have to work out on the fly.  I also opened the studio to accept projects from anyone temporarily.  It turns out that unconfirmed Scratch accounts can’t “share” projects.  This is not a bad policy.

I was really nervous about coding with the middle schoolers again. I’m not with them on a day-to-day basis to understand what they like. I know a lot of them but I don’t know what they are learning in their code club.  One name on the roster was a student I’d recently seen write Python code in real-time, and in front of an audience, that simulated a ball bouncing. (I know it was rehearsed performance and she had a partner, but still super impressive… Would flappy parrot or my other intro projects interest her?)

The kids were great.  They brought their creativity, enthusiasm and worked hard.  They were kind.  They helped each other and enjoyed themselves.  I had a good time with them and enjoyed seeing what they were interested in. They created impressive projects and were willing to share them with the group.  I made sure there was time at the end of each session to enjoy (play, comment & like) each other’s projects.  All but one were willing to put their “work in progress” out into the world for others to play.  Very impressive and brave for middle school kids.

During the first session, one new-to-Scratch student was looking for inspiration so I helped him add a picture of a bag of Skittles as a Sprite to his project.  I stayed to help him make the Skittles bounce around the screen.  I came back to see he had a bunch of Skittle bags bouncing around the screen.  I asked if he wanted to make a game where you have to avoid the bags of Skittles and offered him the project instructions for Space Junk. Later I showed him how to have the Skittle bags come in at staggered times to simulate increasing levels of difficulty. The longer you stay alive, the more Skittles bags are zooming around after you. Then he wanted to add a coin to collect for a score, or in this case a “Skittle”.

Screen Shot 2020-02-16 at 1.55.07 PM

Skittles Escape became one of the more popular games of the day and it was made by a first-time coder.

This game of his, Skittles Escape, garnered much attention in the first session and was remixed a few times in the second session. Well done, first-time Scratcher!

Remixed Skittles Escape projects:

Some other notable projects:

 

And this cool take on flappy parrot:

Screen Shot 2020-02-16 at 2.09.51 PM

All of the creative projects are in this studio 2020 LMS Winter Carnival. They represent the individuality of the coders who made them.  I hope I can return next year to facilitate creative coding again.

Snack Discussion

I’ve started my eleventh 4th-grade after school Code Club session. We’ve met three times and things are going well, but I’ve neglected to blog.  I’m using the same club format and the same projects I’ve blogged about before, so there was really not much to write about.  After this week’s session, though, I found I have something to share.

Screen Shot 2019-03-16 at 9.24.16 AM

Week 2 project: Maze game by a 4th-grade code club member

Code Club starts right after school – literally, the last bell rings and the students walk from their classroom to the computer lab. We start by circling up the chairs and having a meeting time where I take attendance, talk about what project we are going to do, and have a snack. (Snacks are provided by members who volunteer to bring something to share with everyone.)

Since we can’t eat while coding on the computers (school policy and good rule in general), I use this beginning time to talk about computer science, my coding objective for the day, etc.  This group is a very easy-to-manage and attentive group so I have made an effort to start a snack discussion to fill this time. Their thoughts and ideas are helping me craft the club to fit their needs.

IMG_0744

This first day I asked them what their favorite computer/video game was. Their favorite games ranged from themed games like Harry Potter to popular MMO games like battle royale type games.   No real surprise there.

The second week I asked them what types of games or projects they wanted to learn to make. I wrote down their list of ideas.  There weren’t many surprises, but I do have a number of girls who want to make a virtual pet style game, so I’ve added that to the learning projects I will present to them.

This week I asked them what they thought was the hardest part of coding. This was exciting because many of them felt comfortable enough to share their concerns.  I listened and affirmed that all of these were difficult parts.

I have a volunteer, who is a middle school math teacher, and she shared her concern that the hardest part for her was when a student asked for help but only said, “this isn’t working”.  It is true, that it is difficult to figure out what is not working in code at first glance. It would be helpful for the students to explain what they were hoping would happen and what was actually happening in their code.

Some of the other parts they thought difficult were:

  1. finding the code blocks they were looking for.  (I have to remember that they are very new to Scratch.)
  2. using the costume editor. (Another student gave some tips on this – like switching out of vector mode to draw. I thought it was great that they are helping each other.)
  3. coming up with the design of the project they want to make. (I affirmed this was a difficult part. A good design plan makes the rest of the project go smoothly. For some games, the design phase takes 50% of the total time from start to finish.  I also told them that when designing their game, they would fill out a Game Design Document to help them make those design decisions.)
  4. finishing the project/ getting the project to match their expectations. (Wow, these are insightful kids.  Yes, I told them that I and the volunteers would help them manage their project.  First by making sure it was a project that could be done and second, by helping make a plan for them to get it done in time.)

The snack discussion has become a favorite part of Code Club for me.  I hope I can come up with more good prompts.  Maybe I’ll ask about getting unstuck next.

I am also enjoying teaching them to code and playing some of their creative projects, too.  Here are a few screenshots.

Screen Shot 2019-03-16 at 9.23.56 AM

Week 3 project: Quiz-type Chatbot by 4th-grade Code Club Member

Summer Creative Coding Club

This July I’ve been leading a 4-week coding club at the public library for middle school age students.  It is a 1.5-hour session for up to 12 students. Kathy, the children’s librarian, is my co-leader. She sets up the library space, takes care of the sign-up list, and prints project resources we use, in addition to supporting the students during the sessions.  We worked together during the school year, co-leading Creative Coding Club, which met once a month, and because of its success, we are planning to offer it again this fall.

OLYMPUS DIGITAL CAMERA

We have this great space at the public library (although the projector doesn’t have the greatest quality display).

In early June we decided which projects to present during the 4 summer sessions:

1) RockBand/Pong  (both good intro to Scratch or refresher projects)
2) Chatbot  (one of my favorites. We have done this one before but it is very open-ended and worth repeating)
3) Flappy Parrot (a favorite of my 4th-grade code club and one I haven’t done in the library setting)
4) Makey-Makey (piano and cardboard- a great way to end)

Session #1

About a week before our first session World Cup soccer was making news headlines which got me thinking about all the sports-themed Scratch projects my students have made. So I went looking and found a Code Club resource with a soccer theme which Kathy printed. (our Creative Coders is a registered Code Club).  Kathy also had the Scratch Music cards available as well.

I created a class studio Summer #1 and added a remix of the Code Club resources for Beat the Goalie.  It has the assets (Sprites and background) ready to add code blocks following the guide.  I wanted to add an example of a music project, too, so I made this one and coded up the baseball theme “Charge”.

Screen Shot 2018-07-22 at 10.00.09 AM

My example music project

I liked the idea of giving the students two options each week. We have both returning Creative Coders and new-to-Scratch coders (plus a long wait list) for our sessions. To start with two projects of varying complexity will provide students with choice.  We hoped this would promote more creativity in their projects.  Plus, the session is longer and there could be time to try both.

For a first meet up, things went well.  There are always technical challenges just getting students on the library Chromebooks and into the Scratch class accounts.  It was also a challenge at the end to get them to stop and share their projects with everyone.  But overall they were engaged, creative and supportive of each other.

Screen Shot 2018-07-22 at 10.24.24 AM

The studio filled up with an even mix of music and soccer projects.  Since it was a bit chaotic at the end during the time we wanted everyone to check out each other’s projects, I took some time at the beginning of the session #2 to share the projects from session #1. They seem to enjoy seeing their project displayed on the screen (and me struggle to play their game).

Session #2 

Along with Chatbot, I introduced the Pen blocks and added a couple of examples from Scratch Started Project resources in the Summer #2 studio – this gave them a second choice of projects, which worked well during session #1.

Screen Shot 2018-07-22 at 10.43.02 AM.pngStudents are starting to take advantage of the class session studio to look at the examples, remix the resource projects and share their final projects for the group. I finally feel like I am putting some of the features of the Scratch teacher/class account to good use.  Both projects were hits with the students.  Kathy noted it was exciting to see them working so intently on their projects and then be so proud of what they created!  It is why I keep doing this.

Session #3

Coming up! I received a ‘final notice’ email (and saw on Twitter) about Code Club’s Moonhack 2018 project, so I’ve added it as our second option for session #3, although we’ll be coding a few days after the anniversary event.  This will be a new project for me, so it should be fun.

Presenting at Showcase #10

Today was my 10th Code Club Showcase. I am so proud of all my coders.

We had a variety of projects, most of them well put together.  It always amazes me when they come together.  I’m also amazed at the ease the students have to present to the parents. I don’t really give them a choice and they really come through.  Today was no exception and I got to see something wonderful happen.

During our snack, I went over how the Showcase would go.  The parents will be the guests and they get to sit at the computers and play the Scratch projects. Each student will present their own project for the parents.  They will pick someone to demonstrate the project (play the game) on the interactive whiteboard while they stand up front and present.  I have them fill out a half sheet of notes about the project, including how to play, the goal, their favorite part and how they would have made it better if they had had more time.  It is basically the same presentation notes from Showcase #2 with an added line for who will play the game while they are speaking.

I had only one team of two students, the rest were individual project makers. This duo created Yharmin Boss Battle (which breaks my “no weapons” rule, but that’s another post).

Screen Shot 2018-05-06 at 7.26.53 PM

The duo started as a pretty good team with equal effort but the coding was done mainly by one student and the other spent a good amount of time “off task”.  I really felt he wasn’t holding up his end of the project, but the project got done.  I noticed when they were filling out the presentation notes, this same student was leaving it up to his coding partner to do the presentation.  I told him they needed to divide up the presentation so that each of them would have things to say, much to his chagrin.  When it was their time to present and they were standing up front, the coding partner suddenly froze and couldn’t speak.  I could see his anxiety on his face and so could his parent. I told the non-coding partner that he would have to step up and present for the team.  He started to tell me that he couldn’t but realized his partner was not capable of presenting right then. I was so proud to see him step up and really come through for his partner.  He began their presentation and by the time he got to their favorite part and what they would have added if they had time, the coding partner had recovered and both of them were talking and sharing their wonderful project with us. Bravo!

At about this time I noticed another student hadn’t filled out his presentation notes, so I gave it back to him to fill out. He is a natural in public speaking and he probably didn’t need prompts, but it is good to have just in case.

 

Screen Shot 2018-05-06 at 7.07.12 PM

Falling Down Game

 

Sometimes it is the simple games that are the most fun and addictive.  Check out Falling Down Game and Geo Dash for this group’s takes on some classics.

And thank goodness for girls who code for they add the puppies and unicorns to brighten the showcase.

Snow Day Cancels Showcase #9

We had a snow day on the day of our Code Club Showcase, so it was canceled.  I decided not to reschedule it.  I sent an email to all of the parents to let them know.

I included a link to all of the finished projects with this note:

Please take a moment and have your child show you his or her project.  Give it a try.  They are all very creative and represent a lot of hard work on their part.  Well done, everyone!

We had 14 great projects this term with a lot of variety.

Screen Shot 2018-01-28 at 8.27.15 PM

Drop you, Cat Sweeper, and Parkour Cat are all difficult maze-type games. Riddler, Ghost Math and Penguin Trivia ask hard questions.  In addition, there are two virtual pet projects, three chase games, two catch games, and a fighting game.

 

Screen Shot 2018-01-28 at 8.34.31 PM

All original artwork is tons of work.

 

The creator of Kung-fu Master spent a lot of time designing his Sprites with different costumes for different fight poses.  He uses different keys to control each character and has a computer-controlled character for the user to battle.  He worked independently and did an amazing job.

 

Screen Shot 2018-01-28 at 8.44.26 PM

Cat Sweeper, a chase, maze hybrid

I admit I was hoping to see Cat Sweeper presented so I could find out more about it. This was another independent coder who worked really hard and shows a lot of coding skill. It even has a one or two player mode. I ‘lose’ a lot every time I play it.

 

Screen Shot 2018-01-28 at 8.53.58 PM

Space Adventures

The creator of Space Adventures wanted to make a Try Not to Laugh project as well but instead concentrated on a fun, challenging catch game.

I found time this week during 4th-grade recess to have the Code Club members invite a school friend to join them and test out the games they all made.  It was not the same as having a showcase presentation, but their games were played and enjoyed by all.

OLYMPUS DIGITAL CAMERA

I certainly enjoyed coaching them and watching them develop their coding skills. Well done, everyone!

 

 

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.

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.