Coding with Scratch
Scratch is my go-to coding resource for elementary and middle school students. Why? The learning curve is gentle, it uses drag and drop blocks, and it lays out a strong foundation for coding with other languages in the future. Is it real coding? Well, that may be up for debate, but even if you don’t think it’s real coding, it doesn’t take away from how great Scratch is. Most kids aren’t going to have to code heavily in their careers, so why jump into something more cumbersome and frustrating? Real coding is not for everyone, and pushing too much too soon will only turn kids off to it. If students show an aptitude or affinity for coding, they will likely move on from Scratch to something like Python, Java, HTML, etc. If not, there is always time for that later (or not at all). Scratch allows students to enjoy a basic introduction to coding without having to deal with things like missing syntax, code that just won’t compile, code that runs but doesn’t do what you expect, etc.
Getting Started with Scratch
If you haven’t used Scratch before or are still relatively new, I would recommend heading to the following two posts first:
Start Coding with Scratch Coding Cards
Basic Coding for Elementary Students
Dive Deeper with Scratch
If you are ready to move beyond introductory Scratch activities, try having students code a nursery rhyme. While I love Fairy Tale STEM challenges for hands-on learning, because it ties into literacy and engages all students, coding an entire fairy tale would be a project for more advanced students who could undertake a challenge that lasted half the school year. For most students, though, the sweet spot for coding projects is a few class periods; long enough to dive deeper but not so long that it becomes boring or overwhelming. One thing that I do find important is to follow the computer programming process.
Follow the Computer Programming Process
Define the problem. What problem are you trying to solve?
Design the architecture. What will the main blocks of code be?
Develop the code. Write the code in the blocks you defined in the previous step.
Test and debug. This step can take awhile, or be ongoing.
Reflect and share. Think about what worked well or didn’t, file it away in your thought palace for next time! Share your code with others and get their input.
Maintain the program. This is important in case of updates, etc.
*Please note the poster above can be found in the resource listed at the end of this post.
When students are coding, it’s a great brain-stretch task to have them experiment with a variety of ways to do something. How many different ways can you think of to accomplish the same task?
The Fun Part of Coding
Not everyone will want to spend time optimizing their code or making it elegant, and for beginning tasks, as long as it works I am pretty happy. The most fun part of coding is putting your personal flair on it. Maybe you have a talented artist who can draw amazing sprites, or make great sound effects, or present it in some unique way. For this example of a nursery rhyme code, I added in a spam joke, because who doesn’t love a good spam joke?
Find Nursery Rhymes to Code
Here are some links to nursery rhymes, especially for ELL or ones who have forgotten:
Enchanted Learning Nursery Rhymes
Try Nursery Rhyme Coding Challenges
You can use the links above to browse through nursery rhymes, then use Scratch to recreate them. If you want something that is more planned out, with printables and design elements, please head to Teachers pay Teachers for this coding resource:
See a video overview below:
Scratch is developed by the Lifelong Kindergarten Group at the MIT Media Lab. See http://scratch.mit.edu.
Pin these ideas for later:
1 Comment
Leave your reply.