Playful Coding with Blocks – Kindergarten – Grade 2

Playful Coding with Blocks: A 16-Week Self-Study Course

Course Description:

Welcome to “Playful Coding with Blocks,” an engaging and accessible 16-week self-study course designed to introduce the exciting world of coding through visual block-based programming. This course is perfect for motivated beginners and intermediate learners who want to build a strong foundation in computational thinking, problem-solving, and creative expression through code. We’ll start with the absolute basics, gradually building up your skills as you create interactive stories, fun games, and clever animations using intuitive drag-and-drop blocks. Get ready to unleash your creativity and discover the joy of making your ideas come to life with code!

Primary Learning Objectives:

  • Understand fundamental programming concepts such as sequences, loops, conditionals, and variables.
  • Apply computational thinking skills to break down problems, design solutions, and debug code.
  • Create interactive projects, animations, and simple games using block-based programming environments.
  • Develop an iterative approach to project development, including planning, coding, testing, and refining.
  • Foster creativity and critical thinking through hands-on coding challenges and projects.

Necessary Materials:

  • Computer or Tablet: A desktop computer, laptop, or modern tablet with internet access.
  • Internet Connection: Stable and reliable internet access to use online block-based coding platforms.
  • Web Browser: A modern web browser (e.g., Chrome, Firefox, Edge, Safari).
  • Scratch Account (Free): We will primarily use Scratch (scratch.mit.edu), a free online block-based programming environment developed by MIT. Learners will need to create a free account.
  • Optional: Notebook and pen/pencil for sketching ideas and taking notes.

Course Content: 14 Weekly Lessons

Week 1: Introduction to Block Coding & Scratch Basics

Title: Your First Blocks: Hello, Scratch!

Learning Objectives:

  1. Understand what block-based coding is and why it’s a great starting point for programming.
  2. Navigate the Scratch interface, identifying key areas like the Stage, Sprites, and Blocks Palette.
  3. Create a simple sequence of commands to make a Sprite move.

Key Vocabulary:

  • Block-based coding: A visual programming language where code is represented by draggable, interlocking blocks.
  • Scratch: A free block-based visual programming language and online community developed by MIT.
  • Sprite: A character or object on the Scratch Stage that can be programmed.
  • Stage: The background area in Scratch where your Sprites move and interact.
  • Blocks Palette: The area in Scratch containing different categories of coding blocks.
  • Script Area: The area where you drag and snap blocks together to create a program.

Content:

Welcome to the exciting world of coding! Today, we’re diving into block-based coding, specifically using a fantastic platform called Scratch. Think of coding like giving instructions to a computer. Instead of writing complex text, we’ll be using colorful blocks that snap together like LEGOs. This makes it super easy to understand how code works and to build your own projects.

The Scratch interface might seem like a lot at first, but let’s break it down. On the right, you’ll see the “Stage” – this is where your creations come alive. Below the Stage are your “Sprites,” which are the characters or objects that perform actions on the Stage. The main star of the show is the “Blocks Palette” on the left. This is where all your coding commands live, organized by color and category. And finally, the large central area is the “Script Area,” where you drag blocks from the palette and snap them together to tell your Sprites what to do.

Our first step is to make our default Scratch Cat Sprite move! We’ll find a “move” block, drag it to the Script Area, and then add an event block to make it run. It’s like telling the cat, “When I click the green flag, move 10 steps!” You’ll see how quickly you can make things happen.

Hands-on Example:

  1. Go to scratch.mit.edu and create a free account.
  2. Start a new project.
  3. Drag a “when green flag clicked” block from the “Events” category (yellow).
  4. Drag a “move 10 steps” block from the “Motion” category (blue) and snap it below the “when green flag clicked” block.
  5. Click the green flag on the Stage to see your Sprite move.
  6. Experiment by changing the number of steps and adding multiple “move” blocks.

Week 2: Sequencing and Events

Title: Choreographing Your Code: A Sequence of Actions

Learning Objectives:

  1. Understand the concept of sequencing in programming.
  2. Utilize various event blocks to initiate scripts.
  3. Combine multiple motion and look blocks to create short animations.

Key Vocabulary:

  • Sequence: The order in which commands are executed in a program, one after another.
  • Event: Something that happens that a program can respond to (e.g., a key press, a click).

Content:

In coding, the order of your instructions matters a lot! This is called “sequencing.” Just like following a recipe step-by-step, your computer executes code from top to bottom. If you want your Sprite to move forward and then turn, you need to put the “move” block before the “turn” block. We’ll explore this by creating a simple dance or obstacle course for our Sprite, adding multiple actions in a specific sequence.

We’ll also deepen our understanding of “events.” Last week, we used the “when green flag clicked” event. This week, we’ll try other events like “when [space] key pressed” or “when this sprite clicked” to make our programs more interactive. Imagine making your Sprite jump when you press the spacebar or say “ouch” when you click on it!

Hands-on Example:

  1. Create a new project.
  2. Make your Sprite draw a square using a sequence of “move” and “turn” blocks. Remember to use the “pen down” and “pen up” blocks from the “Pen” extension (click the “Add Extension” button in the bottom left).
  3. Add different event blocks to trigger the square drawing (e.g., when ‘s’ key pressed, when Sprite clicked).
  4. Challenge: Can you make your Sprite change color or say something after drawing the square, still maintaining the correct sequence?

Week 3: Loops – Repeating Actions

Title: Repeat After Me: The Power of Loops

Learning Objectives:

  1. Identify situations where repeating code is useful.
  2. Implement “repeat” loops to execute a block of code a specified number of times.
  3. Understand the efficiency benefits of using loops.

Key Vocabulary:

  • Loop: A programming construct that repeats a block of code multiple times.
  • Iteration: A single pass through a loop.
  • Efficiency: Doing something in the most effective way, often with less code.

Content:

Have you ever had to do the same thing over and over again? It can be tedious, right? In coding, we have a magical tool called a “loop” that helps us avoid repeating ourselves. Instead of dragging 10 “move 10 steps” blocks, we can simply use a “repeat 10” loop around a single “move 10 steps” block. This makes our code much shorter, easier to read, and less prone to errors.

We’ll focus on the “repeat (number) times” loop this week. We’ll see how it can be used to make a Sprite walk across the screen, spin in a circle, or even draw more complex shapes with fewer blocks. It’s all about thinking, “What action do I want to repeat, and how many times?”

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *