Virtual Code Club ends, another begins

I did twelve weeks of virtual code club. Each week I posted materials in our Google Classroom and sent out an email to parents as well. I occasionally hosted virtual office hours (about every other week) and I also tried to comment on all of the projects the students shared online.

I don’t know how many students participated beyond the few that came to the office hours or that shared projects online. Very few students posted comments in our Classroom and no parent ever responded to my emails after the first one. It is hard to believe no one had any questions, but it is easy to believe that with all of the other virtual classwork students were doing, no one had the bandwidth to add code club on top of it all.

Last virtual code club week post

For the final week, I thought about making another video of myself to say thanks for coming along with me on our virtual code club, but I made this Scratch project instead:

Screen Shot 2020-06-23 at 1.13.12 PM

And challenged them to make a “Thank you card” Scratch project, too.

I posted Code Club certificates for them and closed the book on this experiment. In reflection, I learned that putting out weekly projects with no feedback as to how they are received is hard. I don’t like it. There is no way to change it on the fly to make it work for each student. I really don’t know what I need to change to engage more students, and yet I don’t think it was me that caused low attendance.  It was an optional part of virtual life during emergency remote learning during a pandemic.

So I put out project ideas that I thought they would like and that I liked, too. In the end, there are more Scratchers out there, creating projects that interest them. They may not have the foundational skills I was hoping to instill, but they are part of the Scratch Community and will find it for themselves or perhaps seek out more opportunities and working on more passion projects.

A code club member and Scratcher following his own interests.
Another new Scratcher working on their own passion project.

I’m starting my summer virtual code club through the public library today. I’m hoping some kids come so I can get some feedback and learn to be better at being a virtual code club coach.

Star Wars and a Rogue

May the 4th was this week. This week had the first Monday of May.  The first Monday of May is when my library code club meets.  I was thinking of setting up a Scratch Day project for them, but it was May-the-4th, so obviously I pivoted to a Star Wars theme.

Screen Shot 2020-05-06 at 7.14.39 PM

One of a few Star Wars day studios

Finding Star Wars-themed projects was not hard.  There are a few studios with over 100 projects in them.  A lot of these are fan artwork.  There are some incredible artists in the Scratch community.

I found a project with just a color-changing lightsaber that I thought would make a great starter for a wide range of creative ideas.  I found another project where some standard Scratch Sprites (Gobo, Pico, Nano) have been transformed into Star Wars characters.  Great starter for a Chatbot.  I also imagined a Kessel run maze game would make a nice option for my Creative Coders.

I came across this Mandalorian translator which I thought was a great idea.  (If only there was a Google translate for Star Wars languages.  Isn’t there one for Klingon?) I helped the coder out with a suggestion to make it better and got a generous “DUDE thanks” in return.

I put these all together in a class studio and was ready for our virtual club meeting.

Screen Shot 2020-05-06 at 7.29.34 PM**What’s with the new changes to class studios with class passwords?  I can’t find documentation on how it looks from the student’s view or how to explain this to students.  Also, now that I have more than 20 studios in my class I have a hard time adding projects to studios while looking at a project.  Now  I must save and favorite projects then go to the studio and add projects that I’ve favorited.**  

My library code club was a small group but I was happy to see them and show them the projects I had curated for them.  They seemed to have ideas of what they wanted to create. It’s still weird to send them off to code and just hope they don’t get stuck or get frustrated and not continue.  I told them I would be around coding as well and if they needed help to share their project and comment and I would try to respond quickly.  They each did a project and shared it.  They riffed on my starter of Luke’s saber practice.  One added scoring and another changed it into a pong game.  Which is a great idea.  Meanwhile, I worked to improve my Kessel run project (though it is not great yet).

Screen Shot 2020-05-06 at 7.42.55 PM

Luke’s saber practice project

I had so much fun that I decided to present the same projects to Wednesday’s school code club.  That’s where the rogue part comes in.

Last Friday during a virtual math meeting that had been canceled but no one told me, I hosted a couple of other students who hadn’t got the memo from their parents.  A pair of us started to talk shop about Code Club and I invited one of the other math students to join.  He had been on the code club waiting list and is becoming quite the techno wiz – gifs, crazy characters, Roblox, etc. during this #stayathome remote learning time. He accepted and proceeded to jump fully into the Scratch community.

On Monday he invited me to curate a studio he had set up. He has also found a couple of the other active online Scratchers in the club and now the three of them are the CEOs of the studio (uh, uber-curators?  I was invited, too, but not promoted to CEO).  They are adding projects they are making, commenting on and liking each other’s projects, and asking each other for help. My rogue Code Club member has created 7 projects in 5 days! IT IS AMAZING! Together they have compiled their self-created cool maze games, Zelda themed animations, random works of art, and other amusing projects.  I could not be happier that they have found their own spot together within the Scratch community.  I’m looking at it as a bright spot in this time of social distancing that they have found a community.

I read the profile of one of my other students and it said he’s only 9 but wants to still be a Scratcher when he is 50. So sweet.

 

One last note.  I had the idea to make a Zoom chat from the Star Wars morphed Scratch Sprites, then I found this Sprite Zoom project – it is hilarious!  I shared it with my math class on Zoom today.  We could all relate so much!!!

Screen Shot 2020-05-06 at 9.14.07 PM

Ready to become a Star Wars Zoom meeting

I don’t think I could match that with my Star War Zoom plans.  I hope one of my students gives it a remix.

Virtual Code Club

Last week I took my Code Club virtual as we are all trying to do in education during this time of the Covid-19 pandemic.  Here’s what I did:

I created a Google Classroom and invited all my Code Club members to join.  I created my first post, added the materials, created a short video of me introducing the concept and emailed it all out to all the parents.

Our first lesson was Virtual Pet – here is my lesson Virtual Code Club #1. I kept the format the same as our in-person meeting – Greeting, Discussion, Learning Objective, Project information. I added some links to former Code Club project examples and posted it as material in my Classroom. I didn’t want this to be an assignment with a grade or due date.  This is for fun.

Screen Shot 2020-03-24 at 3.01.22 PM

The majority of my Code Club has accepted my invitation, including my middle-school helpers. Parents emailed back and were thankful and very much appreciated the idea of Code Club continuing. I had a few student comments of “This is fun” and one student who got stuck but then figured it out before I could help him out.  It went like this:

S: I tried this and it didn’t work.

S: What should I do?

S: Oh wait, it’s working now.

Me: What a great example of debugging. Keep testing and trying options. Let me know how it goes.

S: It’s working perfectly now.

My students are young, 9-10 years old, and most of them use Scratch offline versions – like I use with them at school, so I can’t see their projects.  That is one of the toughest parts of virtual for me.  I’m not getting to see their projects.  A lot of them are learning quickly about Classroom and virtual meetings with their class through Meet or Zoom. Eventually, we may do this as well (and I can wear my Scratch cat earrings again).

Today I got an email about #ScratchAtHome from Scratch In Practice.  I will see what support they have and perhaps they’ll have some suggestions for sharing project files and other learning opportunities for my students to be creative with Scratch.

I’m working on this week’s virtual code club project: Flappy Parrot – one of my favorites.  Then I may need to figure out a way to take my Library Code Club virtual, too.

Stay safe and wash your hands.

12th Code Club Starts

I started my 12th session of 4th-grade Code Club last week.  Just like last year, we are going to start off with Snack Discussion. During this first meeting I went over my expectations, rules, and plans for our future meetings:

Meeting # Meeting topic outline
1 First meeting – Rules & goals, intro to Scratch
Ist learning project
3 2nd learning project
4 3rd learning project
5 4th learning project, begin designing your own project
6 Design review
7 Begin individual/pair project
8 Continue work on individual projects
9 Finish work on projects
10 Showcase of projects – Parents invited!

Then I asked them what their goals for Code Club were.  What did they want to learn – because I can present lessons that help them meet their goals.

IMG_2353

What my Code Club wants to learn to make with Scratch

For some, they just want to learn to make Sprites move around using the arrow keys. Others want to make something like a Fortnite or Surviv.io Battle Royale game.  I told them I wouldn’t allow any first-person shooters and I have a general ban on weapons (although I have made the occasional exception for a toilet paper cannon, and a laser gun for shooting blobs).  My 7th-grade helper helped me out by describing the work it would take to “code” the whole landscape of Surviv.io Battle Royale and generally expressing his opinion that it would take too much work to do something of that scale.

I have two former Code Club members as helpers in this session.  I sent out an email last month to the Tech Integrator and other STEM teachers at the high school looking for a possible high school volunteer for Code Club. When I didn’t hear anything, I sent some emails to my first Code Club parents.  Those students are now 9th graders, but I heard back that they are busy.  One younger brother (my 7th-grade helper I mentioned above) was willing to help out. Yay. He arrived (he is really tall now) and asked if it was the same format as when he was in Code Club.  Yep.  I haven’t changed much of the format.  He agreed that it worked as he enjoyed making his own project during the second half of the session.  A fifth-grader and Code Club member from last year also showed up to help.  Once I confirmed with one of his parents that he was allowed to stay, I had two helpers.

I usually start with a maze project or Chatbot.  I decided to start with a Chatbot.  I use Code Club world project directions and I like the first project to be an easy one so they can get used to the direction format. Whenever someone needed help, I’d make sure they had at least looked at the directions.

Other times when someone needed help, I’d have to encourage my helpers to jump in.  I think they had a good time and were helpful.  I heard them complain once about the coders not saving.  “You should save! Often.” I heard the 7th grader say.  I think the students were deleting the whole Sprite when they wanted to make a costume change rather than changing costumes from the costume tab.  I think I’m going to talk about the Sprites and their properties (and saving) next time.

I’m also going to introduce Space Junk as a learning project. It will meet their goals of learning to use arrow keys and the obstacle avoidance games. We are off to a good start.

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.

3d Printing Art Class

I’ve been working with AVA Gallery and Art Center, a local art gallery that offers a large variety of art classes, workshops, and drop-in sessions, to develop a 3d printing class for middle school students. My first class offering is a 5-week, afterschool, 2-hour class for a maximum of 8 students. AVA has a media lab with desktop computers and room to set up my class.

I am supplying my own 3d printers and filament. I have acquired 4 Monoprice mini delta 3d printers for use with the class.  I use a delta printer to run a demo when I’m selling my 3d printed earrings and magnets.  They are highly portable and fun to watch.  We print a different figurine during the summer farmers market each week. Kids are always stopping by to see what we are printing (adults, too).  It generates a lot of curiosity and questions about 3d printing.

IMG_2116

Monoprice Mini Deltas running

For this first session, I have 3 students signed up, 2 girls and 1 boy.  The low number is fine with me because it gives me a chance to run through the mechanics of the class, seeing if my lessons hit or miss.  The students are young middle schoolers – 5th and 6th grade.  I know two of them as they are local and used to go to the elementary school where I work.

My plan for the 5 weeks was to start with BeetleBlocks– rings, nameplates, and Turtle-logo like pendant designs, then switch to TinkerCAD and go from there.  On the first day, I found out that only one of them liked jewelry and was excited about rings, earrings, and necklaces.  The other two, not so much.   They coded and printed rings in BeetleBlocks but weren’t interested in going through the iterative process to reprint them to fit better. Oh well.  While the rings were printing they explored BeetleBlocks, made nameplates or checked out community made designs, but then they were done.

Screen Shot 2020-02-04 at 10.40.12 PM

The next week I introduced TinkerCAD.  I showed them different options for TinkerCAD and let them explore but didn’t direct them to make anything specific.  One student had a very specific figurine in mind but only a beginner’s set of skills and became frustrated. The computers in the lab are also really slow and TinkerCAD was lag-y.  I was telling them to click and breathe for a bit there. One student worked on his project from home and reported that it was quite a bit less frustrating.

IMG_2213

TinkerCAD design worked on at home.

On the third week, I decided to introduce them to lithophanes since TinkerCAD was painful to use.  We went to http://3dp.rocks/lithophane/ and uploaded a photo.  I need to play with the settings a bit more, but Deltas print 3d lithophanes very nicely since the bases don’t move.

IMG_2214

Lithophane photo printing vertically.

 

Next week we are going to search Thingiverse and find something to print. I hope Thingiverse isn’t laggy.  It has trouble loading projects even on a good day. I have an idea for the last week. I think we will make a mobile of our 3d prints to showcase the class and hang it in the AVA.

The students are getting skilled at running the deltas -preheating, loading the filament, extruding, printing. I’m doing the slicing and the gcode generation this time.  I’d thought to install Slic3r on the computers in the media lab and teach the students to slice and generate gcode, but I’m currently doing those steps.

A note for utilizing printer time during class:  As one project is printing, the student work on the next project to have ready to print at the beginning of the next class.  If there were more students, I’d probably have to spend more time out of class printing.

Winter Embedded

During Hour of Code week 2019, I was able to teach all four second-grade classes an introductory Scratch lesson. They were really into it and we had a great time. By the end of the week, they had created 61 new Scratch projects for sharing (in this studio). I had them create a Winter themed, interactive project similar to the one in my We Love Winter post.  The goal was to have 4 Sprites do something when you click on them and one Sprite that introduces the project and gives directions.

Screen Shot 2019-12-30 at 10.01.05 PM.png

The next week they reflected on their projects and got a chance to play each other’s interactive projects, and we added them into the digital portfolios.  For this lesson, I had them find their own game in our studio, play it and then write their reflection.  Once their reflection was done, I gave them an Hour of Code certificate and then let them play their peers’ games for the rest of the period.

I really enjoyed reading their reflections before we added them to their digital portfolios.

Screen Shot 2019-12-30 at 9.35.54 PMScreen Shot 2019-12-30 at 9.34.56 PM

Even the adults enjoyed working with the students on this project.

Although we are still using the Scratch 2.0 offline app in my computer lab, the projects all converted well to Scratch 3.0 online to share.  Once online, I found that that the Copy link button on the website offers HTML code for an easy way to embed the student projects into their Google sites based digital portfolios!  Embedding their project is even slicker than linking the address.

Screen Shot 2019-12-30 at 9.54.59 PM

 

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.