ALEX Resources

Narrow Results:
Lesson Plans (1) A detailed description of the instruction for teaching one or more concepts or skills. Learning Activities (1) Building blocks of a lesson plan that include before, during, and after strategies to actively engage students in learning a concept or skill. Classroom Resources (17)


ALEX Lesson Plans  
   View Standards     Standard(s): [MA2015] (4) 4 :
4 ) Find all factor pairs for a whole number in the range 1-100. Recognize that a whole number is a multiple of each of its factors. Determine whether a given whole number in the range 1-100 is a multiple of a given one-digit number. Determine whether a given whole number in the range 1-100 is prime or composite. [4-OA4]

[DLIT] (4) 13 :
7) Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

Subject: Digital Literacy and Computer Science (4), or Mathematics (4)
Title: Using Scratch to Create a Multiple Game
Description:

Students will use the free online coding program Scratch to learn the basics of coding and how to use blocks and animations to create a game. Students will create a game to find multiples of a given factor by making a character fly into the correct multiple of the given factor. The student will go through a series of coding steps to create a background, make a character fly, and create the factor and multiple game.

This lesson plan was created as a result of the Girls Engaged in Math and Science, GEMS Project.




ALEX Learning Activities  
   View Standards     Standard(s): [DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

Subject: Digital Literacy and Computer Science (4)
Title: Can You Debug?
Description:

Students will learn about Grace Hopper, who was a computer science pioneer that was one of the first programmers of the Mark I, invented one of the first compiler related tools, and coined the term “debug”. They will practice their detection and debugging skills as they work through several algorithms created by the teacher.

This activity was created as a result of the DLCS COS Resource Development Summit.




ALEX Learning Activities: 1

Go To Top of page
ALEX Classroom Resources  
   View Standards     Standard(s): [DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

Subject: Digital Literacy and Computer Science (4)
Title: Programming Languages
URL: https://classic.csunplugged.org/programming-languages/
Description:

Computers are usually programmed using a “language,” which is a limited vocabulary of instructions that can be obeyed. One of the most frustrating things about programming is that computers always obey the instructions to the letter, even if they produce a crazy result. This activity gives children some experience with this aspect of programming.



   View Standards     Standard(s): [DLIT] (2) 8 :
2) Create an algorithm for other learners to follow.

Examples: Unplugged coding activities, illustrate sequence of a process such as baking a cake.

[DLIT] (3) 11 :
5) Create an algorithm to solve a problem as a collaborative team.

Examples: Move a character/robot/person through a maze. List steps to build a sandwich.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

[DLIT] (4) 11 :
5) Use flowcharts to create a plan or algorithm.

[DLIT] (5) 8 :
2) Create an algorithm to solve a problem while detecting and debugging logical errors within the algorithm.

Examples: Program the movement of a character, robot, or person through a maze.
Define a variable that can be changed or updated.

[DLIT] (5) 9 :
3) Create an algorithm that is defined by simple pseudocode.

Subject: Digital Literacy and Computer Science (2 - 5)
Title: Sorting Networks
URL: https://classic.csunplugged.org/sorting-networks/
Description:

To make computers go faster, it can be a lot more effective to have several slower computers working on a problem than a single fast one. This raises questions about how much of the computation can be done at the same time.

Here we use a fun team activity to demonstrate an approach to parallel sorting. It can be done on paper, but we like to get students to do it on a large scale, running from node to node in the network.



   View Standards     Standard(s): [DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

Subject: Digital Literacy and Computer Science (4)
Title: 2D Shape Drawing Debugging
URL: https://www.barefootcomputing.org/resources/2d-shape-drawing-debugging
Description:

In this activity, pupils will follow an algorithm to draw pictures constructed from 2D shapes. The algorithms they follow will include errors and pupils will use logical reasoning to detect and correct these.

PUPIL OBJECTIVES:
I can use logical reasoning to detect and correct errors in an algorithm.


TEACHING ASSESSMENT OPPORTUNITIES:
Informal, teacher assessment of progress during the main task, class discussions and plenary. Focus on how pupils use logical reasoning to identify errors in an algorithm and fix errors in the algorithm.
Formal, summative assessment of debugging sheets if required.



   View Standards     Standard(s): [DLIT] (3) 8 :
2) Analyze a given list of sub-problems while addressing a larger problem.

Example: Problem - making a peanut butter sandwich; sub-problem - opening jar, finding a knife, getting the bread.
Problem - design and share a brochure; sub-problem - selecting font, choosing layout.

[DLIT] (3) 13 :
7) Test and debug a given program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

Examples: Sequencing cards for unplugged activities, online coding practice.

[DLIT] (4) 8 :
2) Formulate a list of sub-problems to consider while addressing a larger problem.

Examples: Problem - a multi-step math problem; sub-problem - steps to solve.
Problem - light bulb does not light; sub-problem - steps to resolve why.

[DLIT] (4) 9 :
3) Show that different solutions exist for the same problem or sub-problem.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

[DLIT] (4) 13 :
7) Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

[DLIT] (5) 8 :
2) Create an algorithm to solve a problem while detecting and debugging logical errors within the algorithm.

Examples: Program the movement of a character, robot, or person through a maze.
Define a variable that can be changed or updated.

[DLIT] (5) 12 :
6) Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs.

[DLIT] (5) 14 :
8) Demonstrate that programs require known starting values that may need to be updated appropriately during the execution of programs.

Examples: Set initial value of a variable, updating variables.

[DLIT] (6) 7 :
1) Remove background details from an everyday process to highlight essential properties.

Examples: When making a sandwich, the type of bread, condiments, meats, and/or vegetables do not affect the fact that one is making a sandwich.

[DLIT] (6) 14 :
8) Create a program that initializes a variable.

Example: Create a flowchart in which the variable or object returns to a starting position upon completion of a task.

[DLIT] (7) 12 :
6) Create and organize algorithms in order to automate a process efficiently.

Example: Set of recipes (algorithms) for preparing a complete meal.

[DLIT] (7) 13 :
7) Create a program that updates the value of a variable in the program.

Examples: Update the value of score when a coin is collected (in a flowchart, pseudocode or program).

[DLIT] (7) 14 :
8) Formulate a narrative for each step of a process and its intended result, given pseudocode or code.

[DLIT] (8) 9 :
3) Create an algorithm using a programming language that includes the use of sequencing, selections, or iterations.

Example: Use a block-based or script programming language
Step 1: Start
Step 2: Declare variables a, b and c.
Step 3: Read variables a, b and c.
Step 4: If a>b
      If a>c
         Display a is the largest number.
     Else
         Display c is the largest number.
   Else
      If b>c
         Display b is the largest number.
      Else
         Display c is the greatest number.
Step 5: Stop

[DLIT] (8) 13 :
7) Create a program that includes selection, iteration, or abstraction, and initializes, and updates, at least two variables.

Examples: Make a game, interactive card, story, or adventure game.

[DLIT] (8) 29 :
23) Design a digital artifact to propose a solution for a content-related problem.

Example: Create a presentation outlining how to create a cost-efficient method to melt snow on roads during the winter.

[DLIT] (8) 35 :
29) Create an artifact to solve a problem using ideation and iteration in the problem-solving process.

Examples: Create a public service announcement or design a computer program, game, or application.

Subject: Digital Literacy and Computer Science (3 - 8)
Title: Art
URL: https://csfirst.withgoogle.com/c/cs-first/en/art/overview.html
Description:

In Art, students create animations, interactive artwork, photograph filters, and other exciting, artistic projects.

Art is a complete theme designed to be completed over eight, 45-75 minute, sessions. For each Activity, students will watch a series of videos and create one coding project with opportunities to personalize their work using “Add-Ons”, which are mini-coding challenges that build on top of the core project.

Be sure to review the Materials tab for the lesson plan, starter guide, and more.

Users will need a Google account to use this resource.  



   View Standards     Standard(s): [DLIT] (3) 10 :
4) Examine logical reasoning to predict outcomes of an algorithm.

[DLIT] (3) 13 :
7) Test and debug a given program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

Examples: Sequencing cards for unplugged activities, online coding practice.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

Subject: Digital Literacy and Computer Science (3 - 4)
Title: Bug in the Water Cycle
URL: https://www.barefootcomputing.org/resources/bug-in-the-water-cycle
Description:

In this activity, pupils are challenged to detect and correct the error in a number of water cycle programs (debugging). They use logical reasoning to do this, comparing what the program should do with what it does do, and systematically homing in on the error (bug) by ‘thinking through’ the code in the program.

PUPIL OBJECTIVES:
I can use logical reasoning to debug a program.
I can explain how I debugged a program.


TEACHING ASSESSMENT OPPORTUNITIES:
Informal teacher assessment of pupils as they tackle the debugging challenge: focus on pupils’ logical approach and ability to explain the bugs they found, why they are bugs and how they corrected them.
Summative assessment of pupils’ debugging challenge sheets.



   View Standards     Standard(s): [DLIT] (3) 13 :
7) Test and debug a given program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

Examples: Sequencing cards for unplugged activities, online coding practice.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

[DLIT] (5) 8 :
2) Create an algorithm to solve a problem while detecting and debugging logical errors within the algorithm.

Examples: Program the movement of a character, robot, or person through a maze.
Define a variable that can be changed or updated.

[DLIT] (6) 6 :
R6) Produce, review, and revise authentic artifacts that include multimedia using appropriate digital tools.

[DLIT] (6) 7 :
1) Remove background details from an everyday process to highlight essential properties.

Examples: When making a sandwich, the type of bread, condiments, meats, and/or vegetables do not affect the fact that one is making a sandwich.

[DLIT] (6) 11 :
5) Identify algorithms that make use of sequencing, selection or iteration.

Examples: Sequencing is doing steps in order (put on socks, put on shoes, tie laces); selection uses a Boolean condition to determine which of two parts of an algorithm are used (hair is dirty? True, wash hair; false, do not); iteration is the repetition of part of an algorithm until a condition is met (if you're happy and you know it clap your hands, when you're no longer happy you stop clapping).

[DLIT] (6) 14 :
8) Create a program that initializes a variable.

Example: Create a flowchart in which the variable or object returns to a starting position upon completion of a task.

Subject: Digital Literacy and Computer Science (3 - 6)
Title: Storytelling
URL: https://csfirst.withgoogle.com/c/cs-first/en/storytelling/overview.html
Description:

In Storytelling, students use computer science to tell fun and interactive stories. Storytelling emphasizes creativity by encouraging students to tell a unique story each day.

Storytelling is a complete theme designed to be completed over eight, 45-75 minute sessions. For each Activity, students will watch a series of videos and create one coding project with opportunities to personalize their work using “Add-Ons”, which are mini-coding challenges that build on top of the core project.

This Unit Plan consists of eight activities to be completed over multiple days or weeks. 

Be sure to review the Materials tab for the lesson plan, starter guide, and more. 

Users will need a Google account to use this resource. 



   View Standards     Standard(s): [DLIT] (4) 6 :
R6) Produce, review, and revise authentic artifacts that include multimedia using appropriate digital tools.

[DLIT] (4) 8 :
2) Formulate a list of sub-problems to consider while addressing a larger problem.

Examples: Problem - a multi-step math problem; sub-problem - steps to solve.
Problem - light bulb does not light; sub-problem - steps to resolve why.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

[DLIT] (4) 13 :
7) Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

[DLIT] (4) 27 :
21) Develop, test, and refine prototypes as part of a cyclical design process to solve a simple problem.

[DLIT] (5) 6 :
R6) Produce, review, and revise authentic artifacts that include multimedia using appropriate digital tools.

[DLIT] (5) 8 :
2) Create an algorithm to solve a problem while detecting and debugging logical errors within the algorithm.

Examples: Program the movement of a character, robot, or person through a maze.
Define a variable that can be changed or updated.

[DLIT] (5) 12 :
6) Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs.

[DLIT] (5) 14 :
8) Demonstrate that programs require known starting values that may need to be updated appropriately during the execution of programs.

Examples: Set initial value of a variable, updating variables.

[DLIT] (5) 34 :
28) Develop, test, and refine prototypes as part of a cyclical design process to solve a complex problem.

Examples: Design backpack for a specific user's needs; design a method to collect and transport water without the benefit of faucets; design boats that need to hold as much payload as possible before sinking; design models of chairs based on specific user needs.

[DLIT] (6) 6 :
R6) Produce, review, and revise authentic artifacts that include multimedia using appropriate digital tools.

[DLIT] (6) 14 :
8) Create a program that initializes a variable.

Example: Create a flowchart in which the variable or object returns to a starting position upon completion of a task.

[DLIT] (7) 6 :
R6) Produce, review, and revise authentic artifacts that include multimedia using appropriate digital tools.

[DLIT] (7) 13 :
7) Create a program that updates the value of a variable in the program.

Examples: Update the value of score when a coin is collected (in a flowchart, pseudocode or program).

[DLIT] (7) 14 :
8) Formulate a narrative for each step of a process and its intended result, given pseudocode or code.

[DLIT] (8) 6 :
R6) Produce, review, and revise authentic artifacts that include multimedia using appropriate digital tools.

[DLIT] (8) 7 :
1) Design a function using a programming language that demonstrates abstraction.

Example: Create a program that utilizes functions in an effort remove repetitive sequences of steps.

[DLIT] (8) 9 :
3) Create an algorithm using a programming language that includes the use of sequencing, selections, or iterations.

Example: Use a block-based or script programming language
Step 1: Start
Step 2: Declare variables a, b and c.
Step 3: Read variables a, b and c.
Step 4: If a>b
      If a>c
         Display a is the largest number.
     Else
         Display c is the largest number.
   Else
      If b>c
         Display b is the largest number.
      Else
         Display c is the greatest number.
Step 5: Stop

[DLIT] (8) 13 :
7) Create a program that includes selection, iteration, or abstraction, and initializes, and updates, at least two variables.

Examples: Make a game, interactive card, story, or adventure game.

[DLIT] (8) 35 :
29) Create an artifact to solve a problem using ideation and iteration in the problem-solving process.

Examples: Create a public service announcement or design a computer program, game, or application.

Subject: Digital Literacy and Computer Science (4 - 8)
Title: Game Design
URL: https://csfirst.withgoogle.com/c/cs-first/en/game-design/overview.html
Description:

In Game Design, students learn basic video game coding concepts by making different types of games, including racing, platform, launching, and more! 

Game Design is a complete theme designed to be completed over eight, 45-75 minute, sessions. For each activity, students will watch a series of videos and create one coding project with opportunities to personalize their work using “Add-Ons”, which are mini-coding challenges that build on top of the core project.

Be sure to review the Materials tab for the lesson plan, starter guide, and more.

Users will need a Google account to use this resource. 



   View Standards     Standard(s): [DLIT] (4) 8 :
2) Formulate a list of sub-problems to consider while addressing a larger problem.

Examples: Problem - a multi-step math problem; sub-problem - steps to solve.
Problem - light bulb does not light; sub-problem - steps to resolve why.

[DLIT] (4) 9 :
3) Show that different solutions exist for the same problem or sub-problem.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

[DLIT] (4) 13 :
7) Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

[DLIT] (4) 27 :
21) Develop, test, and refine prototypes as part of a cyclical design process to solve a simple problem.

Subject: Digital Literacy and Computer Science (4)
Title: Computer Science Fundamentals Unit 6 Course E Lesson 16: Functions With Harvester (2018)
URL: https://curriculum.code.org/csf-18/coursee/16/
Description:

Students have practiced creating impressive designs in Artist and navigating mazes in Bee, but today they will use functions to harvest crops in Harvester. This lesson will push students to use functions in new ways by combining them with while loops and if / else statements.

This lesson is meant to further push students to use functions in more creative ways. By also using conditionals and loops, students will learn there are many ways to approach a problem, but some are more efficient than others. These puzzles are intended to increase problem-solving and critical thinking skills.

Students will be able to:
- recognize when a function could help to simplify a program.
- use pre-determined functions to complete commonly repeated tasks.

Note: You will need to create a free account on code.org before you can view this resource.



   View Standards     Standard(s): [DLIT] (4) 8 :
2) Formulate a list of sub-problems to consider while addressing a larger problem.

Examples: Problem - a multi-step math problem; sub-problem - steps to solve.
Problem - light bulb does not light; sub-problem - steps to resolve why.

[DLIT] (4) 9 :
3) Show that different solutions exist for the same problem or sub-problem.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

[DLIT] (4) 13 :
7) Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

[DLIT] (4) 19 :
13) Synthesize complex information from multiple sources in different ways to make it more useful and/or relevant.

[DLIT] (4) 27 :
21) Develop, test, and refine prototypes as part of a cyclical design process to solve a simple problem.

Subject: Digital Literacy and Computer Science (4)
Title: Computer Science Fundamentals Unit 6 Course E Lesson 19: Determine the Concept (2018)
URL: https://curriculum.code.org/csf-18/coursee/19/
Description:

This series brings together concepts from previous lessons and gives students a chance to think critically about how they would solve each problem, but without telling them which concept to apply. Students will review basic algorithms, debugging, repeat loops, conditionals, while loops, and functions.

It's important for students to remember that computer science provides plenty of opportunities to be creative. Every topic can be combined with another to make something bigger and better. In this lesson, students will use previously learned concepts together, allowing for a "big picture" view of programming projects. This lesson will also bridge any gaps in understanding of when to use certain programming tools over others.

Students will be able to:
- recognize which programming concept to use to solve a given problem.
- describe the different ways one could solve a given problem.

Note: You will need to create a free account on code.org before you can view this resource.



   View Standards     Standard(s): [DLIT] (4) 6 :
R6) Produce, review, and revise authentic artifacts that include multimedia using appropriate digital tools.

[DLIT] (4) 8 :
2) Formulate a list of sub-problems to consider while addressing a larger problem.

Examples: Problem - a multi-step math problem; sub-problem - steps to solve.
Problem - light bulb does not light; sub-problem - steps to resolve why.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

[DLIT] (4) 13 :
7) Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

[DLIT] (4) 27 :
21) Develop, test, and refine prototypes as part of a cyclical design process to solve a simple problem.

Subject: Digital Literacy and Computer Science (4)
Title: Computer Science Fundamentals Unit 6 Course E Lesson 25: Build Your Project (2018)
URL: https://curriculum.code.org/csf-18/coursee/25/
Description:

Over the course of four lessons, students will be building up to programming a project of their own design using either Sprite Lab or Artist as their programming environment. Now the students will be given their own space to create their project with either Artist or Sprite Lab. This is likely to be the longest stage of the project. The lesson guide for all four stages of the process can be found in the first stage of this project process here.

This lesson provides students with ample time to build and revise their projects. The trial and error inevitably involved in this lesson will teach problem solving and persistence.

Students will be able to:
- use the planned design as a blueprint for creation.
- overcome obstacles such as time constraints or bugs.

Note: You will need to create a free account on code.org before you can view this resource.



   View Standards     Standard(s): [DLIT] (4) 7 :
1) Construct a basic system of numbers, letters, or symbols to represent information as a cipher.

Examples: Combine data from multiple sources, sorting multi-level.

[DLIT] (4) 8 :
2) Formulate a list of sub-problems to consider while addressing a larger problem.

Examples: Problem - a multi-step math problem; sub-problem - steps to solve.
Problem - light bulb does not light; sub-problem - steps to resolve why.

[DLIT] (4) 9 :
3) Show that different solutions exist for the same problem or sub-problem.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

Subject: Digital Literacy and Computer Science (4)
Title: Computer Science Fundamentals Unit 6 Course E Lesson 1: My Robotic Friends (2018)
URL: https://curriculum.code.org/csf-18/coursee/1/
Description:

Using a special set of offline commands, students will design algorithms to instruct a "robot" to stack cups in different patterns. Students will take turns participating as the robot, responding only to the algorithm defined by their peers. This segment teaches students the connection between symbols and actions, the difference between an algorithm and a program, and the valuable skill of debugging.

This unplugged lesson brings the class together as a team with a simple task to complete: get a "robot" to stack cups in a specific design. Students will work to recognize real-world actions as potential instructions in code. The art of following precise instructions will also be practiced, as students work to translate algorithms into code, using the symbols provided. If problems arise in the code, students should work together to recognize bugs and build solutions. This activity lays the groundwork for the programming that students will do throughout the course as they learn the importance of defining a clearly communicated algorithm.

Students will be able to:
- reframe a sequence of steps as an encoded program.
- identify and address bugs or errors in sequenced instructions.

Note: You will need to create a free account on code.org before you can view this resource.



   View Standards     Standard(s): [DLIT] (4) 8 :
2) Formulate a list of sub-problems to consider while addressing a larger problem.

Examples: Problem - a multi-step math problem; sub-problem - steps to solve.
Problem - light bulb does not light; sub-problem - steps to resolve why.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

[DLIT] (4) 13 :
7) Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

Subject: Digital Literacy and Computer Science (4)
Title: Computer Science Fundamentals Unit 6 Course E Lesson 2: Coding with Comments (2018)
URL: https://curriculum.code.org/csf-18/coursee/2/
Description:

In this set of puzzles, students will begin with an introduction (or review depending on the experience of your class) of Code.org's online workspace. There will be videos pointing out the basic functionality of the workspace including the Run, Reset, and Step buttons. Also discussed in these videos: dragging Blockly blocks, deleting Blockly blocks, and connecting Blockly blocks. Next, students will practice their sequencing and debugging skills in a maze.

We recognize that every classroom has a spectrum of understanding for every subject. Some students in your class may be computer wizards, while others haven't had much experience at all. In order to create an equal playing (and learning) field, we have developed this "Ramp Up Stage" for Course E. This can be used as either an introduction or a review of how to use Code.org and basic computer science concepts.

Students will be able to:
- order movement commands as sequential steps in a program.
- modify an existing program to solve errors.
- break down a long sequence of instructions into the largest repeatable sequence.

Note: You will need to create a free account on code.org before you can view this resource.



   View Standards     Standard(s): [DLIT] (4) 8 :
2) Formulate a list of sub-problems to consider while addressing a larger problem.

Examples: Problem - a multi-step math problem; sub-problem - steps to solve.
Problem - light bulb does not light; sub-problem - steps to resolve why.

[DLIT] (4) 9 :
3) Show that different solutions exist for the same problem or sub-problem.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

[DLIT] (4) 13 :
7) Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

Subject: Digital Literacy and Computer Science (4)
Title: Computer Science Fundamentals Unit 6 Course E Lesson 4: Debugging with Scrat (2018)
URL: https://curriculum.code.org/csf-18/coursee/4/
Description:

Debugging is an essential element of learning to program. In this lesson, students will encounter puzzles that have been solved incorrectly. They will need to step through the existing code to identify errors, including incorrect loops, missing blocks, extra blocks, and blocks that are out of order.

Students in your class might become frustrated with this lesson because of the essence of debugging. Debugging is a concept that is very important to computer programming. Computer scientists have to get really good at facing the bugs in their own programs. Debugging forces the students to recognize problems and overcome them while building critical thinking and problem-solving skills.

Students will be able to:
- predict where a program will fail.
- modify an existing program to solve errors.
- reflect on the debugging process in an age-appropriate way.

Note: You will need to create a free account on code.org before you can view this resource.



   View Standards     Standard(s): [DLIT] (4) 8 :
2) Formulate a list of sub-problems to consider while addressing a larger problem.

Examples: Problem - a multi-step math problem; sub-problem - steps to solve.
Problem - light bulb does not light; sub-problem - steps to resolve why.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

[DLIT] (4) 13 :
7) Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

Subject: Digital Literacy and Computer Science (4)
Title: Computer Science Fundamentals Unit 6 Course E Lesson 5: Creating Art With Code (2018)
URL: https://curriculum.code.org/csf-18/coursee/5/
Description:

In this lesson, students will take control of the Artist to complete drawings on the screen. This Artist stage will allow students to create images of increasing complexity using new blocks like move forward by 100 pixels and turn right by 90 degrees.

Building off of the students' previous experience with sequencing, this lesson will work to inspire more creativity with coding. The purpose of this lesson is to solidify knowledge of sequencing by introducing new blocks and goals. In this case, students learn more about pixels and angles using the new blocks, while still practicing their sequencing skills. Also, students will be able to visualize new goals such as coding the Artist to draw a square.

Students will be able to:
- create a program to complete an image using sequential steps.
- break complex shapes into simple parts.

Note: You will need to create a free account on code.org before you can view this resource.



   View Standards     Standard(s): [DLIT] (4) 8 :
2) Formulate a list of sub-problems to consider while addressing a larger problem.

Examples: Problem - a multi-step math problem; sub-problem - steps to solve.
Problem - light bulb does not light; sub-problem - steps to resolve why.

[DLIT] (4) 9 :
3) Show that different solutions exist for the same problem or sub-problem.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

[DLIT] (4) 13 :
7) Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

Subject: Digital Literacy and Computer Science (4)
Title: Computer Science Fundamentals Unit 6 Course E Lesson 6: My Loopy Robotic Friends (2018)
URL: https://curriculum.code.org/csf-18/coursee/6/
Description:

Building on the initial "My Robotic Friends" activity, students learn to use loops when programming their robots in order to build bigger structures more efficiently.

This lesson serves as a reintroduction to loops, using the now-familiar set of "robot" programming instructions. Students will develop critical thinking skills by looking for patterns of repetition in the movements of classmates and determining how to simplify those repeated patterns using loops.

Students will be able to:
- identify repeated patterns in code that could be replaced with a loop
- write instructions that use loops to repeat patterns.

Note: You will need to create a free account on code.org before you can view this resource.



   View Standards     Standard(s): [DLIT] (4) 8 :
2) Formulate a list of sub-problems to consider while addressing a larger problem.

Examples: Problem - a multi-step math problem; sub-problem - steps to solve.
Problem - light bulb does not light; sub-problem - steps to resolve why.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

[DLIT] (4) 13 :
7) Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.

[DLIT] (4) 27 :
21) Develop, test, and refine prototypes as part of a cyclical design process to solve a simple problem.

Subject: Digital Literacy and Computer Science (4)
Title: Computer Science Fundamentals Unit 6 Course E Lesson 9: Nested Loops With Frozen (2018)
URL: https://curriculum.code.org/csf-18/coursee/9/
Description:

Now that students know how to layer their loops, they can create so many beautiful things. This lesson will take students through a series of exercises to help them create their own portfolio-ready images using Anna and Elsa's excellent ice-skating skills!

In this series, students will get practice nesting loops while creating images that they will be excited to share. Beginning with a handful of instructions, students will make their own decisions when it comes to creating designs for repetition. They will then spin those around a variety of ways to end up with a work of art that is truly unique.

Students will be able to:
- describe when a loop, nested loop, or no loop is needed.
- recognize the difference between using a loop and a nested loop.
- break apart code into the largest repeatable sequences using both loops and nested loops.

Note: You will need to create a free account on code.org before you can view this resource.



   View Standards     Standard(s): [DLIT] (0) 7 :
1) List the sequence of events required to solve problems.

Examples: Tying shoes, making a sandwich, brushing teeth.

[DLIT] (1) 8 :
2) Order events into a logical sequence or algorithm.

Examples: Unplugged coding activities, sequence of instruction.

[DLIT] (2) 8 :
2) Create an algorithm for other learners to follow.

Examples: Unplugged coding activities, illustrate sequence of a process such as baking a cake.

[DLIT] (3) 8 :
2) Analyze a given list of sub-problems while addressing a larger problem.

Example: Problem - making a peanut butter sandwich; sub-problem - opening jar, finding a knife, getting the bread.
Problem - design and share a brochure; sub-problem - selecting font, choosing layout.

[DLIT] (3) 10 :
4) Examine logical reasoning to predict outcomes of an algorithm.

[DLIT] (3) 11 :
5) Create an algorithm to solve a problem as a collaborative team.

Examples: Move a character/robot/person through a maze. List steps to build a sandwich.

[DLIT] (4) 8 :
2) Formulate a list of sub-problems to consider while addressing a larger problem.

Examples: Problem - a multi-step math problem; sub-problem - steps to solve.
Problem - light bulb does not light; sub-problem - steps to resolve why.

[DLIT] (4) 10 :
4) Detect and debug logical errors in various basic algorithms.

Example: Trace the path of a set of directions to determine success or failure.

[DLIT] (5) 8 :
2) Create an algorithm to solve a problem while detecting and debugging logical errors within the algorithm.

Examples: Program the movement of a character, robot, or person through a maze.
Define a variable that can be changed or updated.

Subject: Digital Literacy and Computer Science (K - 5)
Title: Introducing Algorithms
URL: https://community.computingatschool.org.uk/files/8221/original.pdf
Description:

In this activity students work in small groups to write the steps to an everyday task or the steps in a "how to" scenario.  The steps the groups write serve as an algorithm.  The groups will then swap their writing for the teams to now "debug" each other's work to make the steps more precise.  

This activity was demonstrated during the Exploring Today's Classroom (ETC) Summit.



ALEX Classroom Resources: 17

Go To Top of page