NeuroMaker Hand Introduction to Programming
- Home
- NeuroMaker User Portal
- NeuroMaker Hand Materials Portal
- NM Hand Curriculum Materials
- NeuroMaker Hand Introduction to Programming
Introduction to Programming
Overview and Time Arrangement
Within the Introduction to Programming Module, students are introduced to basic programming concepts that will enable them to discover the relationship between hardware platforms and computing. Students engage in lessons that set up their programming environment, discuss hardware and software differences and teach conditionals, functions, variables, sequences and loops. Students utilize their knowledge of these concepts to first create a fully virtual game on their computer and later add the hardware functionality of the robotic hand. Students use a popular block based programming platform called mBlock to complete the functions of this module.
This module contains 6 lessons of 50 minutes each. Lesson 1 allows educators time to set up necessary programs on learner computers and familiarize the class with glossary resources, account set up and additional preparation materials. It is recommended that this module is completed in a full sequential unit if learners are new to programming concepts.
Big Ideas
- What is programming and how is it relevant to the application of hardware and solving defined technology problems?
- What are conditionals, variables, sequences and loops and how are they combined together to create logical programs?
- How are programming concepts applied into interactive environments?
Module Goals
By the end of this module, students will be able to understand and implement programming practices to the control of a physical piece of hardware. Game design within two different activity units integrate different programming concepts and provide an open context environment for students to involve knowledge they have gathered in previous units. Students will be able to recognize programming as a fun and intuitive way for different hardware to be controlled and enacted into sought for solutions.
Lesson 1: Setting Up a Programming Environment
Lesson 2: Introduction with Rock, Paper, Scissors
Lesson 4: Functions and Variables
Lesson 5: Programming Project Part 1
Lesson 1: Setting Up a Programming Environment
Preparing for Coding
Overview
In this lesson, students will be introduced to the basics that will help them be successful throughout the coding lessons. Students will create their mBlock accounts, create a glossary, and gain a basic understanding of coding concepts that they will dive into in the following lessons.
Learning Objectives
By the end of class, students will be able to:
- Set up their mBlock account
- Understand the vocabulary associated with coding
- Introduced to different concepts (Overview of concepts)
Instructional Materials
- Lecture Slides
- Lesson Plan
- Laptop
- mBlock website
- Coding Glossary (Student Copy)
- Coding Glossary (Teacher Copy)
- Tutorials (See Video Tutorial Tab in Top Navigation)
Vocabulary
- Conditionals: A set of rules performed if or when a condition/requirement is met
- Input: Any information or data that is sent to a computer for processing
- Output: Any data or display that is the result of a computer processing
Pre-Lesson Teacher Checklist
- Double check that computers are fully charged
- Ensure that students will be able to access mBlock website
- Familiarize yourself with the powerpoint
- Familiarize yourself with Overview of Blocks
- Print out worksheets
Lesson Timeline (50 minutes)
Time Interval | Content |
5 minutes | Introduction
|
15 minutes | Create mBlock Account
|
15 minutes | Coding Glossary
|
15 minutes | Overview of Concepts
|
* These activities can be made longer based on time
** These activities are optional and can be eliminated based on time
Activities
Introduction (Slides: 2-3), 5 Minutes
Objective:
- Students set up their mBlock account
- Students understand the vocabulary associated with coding
- Students are introduced to different concepts (Overview of concepts)
Procedure:
Slide 2
- Review objectives
Slide 3
- Save mBlock website to favorites on their browser
Create mBlock Account (Slides: 4-11), 15 Minutes
Objective:
- Students set up their mBlock account
Procedure:
Slide 4 – 11
- Guide students to create their own mBlock account
- Students will need the following:
- School email address
- Permission slip signed by parents (if required by the school)
Coding Glossary (Slides: 12-14), 15 Minutes
Objective:
- Students understand the vocabulary associated with coding
Procedure:
Slide 12-14
- Review the vocabulary that students will encounter in the following lessons
- Students should be writing down the definitions in their coding glossary
- Algorithm: A list of steps used to complete a task
- Coding: Step by step instructions that computers or devices can understand
- Input: Any information or data that is sent to a computer for processing
- Output: Any data or display that is the result of a computer processing
- Hardware: The collection of all the parts of a computing system that can be physically touched. (Examples: Computers, Sensors, Robots, Tablets, etc.)
- Software: Programs and other operating information used by a computer
Overview of Concepts, 15 Minutes
Objective:
- Students are introduced to different concepts (Overview of concepts)
Procedure:
Slides 15-20
- Provide students with a brief overview of the concepts that they will be introduced to in the following lessons
- Students continue to write down the definitions of the concepts in the Coding Glossary worksheet
Lesson 2: Introduction with Rock, Paper, Scissors
Introduction: Rock, Paper, Scissors
Overview
In this lesson, students will be introduced to the basics of coding. Students will learn about foundational coding concepts such as sequence, events, and loops. In this lesson, students will learn how to code both the software and hardware, ultimately creating a rock paper scissors game.
Learning Objectives
By the end of class, students will be able to:
- Understand concepts such as sequence, events, and loops
- Code the sprite and hand to move
- Upload the code from mBlock to the hardware
- Understand the relationship of software (mBlock) and hardware (hand)
Instructional Materials
- Lecture Slides
- Lesson Plan
- Laptop
- mBlock website
- Student Worksheet
- Robotic hand (hardware)
- Exit Ticket
- Lesson 2 Teacher Guide
- Tutorials (See Video Tutorial Tab in Top Navigation)
Standards Alignment
Type | Indicator | Standard |
CSTA | 2-CS-01 | Recommend improvements to the design of computing devices, based on an analysis of how users interact with the devices |
2-AP-11 | Create clearly named variables that represent different data types and perform operations | |
2-AP-12 | Design and iteratively develop programs that combine control structures, including nested loops and compound conditionals. | |
2-AP-13 | Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs. | |
2-AP-15 | Seek and incorporate feedback from team members and users to refine a solution that meets user needs. | |
ISTE | 4B | Students select and use digital tools to plan and manage a design process that considers design constraints and calculated risks. |
4C | Students develop, test and refine prototypes as part of a cyclical design process. | |
4D | Students exhibit a tolerance for ambiguity, perseverance and the capacity to work with open-ended problems. | |
5A | Students formulate problem definitions suited for technology-assisted methods such as data analysis, abstract models and algorithmic thinking in exploring and finding solutions. | |
5D | Students understand how automation works and use algorithmic thinking to develop a sequence of steps to create and test automated solutions. | |
NGSS | MS-ETS1-4 | Develop a model to generate data for iterative testing and modification of a proposed object, tool, or process such that an optimal design can be achieved. |
Vocabulary
- Algorithm: A list of steps used to complete a task
- Coding: Step by step instructions that computers or devices can understand
- Sequence: A set of ordered steps for completing a task
- Loops: A sequence of instructions that is continually repeated until a certain condition is reached
- Events: An action that causes things to happen
- Hardware: The collection of all the parts of a computing system that can be physically touched. (Examples: Computers, Sensors, Robots, Tablets, etc.)
- Software: Programs and other operating information used by a computer
Pre-Lesson Teacher Checklist
- Double check that computers are fully charged
- Ensure that students will be able to access mBlock website
- Familiarize yourself with the powerpoint
- Familiarize yourself with Overview of Blocks
- Review Lesson 2 Teacher Guide
- Print out worksheets and exit ticket
- NeuroMaker Hands
Lesson Timeline (50 minutes)
Time Interval | Content |
10 minutes | Introduction
|
15 minutes | Exploring software (mBlock)
|
15 minutes | Exploring hardware (the Hand)
|
5 minutes | Game time
|
5 minutes | Reflection
|
* These activities can be made longer based on time
** These activities are optional and can be eliminated based on time
Activities
Introduction (Slides: 2-5), 10 Minutes
Objective:
- Understand concepts such as sequence, events, and loops
- Code the sprite and hand to move
- Upload the code from mBlock to the hardware
- Understand the relationship of software (mBlock) and hardware (hand)
Procedure:
- Review objectives
- Pass out worksheet
- Introduce the concept of coding and algorithm, while students write down the definitions
- Introduce the software and hardware students will be working with
- Tips:
- Show the students the robotic hand (hardware) students will be working with
- Explain that mblock is the software that students will be using to code
- Complete warm-up with students.
- Ask the students to look at the codes on the slide and predict what they are asking the user to do.
- Prompt the students to talk to their partners to compare and contrast their predictions
- Ask two students to share their predictions out loud
Exploring Software (Slides 6 – 11), 15 Minutes
Objective:
- Understand concepts such as sequence, events, and loops
- Code the sprite and hand to move
- Understand the relationship of software (mBlock) and hardware (hand)
Procedure:
- Review the concept of sequence. Ask a student to read the definition out loud:
- Sequence: A set of ordered steps for completing a task
- Ask students to read the code and predict what the sprite will do. Call on a student to share their answer
- Review the concept of loops. Ask a student to read the definition out loud:
- Loops: A sequence of instructions that is continually repeated until a certain condition is reached
- Ask students to look at the two codes on the slide. Ask them to share their thoughts on the following statement:
- True or false: the two codes accomplish the same task
- Review the concept of events. Ask a student to read the definition out loud:
- Events: An action that causes things to happen
- Stress to the students that every code needs to begin with event blocks
- Watch the video tutorial on changing changing sprites, background, and sounds on the mBlock software
- Watch the video tutorial on coding the sprite on mBlock to move and introduce itself
- Provide work-time for students. Students should be filling out their worksheet during this time. Present the following challenge: code the sprite to move and introduce itself.
- Tips:
- Walk around the classroom to make sure that students are starting with event blocks.
- For the advanced students, present the following challenges:
- Add another sprite and their introductions
- Change the background
- Code the sprite with loops
Exploring Hardware (Slides 12 – 13), 15 Minutes
Objective:
- Code the sprite and hand to move
- Upload the code from mBlock to the hardware
Procedure:
- Watch the video tutorial on uploading the code to the hardware (the hand)
- Provide work-time for students to create a game of rock, paper, scissors using the concept of sequence, events, and loops
- Students should be filling out their worksheet during this time
- Tips: During this time, walk around the classroom to make sure that students are doing the following:
- Starting with event blocks
- Using loops
- Tips: For those students who are struggling, pull a small group to facilitate step by step tutorial as others are working
Game Time (Slides 14), 5 Minutes
Objective:
- Code the sprite and hand to move
- Upload the code from mBlock to the hardware
Procedure:
- Students partner up with another team. Provide time for students to play each others’ rock, paper, scissors game
- Provide time for students to provide feedback to each other
- What worked well?
- What parts could the other team improve on?
Reflection (Slides 15), 5 Minutes
Procedure:
- Complete exit ticket
- Clean-up
Lesson 3: Conditionals
Conditionals
Overview
In this lesson, students will be introduced to the concept of conditionals. Students will learn how to code an interactive game using multiple sprites. Through this lesson, students will gain a deeper understanding of coding, as they use various concepts such as conditionals, sequence, and loops.
Learning Objectives
By the end of class, students will be able to:
- Understand the concept of conditionals
- Create an interactive game using conditionals, sequence, and loops
- Code multiple sprites
- Explain how the conditionals, sequence, and loops impact their game
Instructional Materials
- Lecture Slides
- Lesson Plan
- Tutorials (See Video Tutorial Tab in Top Navigation)
- Laptop
- mBlock website
- Student Worksheet
- Lesson 3 Teacher Guide
- Exit Ticket
Standards Alignment
Type | Indicator | Standard |
CSTA | 2-AP-12 | Design and iteratively develop programs that combine control structures, including nested loops and compound conditionals. |
2-AP-13 | Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs. | |
2-AP-15 | Seek and incorporate feedback from team members and users to refine a solution that meets user needs. | |
ISTE | 4B | Students select and use digital tools to plan and manage a design process that considers design constraints and calculated risks. |
4C | Students develop, test and refine prototypes as part of a cyclical design process. | |
4D | Students exhibit a tolerance for ambiguity, perseverance and the capacity to work with open-ended problems. | |
6C | Students communicate complex ideas clearly and effectively by creating or using a variety of digital objects such as visualizations, models or simulations. | |
NGSS | MS-ETS1-4 | Develop a model to generate data for iterative testing and modification of a proposed object, tool, or process such that an optimal design can be achieved. |
Vocabulary
- Conditionals: A set of rules performed if or when a condition/requirement is met
- Input: Any information or data that is sent to a computer for processing
- Output: Any data or display that is the result of a computer processing
Pre-Lesson Teacher Checklist
- Double check that computers are fully charged
- Ensure that students will be able to access mBlock website
- Familiarize yourself with the powerpoint
- Familiarize yourself with Overview of Blocks
- Review Lesson 3 Teacher Guide
- Print out worksheets
Lesson Timeline (50 minutes)
Time Interval | Content |
10 minutes | Introduction
|
10 minutes | Intro to Conditionals
|
20 minutes | Creating an Interactive Game*
|
5 minutes | Game time
|
5 minutes | Reflection**
|
* These activities can be made longer based on time
** These activities are optional and can be eliminated based on time
Activities
Introduction (Slides 2 – 3), 10 Minutes
Objective:
- Understand the concept of conditionals
- Create an interactive game using conditionals, sequence, and loops
- Code multiple sprites
Procedure:
- Review objectives
- Students log into mBlock account
- Students play rock, paper, scissors (continued from previous lesson)
Intro to Conditionals (Slides 4 – 6), 10 Minutes
Objective:
- Understand the concept of conditionals
Procedure:
- Review the concept of conditionals. Ask a student to read the definition out loud:
- Conditionals: A set of rules performed if or when a condition/requirement is met
- Explain the following:
- Conditional statements will be in the form of “if_____, then______.”
- Conditional statements can be thought of as cause (if ______) and effect (then ______).
- Review the key points with students. Students should fill in the blank on their worksheet.
- Conditional statements are important because it gives the computer different choices
- If the conditional statement is true, the computer executes the action
- If the conditional statement is false, the computer does not execute the action
- Conditional statements can be thought of as cause (if ______) and effect (then ______).
- Ask all the students in the classroom to stand up for a game. The students who are still standing after the statements are read will be the winners.
- Read the following statements:
- If your birthday is from January to March, then sit down.
- If you are wearing green, white, blue, or orange, then sit down.
- If you are wearing glasses, then stand back up. (Even if you were sitting down!)
- If you have a black backpack, then sit down.
- If you are wearing a jacket, then sit down.
- TIP: Feel free to customize the statements for your students.
Creating an Interactive Game (Slides 7 – 10),20 Minutes
Objective:
- Understand the concept of conditionals
- Create an interactive game using conditionals, sequence, and loops
- Code multiple sprites
- Explain how the conditionals, sequence, and loops impact their game
Procedure:
- To get an idea of what an interactive game could look like, watch the video tutorial on Catch the Fruit Game
- Students will require knowledge about the coordinate plane to create an interactive game. Review the different quadrants. Call on students to locate the following points:
- (3,-4), (0,6), (-3,2), (-5,-3)
- Watch the video tutorial to understand how the conditionals, sequence, and loops come together to create an interactive game.
- The tutorial will dissect the codes (see Lesson Plan) and explain how each block is used to create the interactive (Catch the Fruit) game.
- Provide work-time for the students to create their own interactive game.
- Students pair up with their partners and plan out their games on the worksheet.
- Tips: Walk around the classroom to make sure students are on the right track by looking for the following
- Starting with event blocks
- Using conditionals
- Clicking to code for each sprite
- For those students who are struggling, pull a small group to facilitate step by step tutorial as others are working
Game Time (Slides 11), 5 Minutes
Objective:
- Understand the concept of conditionals
- Explain how the conditionals, sequence, and loops impact their game
Procedure:
- Students partner up with another team. Provide time for students to explore each other’s games
- Provide time for students to provide feedback to each other
- What stood out about their game?
- What parts could the other team improve on?
Reflection (Slides 12), 5 Minutes
Procedure:
- Exit Ticket
- Clean-up
Lesson 4: Functions and Variables
Functions and Variables
Overview
In this lesson, students will be introduced to the concept of functions and variables. Students will learn how to code variables onto the screen, adding another complex layer to their existing game from Lesson 3. Students will also learn how to create functions, and create functions for the hardware.
Learning Objectives
By the end of class, students will be able to:
- Understand the concept of variables and functions
- Code variables into the game
- Code functions in mBlock for the hardware
- Explain the role of variables and functions in coding
Instructional Materials
- Lecture Slides
- Lesson Plan
- Tutorials (See Video Tutorial Tab in Top Navigation)
- Lesson 4 Worksheet
- Predict the Function Worksheet
- Lesson 4 Teacher Guide
- Exit Ticket
Standards Alignment
Type | Indicator | Standard |
CSTA | 2-AP-12 | Design and iteratively develop programs that combine control structures, including nested loops and compound conditionals. |
2-AP-13 | Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs. | |
2-AP-15 | Seek and incorporate feedback from team members and users to refine a solution that meets user needs. | |
ISTE | 4B | Students select and use digital tools to plan and manage a design process that considers design constraints and calculated risks. |
4C | Students develop, test and refine prototypes as part of a cyclical design process. | |
4D | Students exhibit a tolerance for ambiguity, perseverance and the capacity to work with open-ended problems. | |
6C | Students communicate complex ideas clearly and effectively by creating or using a variety of digital objects such as visualizations, models or simulations. | |
NGSS | MS-ETS1-4 | Develop a model to generate data for iterative testing and modification of a proposed object, tool, or process such that an optimal design can be achieved. |
Vocabulary
- Variables: A container storing information that can be changed
- Functions: A set of instructions that can be used to perform a specific task or routine
Pre-Lesson Teacher Checklist
- Double check that computers are fully charged
- Ensure that students will be able to access mBlock website
- Familiarize yourself with the Powerpoint
- Familiarize yourself with Overview of Blocks
- Review Lesson 4 Teacher Guide
- Print out worksheets (1 & 2)
Lesson Timeline (50 minutes)
Time Interval | Content |
5 minutes | Introduction
|
15 minutes | Intro to Variables
|
15 minutes | Intro to Functions
|
10 minutes | Predict the function
|
5 minutes | Reflection**
|
* These activities can be made longer based on time
** These activities are optional and can be eliminated based on time
Activities
Introduction (Slides 2), 5 Minutes
Objective:
- Understand the concept of variables and functions
- Code variables into the game
- Code functions in mBlock for the hardware
- Explain the role of variables and functions in coding
Procedure:
- Review objectives
- Pass out worksheet
Intro to Variables (Slides 3 – 5), 15 Minutes
Objective:
- Understand the concept of variables and functions
- Code variables into the game
- Explain the role of variables and functions in coding
Procedure:
- Review the concept of variables. Ask a student to read the definition out loud:
- A container storing information that can be changed
- Ask students to discuss the following question:
- When can you see yourself using variables?
- Watch the variable tutorial
- Ask students to log into their Catch the Fruit game from previous lesson
- Students code variables into the game as a scoreboard.
- See Example in Lesson Plan
- Provide time for students to play Catch the Fruit game as a whole class. Challenge the students to reach 20 points as soon as possible.
- Discuss the following questions:
- Did you change your code to help you reach 20 points faster? If yes, what did you do?
- Tips: Answers could range from:
- Coding the sprites to move faster
- Coding the sprites to be bigger (so they take up more room)
Intro to Functions (Slides 6 – 9), 15 Minutes
Objective:
- Understand the concept of variables and functions
- Code functions in mBlock for the hardware
- Explain the role of variables and functions in coding
Procedure:
- Review the concept of functions. Ask a student to read the definition out loud:
- A set of instructions that can be used to perform a specific task or routine
- Watch the function video tutorial
- Review the reasons why functions are useful in coding. Students take notes on their worksheet
- Organization
- Functions helps to reduce longer and complicated programs into more manageable parts
- Testing
- Functions reduce code redundancy and save time
- Reusability
- It can be used multiple times and in different algorithms
- Organization
- Ask students to discuss the following question with their partners:
- When can you see yourself using these functions?
- Provide work time for students to create functions in mBlock for the hand.
- Students begin by brainstorming and planning out their functions on the worksheet. Students should name the function and jot down specific notes on the movements that are in each function. (This will later be referenced back to for Game Time)
- Students code the function for the Hand on mBlock
- The functions that students make will be handed over to another team during Game Time for them to guess the purpose of the function
- Provide an example of what the completed chart on their worksheet will look like vs. what the other team will need to fill out as they predict the functions
- TIPS: As students work, walk around the classroom and look for the following
- Students starting with the correct event blocks for the hardware
- Students coding wait times between each motion
- Students ending with the “reset hand’ block at the end of their code
- Students have the hand turned on while uploading the code
Guess the Function (Slides 10), 10 Minutes
Objective:
- Understand the concept of variables and functions
- Code functions in mBlock for the hardware
- Explain the role of variables and functions in coding
Procedure:
- Provide game time for students to pair up with another team. Pass out Predict the Function worksheet.
- Each team will write the name of the functions on the word bank at the top of the worksheet. Students will predict the other team’s function.
- Students will check their work by comparing their predictions with what the team had planned
- Students provide feedback to one another through the following questions:
- What was unique about their functions?
- What could be improved?
Reflection (Slides 11), 5 Minutes
Procedure:
- Complete Exit Ticket
- Clean-up
Lesson 5: Programming Project Part 1
Final Project: Games Part 1
Overview
In this lesson, students will be introduced to their final project. Students will be challenged to create a game on the software that uses all the previous concepts such as sequence, loops, conditionals, variables, and functions. In this lesson, students will mainly focus on developing the software portion of the game.
Learning Objectives
By the end of class, students will be able to:
- Understand concepts such as sequence, loops, conditionals, variables, and functions
- Code on mBlock software to create an interactive game
Instructional Materials
- Lecture Slides
- Lesson Plan
- Tutorials (See Video Tutorial Tab in Top Navigation)
- Laptop
- mBlock website
- Student Worksheet
- Exit Ticket
Standards Alignment
Type | Indicator | Standard |
CSTA | 2-CS-01 | Recommend improvements to the design of computing devices, based on an analysis of how users interact with the devices |
2-AP-11 | Create clearly named variables that represent different data types and perform operations | |
2-AP-12 | Design and iteratively develop programs that combine control structures, including nested loops and compound conditionals. | |
2-AP-13 | Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs. | |
2-AP-15 | Seek and incorporate feedback from team members and users to refine a solution that meets user needs. | |
ISTE | 4B | Students select and use digital tools to plan and manage a design process that considers design constraints and calculated risks. |
4C | Students develop, test and refine prototypes as part of a cyclical design process. | |
4D | Students exhibit a tolerance for ambiguity, perseverance and the capacity to work with open-ended problems. | |
5A | Students formulate problem definitions suited for technology-assisted methods such as data analysis, abstract models and algorithmic thinking in exploring and finding solutions. | |
5D | Students understand how automation works and use algorithmic thinking to develop a sequence of steps to create and test automated solutions. | |
NGSS | MS-ETS1-4 | Develop a model to generate data for iterative testing and modification of a proposed object, tool, or process such that an optimal design can be achieved. |
Vocabulary
- Algorithm: A list of steps used to complete a task
- Sequence: A set of ordered steps for completing a task
- Loops: A sequence of instructions that is continually repeated until a certain condition is reached
- Conditionals: A set of instructions performed if or when a condition/requirement is met
- Functions: A set of instructions that can be used to perform a specific task, or routine
- Variable: A container storing information that can be changed
- Hardware: The collection of all the parts of a computing system that can be physically touched. (Examples; Computers, Sensors, Robots, Tablets, Cell Phones, etc.)
- Software: Programs and other operating information used by a computer
- Input: Any information or data that is sent to a computer for processing
- Output: Any data or display that is the result of a computer processing
Pre-Lesson Teacher Checklist
- Double check that computers are fully charged
- Ensure that students will be able to access mBlock website
- Familiarize yourself with the powerpoint
- Familiarize yourself with Overview of Blocks
- Print out worksheets and exit ticket
- NeuroMaker Hand
Lesson Timeline (50 minutes)
Time Interval | Content |
5 minutes | Introduction
|
10 minutes | Review Concepts
|
30 minutes | Work-time
|
5 minutes | Reflection
|
* These activities can be made longer based on time
** These activities are optional and can be eliminated based on time
Activities
Introduction (Slides 2 – 3), 5 Minutes
Objective:
- Understand concepts such as sequence, loops, conditionals, variables, and functions
- Code on mBlock software to create an interactive game
Procedure:
- Review objectives
- Introduce the Final Project challenge:
- Create a game on the software that uses all the previous concepts such as sequence, loops, conditionals, variables, and functions
- Remind students that in this lesson, students will be creating the game on the software, and in the next lesson students will incorporate the robotic hand.
- Tip: Call on a student to tell the difference between hardware and software
Review Concepts (Slides 4 – 8), 10 Minutes
Objective:
- Understand concepts such as sequence, loops, conditionals, variables, and functions
Procedure:
Review the following concepts. Review the definition of the concept, and give students the opportunity to share with their partner what they remember about the concept and how they have used it in the past.
- Review sequence: A set of ordered steps for completing a task
- Review loops: A sequence of instructions that is continually repeated until a certain condition is reached
- Review conditionals: A set of instructions performed if or when a condition/requirement is met
- Review variables: A container storing information that can be changed.
- Review functions: A set of instructions that can be used to perform a specific task, or routine
Work-time (Slides 9 – 11), 30 Minutes
Objective:
- Code on mBlock software to create an interactive game
Procedure:
Pass out the worksheet. Provide time for students to get into partners.
Slide 9 (5 minutes)
- Students brainstorm the type of game that they want to create on the software on the worksheet.
- Students understand that part of the game will have to incorporate the robotic hand
- Tips: For students who are struggling, provide them with the following options:
- Create a game where sprites are passing the ball back and forth to each other
- Create a game where the color of an object changes based on sprite’s actions
- Create a game where different sounds are made based on the sprite’s decisions
Slide 10 (5 minutes)
- Students share their game idea with another group for feedback, and revise their ideas
- Tips: This is an opportunity for students to reflect on their work. For students who need extra support, provide the following question stems:
- Why did you choose ____?
- How does this show ____ concept?
Slide 11 (20 minutes)
- Provide students with work-time
- Review of expectations:
- Stay on task
- Be hard on content, soft on people
- Raise hand if you need help
- Tips: Float around the classroom and check-in on students who are struggling. For groups who need additional support, pull a small group where you can guide them through the coding process.
Reflection (Slides 12), 5 Minutes
Objective:
- Understand concepts such as sequence, loops, conditionals, variables, and functions
Procedure:
- Set goals for the next lesson
- Complete exit ticket
- Clean-up
Lesson 6: Programming Project Part 2
Final Project: Games Part 2
Overview
In this lesson, students will continue to work on their final project. Students will complete an interactive game that uses all the previous concepts such as sequence, loops, conditionals, variables, and functions. In this lesson, students will incorporate the robotic hand (hardware portion) into the game.
Learning Objectives
By the end of class, students will be able to:
- Understand concepts such as sequence, loops, conditionals, variables, and functions
- Code the robotic hand (hardware) on mBlock as part of the interactive game
- Showcase their game and explain the coding concepts used
- Students understand the distinction between hardware and software
Instructional Materials
- Lecture Slides
- Lesson Plan
- Tutorials (See Video Tutorial Tab in Top Navigation)
- Laptop
- mBlock site
- Student Worksheet
- Metacognition Worksheet
- Feedback Worksheet
Standards Alignment
Type | Indicator | Standard |
CSTA | 2-CS-01 | Recommend improvements to the design of computing devices, based on an analysis of how users interact with the devices |
2-AP-11 | Create clearly named variables that represent different data types and perform operations | |
2-AP-12 | Design and iteratively develop programs that combine control structures, including nested loops and compound conditionals. | |
2-AP-13 | Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs. | |
2-AP-15 | Seek and incorporate feedback from team members and users to refine a solution that meets user needs. | |
ISTE | 4B | Students select and use digital tools to plan and manage a design process that considers design constraints and calculated risks. |
4C | Students develop, test and refine prototypes as part of a cyclical design process. | |
4D | Students exhibit a tolerance for ambiguity, perseverance and the capacity to work with open-ended problems. | |
5A | Students formulate problem definitions suited for technology-assisted methods such as data analysis, abstract models and algorithmic thinking in exploring and finding solutions. | |
5D | Students understand how automation works and use algorithmic thinking to develop a sequence of steps to create and test automated solutions. | |
6C | Students communicate complex ideas clearly and effectively by creating or using a variety of digital objects such as visualizations, models or simulations. | |
NGSS | MS-ETS1-4 | Develop a model to generate data for iterative testing and modification of a proposed object, tool, or process such that an optimal design can be achieved. |
Vocabulary
- Algorithm: A list of steps used to complete a task
- Sequence: A set of ordered steps for completing a task
- Loops: A sequence of instructions that is continually repeated until a certain condition is reached
- Conditionals: A set of instructions performed if or when a condition/requirement is met
- Functions: A set of instructions that can be used to perform a specific task, or routine
- Variable: A container storing information that can be changed
- Hardware: The collection of all the parts of a computing system that can be physically touched. (Examples; Computers, Sensors, Robots, Tablets, Cell Phones, etc.)
- Software: Programs and other operating information used by a computer
- Input: Any information or data that is sent to a computer for processing
- Output: Any data or display that is the result of a computer processing
Pre-Lesson Teacher Checklist
- Double check that computers are fully charged
- Ensure that students will be able to access mBlock website
- Familiarize yourself with the PowerPoint
- Print out student worksheet, feedback worksheet, and metacognition worksheet
- NeuroMaker Hand
Lesson Timeline (50 minutes)
Time Interval | Content |
5 minutes | Introduction
|
25 minutes | Work-time
|
10 minutes | Showcase/ Gallery Walk
|
5 minutes | Feedback
|
5 minutes | Reflection
|
* These activities can be made longer based on time
** These activities are optional and can be eliminated based on time
Activities
Introduction (Slides 2 – 3), 5 Minutes
Objective:
- Students understand concepts such as sequence, loops, conditionals, variables, and functions
- Students code the robotic hand (hardware) on mBlock as part of the interactive game
- Students showcase their game and explain the coding concepts used
- Students understand the distinction between hardware and software
Procedure:
- Review objectives
- Introduce the Final Project challenge:
- Create a game on the software that uses all the previous concepts such as sequence, loops, conditionals, variables, and functions
- Remind students that in this lesson students will incorporate the robotic hand into their game
Worktime (Slides 4 – 5), 25 Minutes
Objective:
- Understand concepts such as sequence, loops, conditionals, variables, and functions
- Code the robotic hand (hardware) on mBlock as part of the interactive game
- Students understand the distinction between hardware and software
Procedure:
Pass out the worksheet. Provide time for students to get into partners. Provide work time for students
Slide 4 (5 minutes)
- Students review the worksheet from the previous lesson. Students brainstorm how the hardware will be incorporated on the worksheet with their partners
- Tips: For students who are struggling, provide them with the following options:
- Code the hand to show rock/paper/scissors when the sprite performs a certain action
- Code the hand to do the wave when the sprite communicates with another sprite
- Code the hand to move certain fingers through an if-then statement
Slide 5 (20 minutes)
- Review of expectations:
- Stay on task
- Be hard on content, soft on people
- Raise hand if you need help
- Tips: Float around the classroom to ensure that the hand is connected and functioning on mBlock. Pull a small group if necessary. Check-in on students who are struggling with the following prompts:
- Can you share your plan on how to incorporate the hand?
- What are you having trouble with?
- What concepts are you planning on using?
Showcase/ Gallery Walk (Slides 6 – 7), 10 Minutes
Objective:
- Students showcase their game and explain the coding concepts used
Procedure:
In pairs, decide on Partner A and Partner B.
Slide 6-7 (5 minutes each)
- Partner A stays at the work space, while partner B circulates around the room participating in the Gallery Walk.
- Prompts:
- What is the objective of your game?
- What concepts did you use to program your software?
- What concepts did you use to program the hardware?
- What was the most challenging?
Feedback (Slide 8), 5 Minutes
Objective:
- Understand concepts such as sequence, loops, conditionals, variables, and functions
Procedure:
- Pass out feedback worksheet
- Students write down feedback for other groups
- Students review the feedback that they receive from peers
Reflection (Slides 9), 5 Minutes
Procedure:
- Complete metacognition worksheet
- Clean-up
Extension Lesson
Games
Overview
In this lesson, students will understand how games can be used as a tool that serves various purposes. Students will have the opportunity to think more in depth about the impact of games and the effects it can have on certain populations.
Learning Objectives
By the end of class, students will be able to:
- Understand that games can have an impact on different populations
- Identify features that make games accessible to those with differences
- Discuss their opinions with textual support
- Write a reflection with textual evidence
Instructional Materials
Standards Alignment
Type | Indicator | Standard |
CCSS | CCSS.ELA-LITERACY.RI.7.1 | Cite several pieces of textual evidence to support analysis of what the text says explicitly as well as inferences drawn from the text. |
CCSS.ELA-LITERACY.W.7.2.A | Introduce a topic clearly, previewing what is to follow; organize ideas, concepts, and information, using strategies such as definition, classification, comparison/contrast, and cause/effect; include formatting (e.g., headings), graphics (e.g., charts, tables), and multimedia when useful to aiding comprehension. | |
CCSS.ELA-LITERACY.W.7.2.D | Use precise language and domain-specific vocabulary to inform about or explain the topic. | |
CCSS.ELA-LITERACY.W.7.9 | Draw evidence from literary or informational texts to support analysis, reflection, and research. |
Vocabulary
- Curvature: The amount or degree to which something is curved
- Confront: To face a challenge or problem head on
- Context: The specific situation or place it is in
- Beneficial: Favorable or advantageous; resulting in good
- Stimulate: To encourage or help it to get started
- Analysis: A detailed study of something
- Receptive: Willing to consider or accept new suggestions and ideas
Pre-Lesson Teacher Checklist
- Double check that computers are fully charged
- Print out articles
- Print out student worksheet
Lesson Timeline (50 minutes)
Time Interval | Content |
5 minutes | Introduction
|
15 minutes | Reading Articles
|
15 minutes | Discussion
|
15 minutes | Reflection
|
* These activities can be made longer based on time
** These activities are optional and can be eliminated based on time
Activities
Introduction, 5 Minutes
Objective:
- Understand that games can have an impact on different populations
- Identify features that make games accessible to those with differences
- Discuss their opinions with textual support
- Write a reflection with textual evidence
Procedure:
- Review objectives and agenda
- Introduce the two articles, and how the articles will help students to understand the role of video games in different people’s lives
Reading Articles, 15 Minutes
Objective:
- Understand that games can have an impact on different populations
- Identify features that make games accessible to those with differences
Procedure:
Pass out the two articles and the student worksheet. Ask students to choose one of the articles to read. Provide silent reading time for students to read the article of their choice. Students should be taking notes on what they are reading.
- Tip: Have the vocabulary words on the screen for students
- Tip: For struggling readers, pull a small group and review the questions before reading.
Discussion, 15 Minutes
Objective:
- Discuss their opinions with textual support
Procedure:
Group students in small groups (max 4 students) who have read the same articles. Ask them to answer the following questions:
- What role does the video game play for the population?
- How does the video game help people in this group?
- What features of the video games allow games to be beneficial to this group?
- Tip: Float around the classroom to make sure students are on topic. If students are struggling, provide them with the following prompts:
- What was the article about?
- Who was the article talking about?
- What happened in the article?
Reflection, 15 Minutes
Objective:
- Write a reflection with textual evidence
Procedure:
Provide students the time to write a reflection on the following question:
- How did video games help the population? What features of video games helped the population? What are other ways that games can help others?