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.

Computational Thinking

I’m redesigning a coding unit in my New York Academy of Sciences STEM Education in the 21st century online course. I’m building off my Trick or Treat project and the Math Quiz game project that I have taught in the past, infusing the lessons with essential STEM skills like problem solving, critical thinking, and creativity.  The course is really helping me think about my learning objectives for the students. It is also helping me understand the importance of this types of activities – beyond that they are engaging for students.

Concurrent to the course, I’m actually running the unit in two math classes, co-teaching with the classroom teacher so I am able to fine tune the lessons and reflect on what went well or not so well.  Last week we finished up the Trick or Treat project (lesson 1 and 2) just before Halloween.  Here is the project instructions document: Public Trick or Treat instructions. One teacher expressed how organized the project was and how the handout made it easy for her to help students. (All this planning is paying off ) I also had a sample project that I modeled with and had the students brainstorm ideas for different actions when “trick” or when “treat” was selected.

I changed my handout for the next lesson when I heard that students felt they were getting out of learning because it was so much fun.  I wanted to make their learning visible to them.  They needed to know how much computational concepts and thinking they were actually doing. I came across the Creative Computing Curriculum Appendix on Computational Thinking and crafted this reflection page to help my students see what they were learning: Public Scratch: Reflecting on Learning  I went over all the concepts and we talked about how we had already used some of them and some we would use later.  We talked about the different practices, especially testing and debugging.  I was impressed with reflections they did.  I can see that they can identify the concepts and practices they are using as they learn to code.

Screen Shot 2019-11-03 at 6.20.13 PM

4th grader’s reflection

In addition, we spent time on testing and debugging.  I used this project to model how testing and debugging work (I even told the origin story of debugging) and I had a worksheet for them to fill out while testing.

Screen Shot 2019-11-03 at 6.22.55 PM

Reflection on revising

Screen Shot 2019-11-03 at 6.23.19 PM

This student knows how if-then-else blocks work!

Screen Shot 2019-11-03 at 6.24.20 PM

For 3rd grade I simplified it a bit, and still got awesomeness.

 

Screen Shot 2019-11-03 at 6.41.36 PM

 https://scratch.mit.edu/projects/340589577/

(I’m going to just hit send so this doesn’t end up like the numerous other draft posts I’ve written lately.)

3d Printing Club

I have wanted to run a 3d printing club for middle schoolers for a while now (since I discovered BeetleBlocks).  I specifically wanted to have a 3d printing club where we focused on jewelry making in hopes of getting MS girls interested in STEM. I have a 3d printing business and sell my 3d printed jewelry on Etsy and at the Lebanon Farmer’s Market. I see many of my students at the market and know that 3d printing jewelry might be the hook to get more girls interested in 3d printing.

Screen Shot 2019-07-17 at 9.10.43 AM

My earring design ready for sale – a shared project on BeetleBlocks

Yesterday my dream of having a 3d printing club became a reality at the Lebanon Public library and with the collaboration of two librarians. We were able to borrow two 3d printers from libraries around New Hampshire and schedule a couple of summer sessions.  We met a week prior to the first session, when we had the printers, to make sure we could run them and change the filaments, etc.  We have an Ultimaker 2 Go and a MakerBot Replicator.  This is a bit complicated as they take different size filaments and use different programs to prepare the models.  We have some jewelry findings and different color filaments – silver, gold, bronze in 1.75 mm for the MakerBot and blue in 3 mm for the Ultimaker.

We were hoping to get 3 printers and have 3 students per printer for a group of 9, but only 5 had signed up so we opted to go with just 2 printers as the third was at a library on the other side of the state.  When I got there on Monday, there were 9 students.  The librarians had decided to let the drop-in students stay and I was fine with that.

Screen Shot 2019-07-17 at 9.14.52 AM

My notes for my intro to the 3d design & printing process.

After a brief introduction where I wanted to make sure that they understood 3d printing was an iterative process not unlike the engineering design process, I showed them a jar full of bad prints from my jewelry printing business.  Then we got started.

Screen Shot 2019-07-17 at 9.09.47 AM

For the first of the two sessions, I introduced BeetleBlocks and we created simple rings by measuring and using a tube shape (Here’s my video tutorial). In just three lines of code, the rings were created and we were able to have them export and save to a flash drive/sd card.  We loaded half onto one printer and half onto the other and started printing them. Rings take about 5-9 minutes each.  The goal was to have something to take home by the end of the session. Then during the week they could drop in and print another, bigger, individual print like a pendant or a pair of earrings, etc.. The librarians had a list of times when they would be available during the week to help the students print another ring or a pendant.  I thought this would alleviate the problem of having enough class time to get everything printed.

I created a second video tutorial on how to code a pendant or earring from a squiggle. There wasn’t time to go over the whole tutorial during the session and anyway students were busy exploring BeetleBlocks: adding their names to the rings, looking at community projects, playing with extrusions and other shapes. While some just wanted to watch the printers for a while.

Screen Shot 2019-07-17 at 9.09.02 AM

Extrusion pendant by a middle school coder

Next week we are going to explore TinkerCAD as another application that I know that makes it easy to create 3d designs.

Music and Art Projects

My 11th 4th-grade Code Club Showcase is coming up this week. Eleven of 13 projects are ready to go. The last two are showing good progress, so I’m not too worried. I’m seeing the usual variety of virtual pets, flappy bird, pong, quizzes, soccer, chatbot projects, etc. (and yay, no “try not to laugh” games). This current group of projects represents a lot of creativity and effort and we are going to have a great Showcase. There are also two unusual projects that I haven’t seen before.  One is a music quiz and the other a color-by-number game.

The music quiz is very creative and I love it.  This student created his own music and asks the user to identify his songs by name. You can practice by listening to the music he has created before you take the quiz.

Screen Shot 2019-05-13 at 9.47.00 PM

Click the buttons to preview the music before taking the quiz.

I imagined he would code the music with the Scratch music blocks, or want to bootleg popular songs.  Instead, he used Chrome Music Lab’s Song Maker to write his own songs.  I had been experimenting with Chrome Music Lab earlier this year and was excited to see that this was his app of choice to create music.

Screen Shot 2019-05-13 at 9.50.48 PM

Chrome Music Lab’s Song Maker example

The biggest problem we ran into was there is no way to save or record directly from Song Maker. I researched some other ways to record sounds from a website but the simplest we found was to plug in our microphone, start recording in Scratch and then hit the playback button from Song Maker. We made a few poor recordings from the low-quality computer speakers and noisy room and I wasn’t sure he was going to be happy with the results or that it would even be enjoyable to listen to and take his quiz.

Screen Shot 2019-05-12 at 8.25.44 AM

Mr. Songs Alot project

For the final song recording, I let him record in the quieter room adjacent to the computer lab.  It turned out pretty well.  He even gave it a cool name: Mr. Songs Alot.  I hope he gets some good feedback and more students decide to try a game like this.

The other unique project was the Color-by-Number project. I’ve had students create a painting game with the Paint Box project, but not a paint-by-number type project.  I let them work on it a while but it became clear they had no idea how to code it to make the paint appear. So I went looking and I found an example of a paint-by-number project on Scratch that they could examine and learn how someone else coded it.  This is a great way to learn new techniques and algorithms in computer programming.  Software writers are great at this-trying to solve their own problems by looking at someone else’s examples- it is kind of why/how Stack Overflow came to exist.

Screen Shot 2019-05-13 at 7.31.35 PM

Paint by number project

Even after they looked at it, I don’t think they understood that they had to create themselves the illusion using different Sprite costumes to make the color fill in (or they just forgot from one week to the next).

Screen Shot 2019-05-14 at 6.53.06 PM

The “magic” of the paint by number is 2 different costumes for the coloring illusion.

The example had 2 costumes for each different color. One with color and one with the number in it.  When you dragged the paint bucket over the Sprite and clicked, the Sprite went from the number on it to the colored one and the paint bucket goes from filled to empty.    One team member was making the “coloring page” and the other coding the paint buckets. The “coloring page” maker kept making the pages on the Stage while I kept reminding them about the example I gave them.

I worked with the paint bucket coder and we tweaked some of his code so that it is a good project even if it is only one picture to color.

We had some issues with paint buckets when they start on top of the Sprite they were going to color and instantly coloring them in when the green flag is clicked. Also, keeping the “coloring page” Sprites on the visual layer under the buckets was tricky.  I couldn’t find the Scratch 2.0 option to make a Sprite not draggable by the user.  I might have to explore this type of project to see if I can make it into a learning project for one of my groups.

The showcase is tomorrow!!!

Update:  I found out that Song Maker has added a save feature so we can now download a wav file and import into Scratch. This is great.

Superpower Challenge

Monday was the last meeting of the library code club for the year. It was one of those rare warm and sunny New England Spring days and consequently, we had a small group of six.

I went through all of the different projects we worked on over the school year by looking at the projects in the class studios since October.

October: Animated name/Random stuff about me

November: Pong or Catch

December: Christmas Present game or snowball fight game

January: Scratch 3.0/ Year 3000 and text-to-speech

February: Video sensing

March: more video sensing (by popular demand), timers & timing

April: Finite state machine/ Green up your city

For May, I was going to let them revisit one of their creations from the last year and finish or improve it. This is something they ask for when they leave each month. They ask me if they can work on the same project next time. I’m not convinced that they would have the same passion for a project a month later. Still, it is a good idea to look back and reflect on the projects of the past year.

Meanwhile, an email from Code Club USA came and mentioned their Superpower Activate challenge. That sounded fun to me. Superpowers don’t have to be like in the comic books, they can be simple, like being a good friend, helping people, coding, being a team player, quoting movies, or not getting caught with gum in math class.  I came up with this one for me.

Screen Shot 2019-05-07 at 8.29.50 PM

I wasn’t sure how the superpower prompt would go over, but they seemed excited about it after I presented it and showed them my project. I was sure one student was going to work on a previous project, but later I saw him putting together an awesome superpower project.  Four of them made superpower projects to share in our May studio.

One improved a prior project and turned it into her superpower project and one student created a new project about riddles – which might be his superpower.  We were certainly stumped by his riddles.

Screen Shot 2019-05-07 at 8.42.16 PM

I really enjoy leading this group of creative, middle school coders.  We have a small core of coders who have come each month over the last two year and we often have first-time Scratchers as well.  This makes it complicated to find projects so that everyone can be challenged and successful. The creative prompts and projects I find from the Scratch community, Code Club, & Scratch Design Studio have really been engaging.  They have been designed, as Mitch Resnick says, with low floors, high ceilings, and wide walls.