Chapter 2
Module 3: Variables
Before you teach. . .
You may want to prepare the following before you implement this module in your
classroom:
❏ Make a copy of the slides if you’d like to revise or adapt them
for your classroom
❏ Use the teacher dashboard to check student progress.
❏ Review Concept Check activities
❏ Navigate to Independent Practice slides to:
❏ Unlock specific modules and levels as necessary
❏ Review extension activities and have activity links ready to
share
❏ Try out some practice levels on your own
❏ Review the solution guide
How to teach a lesson. . .
❏ Use the first section of the lesson slides (up to Independent
Practice slide) to introduce the new concept for that lesson
❏ If applicable, watch any Cutscene videos as a whole class to
introduce the story line
❏ Extension Activities are found in the speaker notes of the
Independent Practice slide. You can use them to differentiate
pacing for fast finishers or for students who need reinforcement.
❏ Have students independently play through the suggested levels
on the Independent Practice slide
❏ This section which will also include Cinematics and
Concept Checks
❏ Use the Check-In section as an opportunity for students to
reflect on what they have learned in the lesson
Table of Contents
● Lesson 1: Introduction to Variables
○ Extension Activity: Variable Stories with Numbers
● Lesson 2: Variables with Strings & Methods
○ Extension Activity: Variable Stories with Methods
Lessons
● Lesson 3: Networks and the Internet: Breaking Down and
Transmitting Data
● Lesson 4: Networks and the Internet: Network Protocols
Explorations
● Standards Alignment
● Materials & Resources
Additional Resources
Module 3
Lesson 1
Introduction to Variables
What did we learn last time?
-What’s the difference between
syntax bugs and logic bugs?
-What are some strategies you
used to help debug your code?
-What did we do in Ozaria?
Today’s Journey
Warm-Up: Variable Mad Libs
Play Ozaria: Moon Dancers Carnival
Optional Extension: Variable Mad Libs
Variables
Variables
Variables are a way for us to keep
track of information in our code, such
as numbers and words.
Variable: The box is like a variable. It can hold
or store something that you can take out and use
whenever you need it.
Value: The number of coins in the box is the
value of the variable.
Variable Name: You label the box to
remember what kind of value it’s storing. When
you use a lot of variables, you will want to use
names to keep track of them.
Value
Variable
Name
coins = 3
Variables
What kind of information do you need to track every day? How can they be stored as
variables?
password = “L33tCodez” teamOneScore = 6
teamTwoScore = 21
OzariaFlightNumber = “E83”
Numbers & Variables
There are different types of numbers that can be stored by variables.
Integers
A whole number that
is not a fraction or
decimal
100
4
-2
2663
Floats
A number that has
decimals
-1.8
2.3
36.33
-0.5574
Numbers
Any number
100
4
-2
2663
-1.8
2.3
36.33
-0.5574
Story Builder
Our Variables
● age =
● name =
● vegetable =
● float =
● year =
● integer =
Story Builder
Our Variables
● age =
● name =
● vegetable =
● float =
● year =
● integer =
Once upon a time, there was a [age] old astronaut named
[name].
[name] lived on the planet [vegetable], which was
[float] light years away from Earth.
In the year [year], [name] decided to visit Earth. [name]
brought [integer] bags of space [vegetable] chips to
share with the Earthlings.
When [name] arrived on Earth, the Earthlings loved the
space [vegetable] chips and built a statue in [name]’s
honor.
All hail, [name]!
Programming Tips
We are always looking for new ways to make our code faster, efficient, and error proof.
We achieve this with structured programming.
Structured programming uses reusable
elements, like variables, to make a
program clearer and easy to update.
With regular programming, although it
requires less planning ahead, a program
is prone to errors and hard to update.
Structured
Regular
steps = 2
hero.moveRight(steps)
hero.moveDown()
hero.moveLeft(steps)
steps = 2
hero.moveRight(2)
hero.moveDown()
hero.moveLeft(2)
Concept Check: Variables
Variable
a way to store information in our
program so we can use it later
Name
Value
we give each variable a name so we can
keep track of different ones
the information that you store inside a
variable that you can change over and over
again
In this example, what part of the image is the variable, the name, and the value?
Pencils
Independent Practice
Independent Practice
Play Ozaria
Start Chapter 2 with Cinematic: The Moon Dancers and stop
after you finish Practice Level: Old Time is still a-flying
Extension Activity: Variable Stories with Numbers
Use the link provided by your teacher to complete this
Activity.
Need Help?
Always try it once & try using the troubleshooting guide first. If you
still need help after that, then reach out to a classmate or the
teacher.
Check-In
What did you discover?
Chapter 2, Module 3, Lesson 1
What I did:
-How far did you get in Ozaria? What was your favorite part?
What I noticed:
-What did you notice as you played through the game?
-Did you discover or learn something new?
What was challenging?
-Was something confusing about the story or the levels?
-Do you need more practice on a specific part of the code or the
game?
Module 3
Lesson 2
Variables with Strings
What did we learn last time?
-What are variables?
-What are the different types of
numbers you can store in
variables?
-How did you use variables in
Ozaria?
-Where did you go in Ozaria?
Today’s Journey
Warm-Up: Strings and Methods
Play Ozaria: Casting Illusions
Optional Extension: Variable Mad Libs
Variables with Strings
Variables
Variables are a way for us to keep
track of information in our code, such
as numbers and words.
Variable: The box is like a variable. It can hold
or store something that you can take out and use
whenever you need it.
Value: The number of coins in the box is the
value of the variable.
Variable Name: You label the box to
remember what kind of value it’s storing. When
you use a lot of variables, you will want to use
names to keep track of them.
Value
Variable
Name
coins = 3
Strings
Strings are a series of characters that can be numbers, letters, and more! Strings are a
type of data that can be stored in variables.
password = “St#ngs&Codez” “Capella” favoriteFood = “I like popcorn!”
123 Cabbage Lane
Why Use Strings?
Strings help you keep track of important information such as names, addresses, and more!
You can store strings inside variables so you can easily access them in your code.
Let’s say you have a string that lists the address to your home:
“123 Cabbage Lane,Moon Village,NY 10054 USA”
That’s a lot to type each time you want to use that information
in your code. Instead, you can store the string in a variable:
home = “123 Cabbage Lane,Moon Village,NY 10054
USA”
Now, you only have to type in the string variable name (home)
whenever you need to use the address in your code:
hero.goTo(home)
Why Use Strings?
Using string variables also makes it easy to change the strings.
You might create a character with pink hair and brown eyes whose name is Carmen.
name = “Carmen”
hair = “pink”
eyes = “brown”
name = “Julie”
hair = “blue”
eyes = “brown”
If you store all of this information as string variables in your program, then you can
change them at any time by just reassigning the variable.
Concept Check: Strings
Strings
Sort the data! Which ones are strings? Which ones are integers? Which ones are variable
names?
3342
Integers Variable Names
“1246” name
10,423
“l33t”
steps
“steps”
“name”
“Hello, world!”
1337
friend
helloWorld l33t
Methods with Information
Some methods return different kinds of information such as strings or numbers. You can
store that information into a variable.
The method finds the friend
that is nearest to the hero
nearFriend = findNearestFriend()
1
2
The method returns that
friend’s name as a string.
For example: “Capella”
You can store that string
inside a variable. Now,
nearFriend has the value
“Capella”
3
Concept Check: Story Builder
Our Variables
● age = myAge()
● name = myName()
● song =
● food = myFavoriteFood()
● number =
Story Builder
Our Variables
● age = myAge()
● name = myName()
● song =
● food =
myFavoriteFood()
● number =
Once upon a time, there was a [age] year old coder named
[name].
[name] liked to hum the song [song] while coding. It was
so annoying that their teammates would throw [food] until
[name] would stop singing.
Still, [name] was the best coder on the team and could
write [number] lines of code every day. Maybe [song] was
[name]’s secret power?
No one will ever know.
Independent Practice
Independent Practice
Play Ozaria
Start with Cinematic: Variables and Strings and
stop after you finish Cinematic: Xing’chen
Extension Activity: Variable Stories with Methods
Use the link provided by your teacher to complete this
activity.
Need Help?
Always try it once & try using the troubleshooting guide first. If you
still need help after that, then reach out to a classmate or the
teacher.
Check-In
What did you discover?
Chapter 2, Module 3, Lesson 2
What I did:
-How far did you get in Ozaria? What was your favorite part?
What I noticed:
-What did you notice as you played through the game?
-Did you discover or learn something new?
What was challenging?
-Was something confusing about the story or the levels?
-Do you need more practice on a specific part of the code or the
game?
Module 3, Lesson 3
Explorations
Networks and the Internet:
Breaking Down and
Transmitting Data
How do you use the internet on a day-to-day basis?
How do you think the internet works?
Visually interpret this.
Recall how storing
data has helped you in Ozaria.
Networks and the Internet
38
Network, Node & Packets
A network is a set of interconnected computers that share information or resources. Each
computer in a network is called a node and the bits if information sent over networks are
known as packets.
Node
bits of information sent
over networks
a computer in a network of
other computer
Packets
New
Node
New
Node
39
Distributed & Centralized Networks
Networks can be structured in different ways.
Programming, information, and data in the
network are spread out across multiple
nodes
All users connect to a central server that
communicates to all other devices on
the network
Distributed Centralized
1. With your classmates create a centralized
network.
1. One person must be the “server node”.
1. Everyone else will be a “client node”.**
1. Client nodes must send their information
through the central node.
**Note: all nodes will have a secret number. These nodes
will drop off when their number is called.
Explore
Centralized
Server
Node
Client
Node
1. With your classmates create a distributed
network.
1. Everyone will be a “client node”.**
1. Client nodes must send their information
through the 4-5 people closest to them.
**Note: all nodes will have a secret number. These nodes
will drop off when their number is called.
Explore
Distributed
Client
Node
Client
Node
Let’s think about what we experienced!
Share
Module 3, Lesson 4
Explorations
Networks and the Internet:
Network Protocols
Networks and the Internet
Recall what we have already learned about networks.
What are the basic building blocks of a network?
What do these basic components represent?
What are some examples of how Networks are
structured?
What is a Protocol?
A protocol is a standard set of rules that
allow electronic devices to communicate
with each other. These rules include:
● what type of data may be transmitted
● what commands are used to send and
receive data
● how data transfers are confirmed.
What is a Protocol?
You can think of a protocol as a spoken language. Each
language has its own rules and vocabulary. If two
people share the same language, they can
communicate effectively. Similarly, if two hardware
devices support the same protocol, they can
communicate with each other, regardless of the
manufacturer or type of device. For example, an Apple
iPhone can send an email to an Android device using a
standard mail protocol.
Why Do We Need Protocols?
Devices need to communicate with each
other.
For example, a printer needs to send
messages to a computer telling it that it
has run out of paper or that it is ready
to print, while a computer needs to
send the data it wants to print to the
printer.
Why Do We Need Protocols?
Computers need to send data between
themselves, too, so that, for example,
email can be exchanged, and the Internet
can function.
When two devices want to successfully
communicate, they must agree to follow
some rules about the way they will do it.
These are known as protocols.
What are some of the things we use the Internet for?
Visiting Web
Pages Sending
Emails
Transferring Files
Streaming
Media
Each task has one
or more protocols
associated with it
Common Tasks
50
Sending
Emails
Acronym Full name Purpose
DHCP Dynamic Host
Configuration Protocol
Used to assign IP addresses to clients on a network
DNS Domain Name System Used to translate human-friendly domain names to IP
addresses
HTTP Hypertext Transfer
Protocol
Used to transfer web pages between web servers and web
browsers across the internet
HTTPS Hypertext Transfer
Protocol Secure
Same as HTTP, but the data is encrypted so that it
remains private
SMTP Simple Mail Transfer
Protocol
Used when an email application (like Microsoft Outlook or
Gmail) wants to send an email. Emails are sent and
delivered by email servers across the internet.
Types of Protocols
DNS – Domain Name System
The Domain Name System servers share the
task of keeping track of all of the mappings of
IP addresses to domain names across the
internet.
It is like the phonebook of the internet.
Humans use domain names (like
www.apple.com) to look up information, but
computers need to know the IP address (like
212.58.249.215) to find the information.
DNS
52
HTTP– Hypertext Transfer Protocol
HTTP
53
Hypertext transfer protocol is used for retrieving
information from remote servers across the World
Wide Web. It is primarily used to access web pages,
but is the protocol behind many apps too.
A web browser (e.g. Chrome, Safari, etc.) requests a
resource from a web server. The server responds with
the requested resource and any other linked resources
(e.g. Cascading Style Sheets, JavaScript, or images).
HTTPS – Hypertext Transfer Protocol (Secure)
HTTPS
54
The secure version of HTTP (HTTPS) gathers all of
the requested information in an encrypted data
stream so that only the web browser and web
server can see the contents of the information.
HTTPS ensures that sensitive information, such as
bank account numbers, credit card numbers,
social security numbers, etc. can’t be intercepted
by anyone other than the intended receiver.
SMTP – Simple Mail Transfer Protocol
SMTP
55
This is the protocol used for sending email over the
Internet. Your email client (such as Gmail, Outlook,
or Mac OS X Mail) uses SMTP to send a message to
the mail server, and the mail server uses SMTP to
relay that message to the correct receiving mail
server.
Basically, SMTP is a set of commands that allow the
transfer of electronic mail.
Remember, a network protocol is a set of rules that:
● Determine how information is transmitted between
devices
● Set out what order the exchange should happen in
● Determine what users should do if they encounter an
error
Work in groups to ‘create’ your own protocol.
Make sure that it meets the requirements and restrictions.
Link to Activity
Activity: Create your own protocol
56
Resources
Standards Alignment &
Additional Resources
CSTA Standards Alignment
Algorithms & Programming
-1A-AP-10: Develop programs with sequences and simple loops, to express ideas or address a problem.
-1B-AP-09: Create programs that use variables to store and modify data.
-1B-AP-11: Decompose (break down) problems into smaller, manageable subproblems to facilitate the program
development process.
-1B-AP-15: Test and debug (identify and fix errors) a program or algorithm to ensure it runs as intended.
-2-AP-11: Create clearly named variables that represent different data types and perform operations on their values.
-2-AP-13: Decompose problems and subproblems into parts to facilitate the design, implementation, and review of
programs.
Networks and the Internet
-1B-NI-04: Model how information is broken down into smaller pieces, transmitted as packets through multiple devices
over networks and the Internet, and reassembled at the destination.
-2-NI-04: Model the role of protocols in transmitting data across networks and the Internet.
Common Core State Standards
Reading: Informational Text
-CCSS.ELA-LITERACY.RI.6.10/CCSS.ELA-LITERACY.RI.7.10/: By the end of the year, read and comprehend literary nonfiction
in the grades 6-8 text complexity band proficiently, with scaffolding as needed at the high end of the range.
-CCSS.ELA-LITERACY.RI.8.10: By the end of the year, read and comprehend literary nonfiction at the high end of the
grades 6-8 text complexity band independently and proficiently.
Writing
-CCSS.ELA-LITERACY.W.6.6: Use technology, including the Internet, to produce and publish writing as well as to interact
and collaborate with others; demonstrate sufficient command of keyboarding skills to type a minimum of three pages in
a single sitting.
-CCSS.ELA-LITERACY.W.6.10/CCSS.ELA-LITERACY.W.7.10/CCSS.ELA-LITERACY.W.8.10: Write routinely over extended time
frames (time for research, reflection, and revision) and shorter time frames (a single sitting or a day or two) for a range
of discipline-specific tasks, purposes, and audiences.
-CCSS.ELA-LITERACY.W.7.4/CCSS.ELA-LITERACY.W.8.4: Produce clear and coherent writing in which the development,
organization, and style are appropriate to task, purpose, and audience.
Speaking & Listening
-CCSS.ELA-LITERACY.SL.6.1/CCSS.ELA-LITERACY.SL.7.1/CCSS.ELA-LITERACY.SL.8.1: Engage effectively in a range of
collaborative discussions (one-on-one, in groups, and teacher-led) with diverse partners on grade 6-8 topics, texts, and
issues, building on others' ideas and expressing their own clearly.
Common Core State Standards
Math: Expressions & Equations
-CCSS.MATH.CONTENT.6.EE.B.6: Use variables to represent numbers and write expressions when solving a real-world or
mathematical problem; understand that a variable can represent an unknown number, or, depending on the purpose at
hand, any number in a specified set.
-CCSS.MATH.CONTENT.7.EE.B.4: Use variables to represent quantities in a real-world or mathematical problem, and
construct simple equations and inequalities to solve problems by reasoning about the quantities.
Resource Links
Teacher Materials
-Chapter 2 Solution Guide - Python
-Chapter 2 Solution Guide - JavaScript
Student Materials
-Check-in Journal Template
-Troubleshooting Guide
-Lesson 1 Extension Activity: Variable Stories with Numbers
-Lesson 2 Extension Activity: Variable Stories with Methods

Oz_Chap 2_M3_Lesson Slides_Variables.pptx

  • 1.
  • 2.
    Before you teach.. . You may want to prepare the following before you implement this module in your classroom: ❏ Make a copy of the slides if you’d like to revise or adapt them for your classroom ❏ Use the teacher dashboard to check student progress. ❏ Review Concept Check activities ❏ Navigate to Independent Practice slides to: ❏ Unlock specific modules and levels as necessary ❏ Review extension activities and have activity links ready to share ❏ Try out some practice levels on your own ❏ Review the solution guide
  • 3.
    How to teacha lesson. . . ❏ Use the first section of the lesson slides (up to Independent Practice slide) to introduce the new concept for that lesson ❏ If applicable, watch any Cutscene videos as a whole class to introduce the story line ❏ Extension Activities are found in the speaker notes of the Independent Practice slide. You can use them to differentiate pacing for fast finishers or for students who need reinforcement. ❏ Have students independently play through the suggested levels on the Independent Practice slide ❏ This section which will also include Cinematics and Concept Checks ❏ Use the Check-In section as an opportunity for students to reflect on what they have learned in the lesson
  • 4.
    Table of Contents ●Lesson 1: Introduction to Variables ○ Extension Activity: Variable Stories with Numbers ● Lesson 2: Variables with Strings & Methods ○ Extension Activity: Variable Stories with Methods Lessons ● Lesson 3: Networks and the Internet: Breaking Down and Transmitting Data ● Lesson 4: Networks and the Internet: Network Protocols Explorations ● Standards Alignment ● Materials & Resources Additional Resources
  • 5.
  • 6.
    What did welearn last time? -What’s the difference between syntax bugs and logic bugs? -What are some strategies you used to help debug your code? -What did we do in Ozaria?
  • 7.
    Today’s Journey Warm-Up: VariableMad Libs Play Ozaria: Moon Dancers Carnival Optional Extension: Variable Mad Libs
  • 8.
  • 9.
    Variables Variables are away for us to keep track of information in our code, such as numbers and words. Variable: The box is like a variable. It can hold or store something that you can take out and use whenever you need it. Value: The number of coins in the box is the value of the variable. Variable Name: You label the box to remember what kind of value it’s storing. When you use a lot of variables, you will want to use names to keep track of them. Value Variable Name coins = 3
  • 10.
    Variables What kind ofinformation do you need to track every day? How can they be stored as variables? password = “L33tCodez” teamOneScore = 6 teamTwoScore = 21 OzariaFlightNumber = “E83”
  • 11.
    Numbers & Variables Thereare different types of numbers that can be stored by variables. Integers A whole number that is not a fraction or decimal 100 4 -2 2663 Floats A number that has decimals -1.8 2.3 36.33 -0.5574 Numbers Any number 100 4 -2 2663 -1.8 2.3 36.33 -0.5574
  • 12.
    Story Builder Our Variables ●age = ● name = ● vegetable = ● float = ● year = ● integer =
  • 13.
    Story Builder Our Variables ●age = ● name = ● vegetable = ● float = ● year = ● integer = Once upon a time, there was a [age] old astronaut named [name]. [name] lived on the planet [vegetable], which was [float] light years away from Earth. In the year [year], [name] decided to visit Earth. [name] brought [integer] bags of space [vegetable] chips to share with the Earthlings. When [name] arrived on Earth, the Earthlings loved the space [vegetable] chips and built a statue in [name]’s honor. All hail, [name]!
  • 14.
    Programming Tips We arealways looking for new ways to make our code faster, efficient, and error proof. We achieve this with structured programming. Structured programming uses reusable elements, like variables, to make a program clearer and easy to update. With regular programming, although it requires less planning ahead, a program is prone to errors and hard to update. Structured Regular steps = 2 hero.moveRight(steps) hero.moveDown() hero.moveLeft(steps) steps = 2 hero.moveRight(2) hero.moveDown() hero.moveLeft(2)
  • 15.
    Concept Check: Variables Variable away to store information in our program so we can use it later Name Value we give each variable a name so we can keep track of different ones the information that you store inside a variable that you can change over and over again In this example, what part of the image is the variable, the name, and the value? Pencils
  • 16.
  • 17.
    Independent Practice Play Ozaria StartChapter 2 with Cinematic: The Moon Dancers and stop after you finish Practice Level: Old Time is still a-flying Extension Activity: Variable Stories with Numbers Use the link provided by your teacher to complete this Activity. Need Help? Always try it once & try using the troubleshooting guide first. If you still need help after that, then reach out to a classmate or the teacher.
  • 18.
  • 19.
    What did youdiscover? Chapter 2, Module 3, Lesson 1 What I did: -How far did you get in Ozaria? What was your favorite part? What I noticed: -What did you notice as you played through the game? -Did you discover or learn something new? What was challenging? -Was something confusing about the story or the levels? -Do you need more practice on a specific part of the code or the game?
  • 20.
  • 21.
    What did welearn last time? -What are variables? -What are the different types of numbers you can store in variables? -How did you use variables in Ozaria? -Where did you go in Ozaria?
  • 22.
    Today’s Journey Warm-Up: Stringsand Methods Play Ozaria: Casting Illusions Optional Extension: Variable Mad Libs
  • 23.
  • 24.
    Variables Variables are away for us to keep track of information in our code, such as numbers and words. Variable: The box is like a variable. It can hold or store something that you can take out and use whenever you need it. Value: The number of coins in the box is the value of the variable. Variable Name: You label the box to remember what kind of value it’s storing. When you use a lot of variables, you will want to use names to keep track of them. Value Variable Name coins = 3
  • 25.
    Strings Strings are aseries of characters that can be numbers, letters, and more! Strings are a type of data that can be stored in variables. password = “St#ngs&Codez” “Capella” favoriteFood = “I like popcorn!”
  • 26.
    123 Cabbage Lane WhyUse Strings? Strings help you keep track of important information such as names, addresses, and more! You can store strings inside variables so you can easily access them in your code. Let’s say you have a string that lists the address to your home: “123 Cabbage Lane,Moon Village,NY 10054 USA” That’s a lot to type each time you want to use that information in your code. Instead, you can store the string in a variable: home = “123 Cabbage Lane,Moon Village,NY 10054 USA” Now, you only have to type in the string variable name (home) whenever you need to use the address in your code: hero.goTo(home)
  • 27.
    Why Use Strings? Usingstring variables also makes it easy to change the strings. You might create a character with pink hair and brown eyes whose name is Carmen. name = “Carmen” hair = “pink” eyes = “brown” name = “Julie” hair = “blue” eyes = “brown” If you store all of this information as string variables in your program, then you can change them at any time by just reassigning the variable.
  • 28.
    Concept Check: Strings Strings Sortthe data! Which ones are strings? Which ones are integers? Which ones are variable names? 3342 Integers Variable Names “1246” name 10,423 “l33t” steps “steps” “name” “Hello, world!” 1337 friend helloWorld l33t
  • 29.
    Methods with Information Somemethods return different kinds of information such as strings or numbers. You can store that information into a variable. The method finds the friend that is nearest to the hero nearFriend = findNearestFriend() 1 2 The method returns that friend’s name as a string. For example: “Capella” You can store that string inside a variable. Now, nearFriend has the value “Capella” 3
  • 30.
    Concept Check: StoryBuilder Our Variables ● age = myAge() ● name = myName() ● song = ● food = myFavoriteFood() ● number =
  • 31.
    Story Builder Our Variables ●age = myAge() ● name = myName() ● song = ● food = myFavoriteFood() ● number = Once upon a time, there was a [age] year old coder named [name]. [name] liked to hum the song [song] while coding. It was so annoying that their teammates would throw [food] until [name] would stop singing. Still, [name] was the best coder on the team and could write [number] lines of code every day. Maybe [song] was [name]’s secret power? No one will ever know.
  • 32.
  • 33.
    Independent Practice Play Ozaria Startwith Cinematic: Variables and Strings and stop after you finish Cinematic: Xing’chen Extension Activity: Variable Stories with Methods Use the link provided by your teacher to complete this activity. Need Help? Always try it once & try using the troubleshooting guide first. If you still need help after that, then reach out to a classmate or the teacher.
  • 34.
  • 35.
    What did youdiscover? Chapter 2, Module 3, Lesson 2 What I did: -How far did you get in Ozaria? What was your favorite part? What I noticed: -What did you notice as you played through the game? -Did you discover or learn something new? What was challenging? -Was something confusing about the story or the levels? -Do you need more practice on a specific part of the code or the game?
  • 36.
    Module 3, Lesson3 Explorations Networks and the Internet: Breaking Down and Transmitting Data
  • 37.
    How do youuse the internet on a day-to-day basis? How do you think the internet works? Visually interpret this. Recall how storing data has helped you in Ozaria. Networks and the Internet
  • 38.
    38 Network, Node &Packets A network is a set of interconnected computers that share information or resources. Each computer in a network is called a node and the bits if information sent over networks are known as packets. Node bits of information sent over networks a computer in a network of other computer Packets New Node New Node
  • 39.
    39 Distributed & CentralizedNetworks Networks can be structured in different ways. Programming, information, and data in the network are spread out across multiple nodes All users connect to a central server that communicates to all other devices on the network Distributed Centralized
  • 40.
    1. With yourclassmates create a centralized network. 1. One person must be the “server node”. 1. Everyone else will be a “client node”.** 1. Client nodes must send their information through the central node. **Note: all nodes will have a secret number. These nodes will drop off when their number is called. Explore Centralized Server Node Client Node
  • 41.
    1. With yourclassmates create a distributed network. 1. Everyone will be a “client node”.** 1. Client nodes must send their information through the 4-5 people closest to them. **Note: all nodes will have a secret number. These nodes will drop off when their number is called. Explore Distributed Client Node Client Node
  • 42.
    Let’s think aboutwhat we experienced! Share
  • 43.
    Module 3, Lesson4 Explorations Networks and the Internet: Network Protocols
  • 44.
    Networks and theInternet Recall what we have already learned about networks. What are the basic building blocks of a network? What do these basic components represent? What are some examples of how Networks are structured?
  • 45.
    What is aProtocol? A protocol is a standard set of rules that allow electronic devices to communicate with each other. These rules include: ● what type of data may be transmitted ● what commands are used to send and receive data ● how data transfers are confirmed.
  • 46.
    What is aProtocol? You can think of a protocol as a spoken language. Each language has its own rules and vocabulary. If two people share the same language, they can communicate effectively. Similarly, if two hardware devices support the same protocol, they can communicate with each other, regardless of the manufacturer or type of device. For example, an Apple iPhone can send an email to an Android device using a standard mail protocol.
  • 47.
    Why Do WeNeed Protocols? Devices need to communicate with each other. For example, a printer needs to send messages to a computer telling it that it has run out of paper or that it is ready to print, while a computer needs to send the data it wants to print to the printer.
  • 48.
    Why Do WeNeed Protocols? Computers need to send data between themselves, too, so that, for example, email can be exchanged, and the Internet can function. When two devices want to successfully communicate, they must agree to follow some rules about the way they will do it. These are known as protocols.
  • 49.
    What are someof the things we use the Internet for? Visiting Web Pages Sending Emails Transferring Files Streaming Media Each task has one or more protocols associated with it
  • 50.
  • 51.
    Acronym Full namePurpose DHCP Dynamic Host Configuration Protocol Used to assign IP addresses to clients on a network DNS Domain Name System Used to translate human-friendly domain names to IP addresses HTTP Hypertext Transfer Protocol Used to transfer web pages between web servers and web browsers across the internet HTTPS Hypertext Transfer Protocol Secure Same as HTTP, but the data is encrypted so that it remains private SMTP Simple Mail Transfer Protocol Used when an email application (like Microsoft Outlook or Gmail) wants to send an email. Emails are sent and delivered by email servers across the internet. Types of Protocols
  • 52.
    DNS – DomainName System The Domain Name System servers share the task of keeping track of all of the mappings of IP addresses to domain names across the internet. It is like the phonebook of the internet. Humans use domain names (like www.apple.com) to look up information, but computers need to know the IP address (like 212.58.249.215) to find the information. DNS 52
  • 53.
    HTTP– Hypertext TransferProtocol HTTP 53 Hypertext transfer protocol is used for retrieving information from remote servers across the World Wide Web. It is primarily used to access web pages, but is the protocol behind many apps too. A web browser (e.g. Chrome, Safari, etc.) requests a resource from a web server. The server responds with the requested resource and any other linked resources (e.g. Cascading Style Sheets, JavaScript, or images).
  • 54.
    HTTPS – HypertextTransfer Protocol (Secure) HTTPS 54 The secure version of HTTP (HTTPS) gathers all of the requested information in an encrypted data stream so that only the web browser and web server can see the contents of the information. HTTPS ensures that sensitive information, such as bank account numbers, credit card numbers, social security numbers, etc. can’t be intercepted by anyone other than the intended receiver.
  • 55.
    SMTP – SimpleMail Transfer Protocol SMTP 55 This is the protocol used for sending email over the Internet. Your email client (such as Gmail, Outlook, or Mac OS X Mail) uses SMTP to send a message to the mail server, and the mail server uses SMTP to relay that message to the correct receiving mail server. Basically, SMTP is a set of commands that allow the transfer of electronic mail.
  • 56.
    Remember, a networkprotocol is a set of rules that: ● Determine how information is transmitted between devices ● Set out what order the exchange should happen in ● Determine what users should do if they encounter an error Work in groups to ‘create’ your own protocol. Make sure that it meets the requirements and restrictions. Link to Activity Activity: Create your own protocol 56
  • 57.
  • 58.
    CSTA Standards Alignment Algorithms& Programming -1A-AP-10: Develop programs with sequences and simple loops, to express ideas or address a problem. -1B-AP-09: Create programs that use variables to store and modify data. -1B-AP-11: Decompose (break down) problems into smaller, manageable subproblems to facilitate the program development process. -1B-AP-15: Test and debug (identify and fix errors) a program or algorithm to ensure it runs as intended. -2-AP-11: Create clearly named variables that represent different data types and perform operations on their values. -2-AP-13: Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs. Networks and the Internet -1B-NI-04: Model how information is broken down into smaller pieces, transmitted as packets through multiple devices over networks and the Internet, and reassembled at the destination. -2-NI-04: Model the role of protocols in transmitting data across networks and the Internet.
  • 59.
    Common Core StateStandards Reading: Informational Text -CCSS.ELA-LITERACY.RI.6.10/CCSS.ELA-LITERACY.RI.7.10/: By the end of the year, read and comprehend literary nonfiction in the grades 6-8 text complexity band proficiently, with scaffolding as needed at the high end of the range. -CCSS.ELA-LITERACY.RI.8.10: By the end of the year, read and comprehend literary nonfiction at the high end of the grades 6-8 text complexity band independently and proficiently. Writing -CCSS.ELA-LITERACY.W.6.6: Use technology, including the Internet, to produce and publish writing as well as to interact and collaborate with others; demonstrate sufficient command of keyboarding skills to type a minimum of three pages in a single sitting. -CCSS.ELA-LITERACY.W.6.10/CCSS.ELA-LITERACY.W.7.10/CCSS.ELA-LITERACY.W.8.10: Write routinely over extended time frames (time for research, reflection, and revision) and shorter time frames (a single sitting or a day or two) for a range of discipline-specific tasks, purposes, and audiences. -CCSS.ELA-LITERACY.W.7.4/CCSS.ELA-LITERACY.W.8.4: Produce clear and coherent writing in which the development, organization, and style are appropriate to task, purpose, and audience. Speaking & Listening -CCSS.ELA-LITERACY.SL.6.1/CCSS.ELA-LITERACY.SL.7.1/CCSS.ELA-LITERACY.SL.8.1: Engage effectively in a range of collaborative discussions (one-on-one, in groups, and teacher-led) with diverse partners on grade 6-8 topics, texts, and issues, building on others' ideas and expressing their own clearly.
  • 60.
    Common Core StateStandards Math: Expressions & Equations -CCSS.MATH.CONTENT.6.EE.B.6: Use variables to represent numbers and write expressions when solving a real-world or mathematical problem; understand that a variable can represent an unknown number, or, depending on the purpose at hand, any number in a specified set. -CCSS.MATH.CONTENT.7.EE.B.4: Use variables to represent quantities in a real-world or mathematical problem, and construct simple equations and inequalities to solve problems by reasoning about the quantities.
  • 61.
    Resource Links Teacher Materials -Chapter2 Solution Guide - Python -Chapter 2 Solution Guide - JavaScript Student Materials -Check-in Journal Template -Troubleshooting Guide -Lesson 1 Extension Activity: Variable Stories with Numbers -Lesson 2 Extension Activity: Variable Stories with Methods