Lesson 3: Programming in with Angry Birds

Sequencing

Overview

Using characters from the game Angry Birds, students will develop sequential algorithms to move a bird from one side of a maze to the pig at the other side. To do this they will stack code blocks together in a linear sequence.

Purpose

In this lesson, students will develop programming and debugging skills on a computer platform. The block-based format of these puzzles help students learn about sequence and concepts, without having to worry about perfecting syntax.

Agenda

Warm Up: Preview Programming in Maze (3 min)

Main Activity (30 min)

Wrap Up (5 - 10 min)

Extended Learning

View on Code Studio

Objectives

Students will be able to:

  • Translate movements into a series of commands.
  • Construct a program by reorganizing sequential movements
  • Build a computer program from a set of written instructions

Preparation

  • Play through the lesson to find any potential problem areas for your class.
  • (Optional) Pick a couple of puzzles to do as a group with your class.
  • Make sure each student has a journal.

Vocabulary

  • Algorithm - A list of steps to finish a task.
  • Bug - Part of a program that does not work correctly.
  • Debugging - Finding and fixing problems in an algorithm or program.
  • Program - An algorithm that has been coded into something that can be run by a machine.
  • Programming - The art of creating a program.

Support

Report a Bug

Teaching Guide

Warm Up: Preview Programming in Maze (3 min)

To finish the connection, preview an online puzzle (or two) as a class.

Model: Reveal an entire online puzzle from the progression to come. We recommend Puzzle 5. Do they see any similarities to the exercise that they just did? What are the big differences?

Work with your class to drag code into the workspace in such a way that the bird (eventually) gets to the pig.

Transition: Students should now be ready to transition to computers to complete online puzzles on their own.

Main Activity (30 min)

Online Puzzles

Teacher Tip:

Show the students the right way to help classmates by:

  • Don’t sit in the classmate’s chair
  • Don’t use the classmate’s keyboard
  • Don’t touch the classmate’s mouse
  • Make sure the classmate can describe the solution to you out loud before you walk away

Circulate: Teachers play a vital role in computer science education and supporting a collaborative and vibrant classroom environment. During online activities, the role of the teacher is primarily one of encouragement and support. Online lessons are meant to be student-centered, so teachers should avoid stepping in when students get stuck. Some ideas on how to do this are:

  • Utilize Pair Programming - Student Video whenever possible
  • Encourage students with questions/challenges to start by asking their partner
  • Unanswered questions can be escalated to a nearby group, who might already know the solution
  • Remind students to use the debugging process before you approach
  • Have students describe the problem that they’re seeing. What is it supposed to do? What does it do? What does that tell you?
  • Remind frustrated students that frustration is a step on the path to learning, and that persistence will pay off
  • If a student is still stuck after all of this, ask leading questions to get the student to spot an error on their own

Wrap Up (5 - 10 min)

Journaling

Having students write about what they learned, why it’s useful, and how they feel about it can help solidify any knowledge they obtained today and build a review sheet for them to look to in the future.

Journal Prompts:

  • What was today’s lesson about?
  • Draw one of the Feeling Faces - Emotion Images that shows how you felt about today's lesson in the corner of your journal page.

Extended Learning

In small groups, let students design their own mazes on paper and challenge other students or groups to write programs to solve them. For added fun, make life-size mazes with students as the pig and bird.

View on Code Studio

Student Instructions

"Play with these blocks and try to get me to the bad pig!"

View on Code Studio

Student Instructions

Give this one a try.

View on Code Studio

Student Instructions

"Here piggy, piggy!"

What can you add to the end of this code to get the bird to the pig?

View on Code Studio

Student Instructions

Move one way, then another to get the bird to the pig!

View on Code Studio

Student Instructions

Solve this level and get the bird to the pig!

View on Code Studio

Student Instructions

Challenge: Avoid the TNT to get the bird to the pig!

View on Code Studio

Student Instructions

Time for a shorter puzzle! Move one way, then another to get the bird to the pig.

View on Code Studio

Student Instructions

Get that pig!

View on Code Studio

Student Instructions

Get the pig any way you can!

View on Code Studio

Student Instructions

Debug this level. Remove the extra blocks, and add the missing blocks. Get the bird to the pig!

View on Code Studio

Student Instructions

Trace the path to lead the bird to the pig. Avoid TNT or feathers will fly!

Standards Alignment

View full course alignment

CSTA K-12 Computer Science Standards (2017)

AP - Algorithms & Programming
  • 1A-AP-09 - Model the way programs store and manipulate data by using numbers or other symbols to represent information.
  • 1A-AP-11 - Decompose (break down) the steps needed to solve a problem into a precise sequence of instructions.