Creative Stress Relief

My library coder’s club for middle school students started up again today. We are meeting once a month, virtually.

Coder's Club library publicity
Creative Coder’s Club library publicity

Last month I received an email from Code Club about their latest new Scratch module and decided that these were just what I needed for my club.

Code Club email

It’s a new year and I won’t know who will show up, who will be new to Scratch, or who will be a returning Scratcher who has done my go-to starter projects. The Stress Ball project was a good fit as a first project for my code club.

My sample project:Pink de-stresser

I created a studio for the well-being module called Take Care and sent out the project info, virtual meeting info and hoped people would sign up and show up. We had 7 coders sign up.

Really cool coder project: Changing stress ball

Six coders showed up to code, which was fantastic! My librarian co-host had some internet trouble at the beginning, but I saw most of the coders faces on screen, which was exciting, and only two were returning students.

I started the meeting by going over the Scratch Community Guidelines and making sure everyone was signed in to their online account. They had the option of using one of my student accounts if they didn’t have their own. I sent out the info for these using the private chat feature of the meeting.

Halloween themed Stressball project

I went slowly through the project, sharing my screen as I created the stress ball, slowing down when coders asked questions. I really appreciated that they would advocate for themselves when they were following what I was doing. It is not easy to know how to pace a virtual meeting and was happy to hear the coders say something when they needed guidance. That doesn’t always happen, but with only six, it was easy for me to check on each student to see how things were going. The project was fairly simple, which helped.

Stress ball code

I made it through the basic project directions in the first half hour which left 15 minutes for everyone to make creative improvements before we shared and played our projects in the last 15.

Cat stress ball

I was really proud that almost everyone was able to add their creative touches, share their projects, and even add their project to our shared class studio. I was able to troubleshoot some issues by asking the coders to share their screens, but mostly those turned out to be account issues -like not being able to “share” a project in a new Scratch account until the email address is confirmed. (That coder was able to share and add his project to our studio later that day. Yay!) I find that adding projects to a studio can be a tricky endeavor sometimes. Navigating to the studio when you aren’t part of the class can be tricky. Inviting curators without knowing how to spell the Scratchers username is tricky. Adding a project you haven’t shared yet – oops, can’t do that – so it’s also tricky. I am getting better at troubleshooting and helping students be successful at this. And it leads to one of the fun parts of being part of the Scratch community- to be able to see and play each others projects.

One student declined to share and I could see there were some frustrations with the coding (and a parent had come in to view to help and explain he was still working on it and didn’t have anything yet). Perfectly understandable. If he needed more time, he had access to all the resources, he could come back at another time and add more.

Expert level coding!

I was also very impressed with one of my returning coders. He took the time to write up directions and play other club members projects and give them good feedback, too. He also helped me out during the Zoom meeting by leaving me comments in the chat. He also sent me a nice note. And exemplar Scratcher.

Sweet thank you note.

As we were signing off at the end and talking up next month’s Butterfly Garden project, I wondered if any of the coders were international students like we have had before. I think a couple of them may have been Canadian. One said it was dark outside at her house, so she’s definitely from a different time zone. I do hope they all come back next month. I sure had a great time. I hope they all did.

Take care

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.

Poetry Generation in Scratch

Fourth graders in Ms. Bradley’s class finished up their Hour of Code projects yesterday and we published their poetry generators in this Poetry Studio.

Screen Shot 2017-12-22 at 7.53.04 AM

These students have been doing quite a bit of poetry work this fall so when I approached their teacher about a Scratch project for Computer Science Ed Week, I had Code Club World’s Ada’s Poetry Generator project in mind.

The students worked in pairs and generated a list of verbs, nouns, adverbs, and adjectives in the classroom before heading to the computer lab.  The next step was to makea stage backdrop in Scratch.  I didn’t want them to use one from the library of backdrops but to create their own.  I showed them how to quickly color fill with a gradient but they all sort of went with lines of color, which looks pretty cool.

Screen Shot 2017-12-22 at 8.21.05 AM

I decided to jump into the middle of the Code Club World project and have them start with creating their lists and coding the poem generator.  I was concerned the papers with the lists of words would disappear before we had a chance to finish up the project.  I was right. We had a snow day on the day they were scheduled to complete the project.  Yesterday, last day before the break, we squeezed in the time to complete the poetry generators.

With the lists already made and the poems coded during the first session, the second work session was aimed at checking their code to make sure everything worked and adding a beginning and an end.  Could you add a second Sprite to introduce the poem generator and give instructions?  Could you some action or music at the end?

Screen Shot 2017-12-22 at 8.14.53 AM

basic poem generation code.

 

 

Screen Shot 2017-12-22 at 8.15.23 AM

A beginning, middle, and end.

 

Then we uploaded the projects to share with the Scratch community.

Some notes on facilitating pair work: I did talk about pair programming before we sat at the computers.  During each session, I would announce “time to switch driver and navigator” at regular intervals, as many weren’t willing to give up control on their own.

Also, don’t give them too much time to work on this or the special effects will outshine the poetry.

Don’t forget to save some time to add instructions, notes, and credits on the project page.  I need to be better at this.

It would have been great to have time to enjoy other classmates’ projects and give feedback, but at least they are posted and shared.

I would do this project again.

 

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

New Code Club Starts

I am collaborating with the children’s librarian in my city to run a monthly code club for kids 8-12.  Our first meeting was last Monday.  We had six kids show up.  I knew three of them from two years ago when they were in my after-school 4th grade Code Club.  It was great to see them again.  The other three were mostly new to Scratch.  One of the coder’s grandmother stayed for the session and we set her up to play and learn Scratch, too, and she jumped right in a made a Chatbot project.

Screen Shot 2017-10-08 at 6.10.14 PM

I knew we were going to be using the library’s Chromebooks, so I set up a teacher account and a class along with some student accounts.  I figured a few of the coders might have a Scratch account already.  One said he did but didn’t remember it.  They all ended up using one of the class accounts.   That made it easy for sharing their projects at the end of the session.

Chatbot is one of my favorite projects from Code Club World.  It requires only one Sprite and Stage, is interactive, and the projects can become very creative very quickly.   It introduces the conditional block “if then, else”, a powerful, useful coding block for decision making.  It also introduces the ask-answer block pair as a quick way to introduce interactivity. The expert coders sort of remembered Chatbot but were very happy to revisit it.

By the end of the session, everyone was successful in setting up a Chatbot and coding an “if then, else” block at the least.  Some added more complexity with movements and costume changes. It was fun to see the different, creative takes on Chatbot.  The coders shared their projects, even though some were not complete and we played them all through.  I put them in our October project studio and liked them all.

Screen Shot 2017-10-08 at 6.42.18 PM.png

I thought the English/Spanish Chatbot project was a great idea – it could be a cool way to show what you’ve learned from Spanish class.

We asked the club members what types of projects they wanted to work on in future meetings.  I heard ideas ranging from Ghost Busters, Pong, anything with horses, to a platform game. Good ideas!  We are hoping more kids sign up and we can grow the club a bit.

It was great to be back working with Scratchers.  My after-school Code Club starts up next week. More new Scratchers.

Game State – Game Loop

This week we tried out Code Club World’s Desert Race project.  One Code Club member used this for his independent project last round, so we had one expert.  We used his final project to demo the game. Screen Shot 2017-03-12 at 11.20.11 AM

Desert Race is a fairly simple 2-person race to the finish.  The main concept in this game is setting a game state variable to control the action. In event driven games is important to control the allowable events – like when to start. And we don’t want anyone to cheat by starting before the start signal.  Setting up a game state variable, ‘racing’, like a Boolean with 0 (not racing) and 1 (racing) is the concept I was hoping they would take in while making a cool two person game.

Defining a Boolean for game state is the first step to building a Game Loop that programmers use when creating more complex games.

Scratch Wiki also refers to it here: https://wiki.scratch.mit.edu/wiki/Game_Loop.

My fourth graders may not ever get to that level of programming here in Code Club, but it is a powerful idea. I have used this programming technique in (non-Scratch) games I’ve created in the past and found it useful.

I also made a quick version of the project adding a bit of 3D perspective with my Space Race project.  The racers (cat and dog) get smaller as they head to be the first to reach the planet.

Screen Shot 2017-03-12 at 11.26.57 AM

The students made some nice games. Many customized their Sprites and a couple recorded their own “win” sounds.

This one below has some almost imperceivable pitfalls that send you backwards (the opposite of a booster).

At the end of the day a few students asked to be able to keep working on the Desert Race project for next week -they needed more time and were enjoying the project.  I think I’ll let them, but I’ll need another project for those who finished or want to move on.  So I asked one of the two girls in the Club what she would like to work on and she said, how about making an ebook.  I asked if she meant like an animated story?  I’d love to focus on animation more – there are some great techniques to making things look like they are moving – I love Tumbling Santa.  Also, I’m thinking I need to show her Bubble103’s Scratch projects.  Maybe she wants to make a tutorial (nonfiction ebook).  There are a lot of How To projects on the Scratch site.  I’m considering these two options for next week.

Also awesome this week was this project:

Screen Shot 2017-03-12 at 12.18.11 PM.png

This student’s race project was lost when Scratch 2.0 offline editor crashed. He was mostly done and he lost all his code. Instead of recreating it, he made this cool project. (It is a bit glitchy, but neat.)

Pong with Flair

This week in Code Club we worked on a Scratch game project that was simple in design but could be creatively enhanced quite easily.  We used Simon Haughton’s Pong game directions.  That’s right, the old Pong game.  Of course, these 10 year olds had never heard of Pong.

When considering what project to try this week I took a look at the new Code Club Scratch projects that have just become available.  I have no doubt my students would love them all, especially Dodgeball.  I’m considering that for next time.

After their struggles with Paint Box, though,  I wanted to introduce a simpler project and Pong fit the bill.  My high school volunteers were excited about it, too.  One said he had written a Pong game before.

I started our code club meeting by talking about the independent project that is coming up. I want them to start thinking about what game or animation they want to design.  My goal, I explained, was to introduce a variety of projects to them so they could get an idea of what was possible to make using Scratch. They could even take a project they have already started and enhance it to make it their own.

With that in mind we started Pong.

Screen Shot 2015-02-13 at 9.46.39 PM

a new coders’ Pong game

I also put the original 2-person Pong game on screen and a break-out style game to give them ideas of where this kind of game could go.  It didn’t take them long to code their game so there was plenty of time for their creativity to come out.

Screen Shot 2015-02-13 at 9.47.11 PM

A code club girl’s take on Pong

Some students added extra objects on the screen to interact with and get or lose points.  Others spent extra time with the background and sounds.

There was even time at the end to look at or work on previous projects and think about their independent project that is coming up.  I saw one student adding more to his ChatBot project, another looking online at last sessions’ Showcase #1 projects.

A couple of students have asked if they could work in groups of three for the individual project.  I have my reservations about this.  Pair programming is hard enough. Some groups worked well together last time, others…. I have to come to a decision about this soon.