Virtual Showcase 2022

Last week was my 13th showcase of projects for my 4th grade after-school Code Club and my 2nd one that was held virtually. We made it. After three weeks of working on their major independent project and some online meeting craziness, they presented 14 final (or near-final) projects.

For our virtual showcase format, a project was presented by the creator, then the students played or enjoyed the project, and finally, they gave a quick positive feedback comment while the next student got ready to present. We had 14 projects presented in one hour. Amazing.

Code Club Showcase project thumbnails

The final projects show a great deal of creativity and variety. It is incredible how much work went into some of these projects. I am very impressed with this group of students and grateful they all took the club seriously. I know it was not an ideal situation to learn to code in an online group but these kids were pretty motivated. They were also pretty self-sufficient and knew how to advocate for themselves to get the help they needed. They were also very patient when waiting for me to help them.

I enjoyed watching their projects progress over the weeks. Here are a few projects I am particularly impressed with: The Pipe is a maze game with a cool introduction, a couple of levels, and a secret code level.

I also like Cheesy Puffs clicker: This is a clicker game with a lot of flair. I knew this coder wanted to make a clicker game so I provided some material in our classroom to support him. I think he also found other clicker games on the Scratch community to get some ideas.

I am also really impressed by Shielder. I’m not sure how this was created but I don’t doubt that the student who created this could create this.

These next four really reflect the creativity and personality of their creators.

The quality of these projects is no different from any other showcase from other Code Clubs. It is just that this virtual code club felt like a lot of work because of the virtual nature of helping students with their coding issues remotely, but the results are gratifying. I hope they find more coding opportunities in the future.

Virtual Code Club Projects

I’m running another round of my after-school 4th grade Code Club virtually again. We are halfway through our 10-week session and have one more learning project next week before the students start working their final showcase projects. Students from the other side of town have joined us with their Code Club coach, Ms. G, just like last year.

I had 19 students sign up and 4 from the other side of town and we average 16 students online each week. We’ve used breakout rooms to divide the group to be able to help more students while they are working through the learning projects. We’ve offered two different projects one week – Maze and Flappy Parrot to give the students some options. We are using Google Classroom to communicate, post materials, and share Scratch studio links. A few students have dropped out because the virtual environment is too hard or stressful to manage while learning to code. I’ve offered my time in person during recess to support students in person.

Favorite things example

We started with our favorite things projects the first week to get to know each other. It helped to work through some basics of Scratch, signing in, sharing to studios, etc. as well as a refresher on Google Meet protocols – raising hands, chat etiquette and presenting. Then 2 Chatbot, 3 Space Junk, 4 Maze & Flappy Parrot, and finally next week, Create your own world. Many of my favorite projects! Ms. G would create and share a studio. I would create an example or starter project and post the material to our classroom.

Flappy parrot or Mazes week

Scratch Jr and #CSEdWeek2020

Last week, December 7-11, was #HourofCode week. I’ve been making my school participate in Hour of Code since 2014 (it’s 2nd year in existence). This year was different (as all things in 2020). While we are lucky to have in-person classes, I am not able to see every class, every week. I was planning to extend Hour of Code for the last 2 weeks before Winter/Christmas break. Monday started with my virtual library code club and I had many sessions of coding planned at school but then things changed and we learned we were switching to a hybrid model for the next (and last) week of December, so in the end maybe half of the school participated in #HourofCode. I have plans to include more coding in the new year.

On a positive note, all students now have a school-issued device. The Kindergarteners and 1st graders have iPads (the 2-4th graders have Chromebooks) so I have been able to introduce Scratch Jr this fall to the all of the 1st graders. I had planned to get to the Kindergarteners during December but I’ve pushed those plans into 2021.

I wasn’t able to get the original Scratch Jr on the iPads but I was able to have PBS Scratch Jr installed. I’ve taught Scratch Jr to 1st graders in past years, sporadically and in groups with shared devices, so it was exciting to try a whole class model.

I looked at the ScratchJr.org curricula for inspiration. For an introductory lesson my goal was to introduce the layout of the app – Sprites, background, coding area – and how to put blocks together. They seemed to quickly pick up the concepts so I gave them the task of adding a character (Sprite) and coding it with a start block (Green flag) and 4-5 blue motion blocks.

Three animated characters (lesson 1)

Once they had that they could add another character and animate that Sprite, too. After we had 3 Sprites I showed them how to make it fullscreen and play their movie. The set up in the 1st grade classrooms allows me to mirror my iPad on the projector screen up front, which really helps when trying to demo and maintain 6 feet distance from the kids. It was more difficult to get them to share their projects to my iPad without assistance. But the simple opportunity to see their project on the big screen was worth the effort.

Student projects shared via Airdrop to my iPad

Then next lesson (or maybe the third) was the race project from ScratchJr. That was a big hit, as was the Meet and Greet. I also showed them the repeat and repeat forever blocks during one session this fall.

Example repeat and repeat forever student project

One of my favorite projects was the family project I did with one 1st grade class for Thanksgiving. I showed the students how to put their photo in the faces of the faceless Sprites and after that asked them to create a project about their family.

For #hourofcode, most of the first grade classes got one or two of these projects. In the one 1st grade that I see the most, the teacher and I wanted to try a more math themed project – which I’ll write about in another post.

Other highlights of #CSEdWeek2020 include math games (of course)

4th grade math games for Hour of Code 2020

and making maze games with a 4th grade class – one work session was on our full remote day, but that went okay. I quickly rewrote this maze instruction doc and printed it out for the students prior to that remote day (for our hybrid model, Wednesdays are full remote days, the other 1/2 of the student attend school).

4th grade maze game for Hour of Code

For 2nd graders and 3rd graders I posted #HourofCode activity links to their websites. One new activity this year that the students really enjoyed was Google’s Code Lab from their Santa Tracker site. (Of course that leads students to play other games on that site, but they are all fun. Santa Selfie is a favorite.)

There’s more to add but I’ll end this now and post more later!

Mazes, the Dark Side

At the last Creative Coders Code Club, I asked my middle schoolers what they wanted to learn or work on next time. One student said a platformer and another was interested in a MAP (multi-artist-project).  While I’m still investigating how to facilitate a MAP with my group, I thought the easiest form of a platformer game would be to learn to code a maze. Mazes can be simple “navigate to the goal and don’t hit the walls”, or complex with levels, bad guys, goals, timers, scoring, (like platformers).

I found a couple of starter projects for mazes.  I liked the one from the Scratch Team (classic example) and from CSFirst.  I looked through and found a couple of other examples of mazes to include as examples.  I also came across a PacMan starter project from MEStech.  PacMan is a nice example of a classic platformer that’s like a maze. And who wouldn’t want to create their own PacMan game?

I’ve always wanted to make a 3d maze but am not interested in learning 3d rendering and the other way I was thinking to make it required too much planning. My spouse gave me the prompt to make a dark maze where you can’t see the whole path. So I spent a while creating a Sprite to look like darkness around a lighted lantern.

I knew I could use a gradient fill from black to alpha 0, but I had trouble creating the size of the lantern light that wouldn’t reveal too much of the path.  My third try worked well but I’ve decided that I am not a fan of the Scratch 3.0 vector tools.

Screen Shot 2019-12-02 at 9.53.37 PM

Just the right size of light in the darkness.

I had to change the implementation of wall detection.  I couldn’t use “when touching blue” because my Sprite is supersized. So I changed it to “when orange is touching blue”Screen Shot 2019-12-02 at 10.02.33 PM

I still had areas of the map that were visible beyond the edge of my Sprite.  I thought I could increase the size of the Sprite to 200% to cover it but the maximum I could set the Sprite to was 135%.  Instead, I created two blackout Sprites the appear or hide depending on which quadrant I was in.  I’m pleased with the results although it needs a better map and more levels, etc.  It’s basically still a starter maze…

Today was our club meeting but it was also a snowy day.  School wasn’t canceled locally so we held the club but we only had three members attend.  One adapted my blackout maze idea with his own map and bad guy.

Another created his own impossible maze

And the third tried to do both PacMan and a maze and was frustrated with what he could accomplish.  It was his first time and he spent time just playing with Scratch options (which I totally support – you got to know what is possible before you can create).

Sometimes I feel 75 minutes once a month is not adequate time or frequency to facilitate the opportunity to play with Scratch, be creative and produce something to share with the group. It makes it tricky to plan lessons that fit a wide range of skills and inspire middle school students.

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

Make It Your Own

My 10th after school Code Club started at the end of February.  This is a small group of 10 4th grade students, which is nice for a change. It is great to have three girls in the club, too. A couple of the students were in Code Club in 3rd grade and a couple students also come to the monthly Library Code Club.

For our first project, I presented an old Code Club project “Felix and Hebert” which I did not find on the Code Club World site when I went to link to it. It is a simple chase game where one Sprite is controlled by the mouse, the other chases after it. The project gets you a simple game with very little coding. It is a nice way to introduce Sprites and Events and I saw some creative projects.

For our second meeting, we started with an Etch-a-sketch project with the option to add a maze game to it.  Some students stayed with the Etch-a-sketch project, just having fun messing around with drawing on the screen. It was a nice twist to start with the Pen blocks and directional controls, then add the wall color sensing code for a maze game. I feel these two projects transition nicely into each other instead of doing one project or the other.

Screen Shot 2018-03-10 at 8.35.37 PM

This student just enjoyed making a drawing program.

Screen Shot 2018-03-10 at 8.36.10 PM

Etch-a-Sketch code

Another student changed the arrow keys commands to generate interesting curve drawings. The up arrow moves the Sprite forward as normal but the left and right keys turn the Sprite.  Hold two keys at once for drawing curves.

Screen Shot 2018-03-10 at 8.32.59 PM

Up arrow for moving forward, Left and right for changing direction. Plus the trail of the chaser bot.

 

Screen Shot 2018-03-10 at 8.32.28 PM

It was very cool to see curves drawn instead of the usual straight lines and square corners of the Etch-a-Sketch. Some of the other students wanted to copy this movement style.  I was proud to see the students share their code ideas.  Later I saw one student sharing a way to make your own code blocks. He thought this code was how he made the Sprite stop moving.

When I looked closer, I noticed he didn’t have any blocks under the define hat.  He was sharing his code but it wasn’t code that was affecting anything.  I am impressed that he choose to design his own code block when he couldn’t find the block he wanted, even if he doesn’t yet understand how to do that.

Next week we are going to try the Chatbot project and I’ll have to explain how the “Make your own blocks” work.  I have been wanting to show students how those work, now I have a good excuse.

Screen Shot 2018-03-10 at 8.37.18 PM

In this project, you can teleport to the rainbow.

 

Screen Shot 2018-03-10 at 8.37.11 PM

Touch yellow to be teleported to the rainbow. Touch black to return.

This is a creative and adventurous group.  Should be a fun 10 weeks.

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

Spring Code Club Session Begins

Code Club session #8 met for the first time on Wednesday.  There are eighteen 4th graders and two high school volunteers.  This is the second time I’ve had a mixture of students from both elementary schools in my city in one club.  Another thing that is cool about the Spring session is that I have returning Code Club members, or, as we call them, “experts”.  Only 5 students are new to Code Club and there was only one student I didn’t know.

screen-shot-2017-03-02-at-6-56-38-am

A New Scratcher’s take on Maze game

After introductions, I asked the “experts” what favorite project they had from the last session of Code Club.  They remembered and liked the Maze game, Space Junk and Chatbot from CodeClubWorld. They also enjoyed the projects they had created themselves, not surprisingly.    I like starting with the Maze game and had already chosen that project for our first meeting.  It’s a simple game with many ways to make it more exciting and complex.

We started out by reviewing the maze design and refreshing our programming vocabulary.  What was the object of the game? How does the Sprite move (arrow keys or follow the mouse were options)?  What happens when you touch the edge of the maze?  How do you win?  Then we talked briefly about ways to make it more exciting – more levels, obstacles, villains, etc.

screen-shot-2017-03-02-at-7-08-28-am

Then they got to it. They were fairly independent coders, for the most part, and they helped each other a bit, too. My high school volunteers and I think we will be able to try some more complex coding  projects this round.  It was a really fun 75 minutes.

Thinking ahead, here are some goals for this session of Code Club:

  • Encourage more animation: We have some artists, so I’d like to share with them and encourage more creative uses of costumes for animation effects.

Screen Shot 2017-03-02 at 7.00.49 AM.png

  • Explore “more blocks”: someone is already exploring defining their own blocks.  I’d like to encourage more of this.  As well as random numbers.

Screen Shot 2017-03-02 at 7.02.18 AM.png

  • Clearing up misconceptions: We will have to revisit some concepts like the forever block and support better debugging habits

screen-shot-2017-03-02-at-7-03-35-am

Find the glitch in this code.

screen-shot-2017-03-02-at-9-58-30-pm

It seems this “expert” puts everything in forever blocks.

  • And finally – I want to use MakeyMakey‘s this time. I told them I want to use them with our projects – especially our final projects. Those couple of students who have played a bit with MakeyMakey’s were quite excited. I’m really excited (and a bit nervous). I don’t have much experience using MakeyMakey devices, with or without students.  Luckily that won’t stop me.

A New Start

My two Code Clubs have started up again. There are 20 students and 2 high school volunteers for each club.  The first meeting has happened. Students learned about Scratch, had fun and I’m excited for both clubs.

This is my 3rd year. It’s session #6 & #7 of Code Club for 4th graders in my city. I know all the students from my school but only 2 of the students from the other side of town.

One thing I worry about, now that I have been coaching Code Club and teaching Scratch to elementary students for three years, is forgetting what it is like not to know how to program in Scratch, not to know what a Sprite is or know that the Stage has no movement blocks, etc.  I don’t want to assume that they know what I know and I want to present concepts that will be relevant to what they do understand. (I realize this concern is not unique in the teaching profession).

I have on the calendar for the first session of Code Club: “First meeting – Rules & Goals, Intro to Scratch”.  So I decided to morph the Rules & Goals and include a bit of the first step in thinking like a programmer.  Defining rules & goals is a big part of what a programmer really does.  I tried framing the rules in pseudo-programming language with the students as well:  If the day is Wednesday and the second bell rings, then it is time for Code Club.  When you open up Scratch, forever have fun.  I’m not sure I got my point across.

screen-shot-2016-10-11-at-2-42-41-pm

I presented the Maze game to Wednesday’s club because I knew they had used Scratch before as 3rd graders. They struggled a bit.

screen-shot-2016-10-11-at-2-44-01-pm

Most of them were able to get their Sprites to move around using arrow keys and set up the maze background.  Some were able to get the conditional sensing color code working.

screen-shot-2016-10-11-at-2-47-12-pm

Puff magic, a working maze game

And this one below added a squirrel that spins around the screen changing colors of the hero. Cool.

On Thursday I introduced Scratch concepts to 3rd & 4th grade programming newbies and blew their minds with the possibilities Scratch offers through simple blocks of code. The energy was thrilling and left me pumped.

screen-shot-2016-10-11-at-5-22-51-pmAfter introducing the same concepts of defining rules in code, (and Code Club) the first thing we tried was Motion blocks (ie moving a Sprite with the spacebar). And then we added Looks (ie change color).

 

screen-shot-2016-10-11-at-5-18-03-pm

screen-shot-2016-10-11-at-5-26-41-pmAnd finally, the awesome: Sounds forever!

screen-shot-2016-10-11-at-5-20-03-pm

In reviewing all of Thursday’s projects, I found those kids had some serious fun with Scratch last week!

I can tell I haven’t blogged in a while and I struggled to write this coherently and in a timely fashion.

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.