Goal: Our goal for this lesson is to teach students the basics of algorithms and coding.
Students will learn a few important CS terms beforehand.
Algorithm
Coding
Loops
Students will work in partners to complete an unplugged activity to help them
understand more about algorithms and step-by-step instructions. Then the students will
practice what they have learned and apply it to Osmo coding on the iPads. The students
will have the opportunity to learn and apply basic CS skills and practice it on a fun and
interactive game.
Students will IN CS K-8: Jacob and I will assess the student's ability to provide
be able to 3-5.DI.1 step-by-step instructions when using Osmo. Jacob and I
provide step Understand and can assess the students when they are using block
by step use the basic coding on Osmo. If the students put in the wrong code,
instructions in steps in then the object does not move and the app makes you
order to algorithmic redo the code. Jacob and I can just walk around and
complete a problem solving assess the students if they need help. The students will
coding (e.g., problem be learning how important it is to provide the correct
application statement and algorithm, step-by-step instructions, in order for the task
game (Osmo). exploration, to be completed accurately. Osmo allows the
examination of assessment part to be done because students will know
sample instances, automatically if they are incorrect or correct. Jacob and I
design, can help guide the students, but for the most part,
implementation, students will be guiding their own learning and fixing their
and testing). mistakes.
ISTE-CSE: http://www.iste.org/standards/iste-standards/standards-for-computer-
science-educators
IN CS K-8: http://www.doe.in.gov/sites/default/files/standards/indiana-3-5-computer-
science-standards-2016-0415.pdf
Key Terms:
Osmo: a unique educational gaming accessory that opens up your iPad to the
infinite possibilities of physical play.
Problem solving: the process of finding solutions to difficult or complex issues.
Algorithm: a process or set of rules to be followed in order to complete a task.
Coding: a process or set of rules to be followed in order to complete a task.
Step by step instruction: the act or practice of instructing or teaching.
Procedures:
Introductory Overview
Jacob and I will introduce the students to our lesson by telling the students that they are
going to be playing a fun game with legos today, and then play on the iPads after that.
This will engage the students because kids loving playing games with one another and
playing with technology. We will start off the lesson by saying, Today we are going to
play a really fun game with legos to learn more about algorithms! An algorithm is a
process or set of rules to be followed in order to complete a task. An example of an
algorithm would be making a peanut butter and jelly sandwich. First you have to get the
bread, etc. Now turn to a partner and discuss some algorithms you perform on a daily
basis. The students will discuss their answers with a partner and we will share ideas.
We will do this as a group by the students raising their hands and Jacob and I calling on
them. Now you guys are going to play with legos and create your own algorithm, or list
of instructions. Are you guys excited? We will tell the students to get in partners and
take 5 to 7 legos from the bucket. The students will then find a space to sit with their
groups. Then Jacob and I will explain the unplugged activity and what they will be doing
for the day (the students are to create a lego structure and write on a sheet of computer
paper step-by-step instructions of how to recreate that structure without seeing a picture
of the final product. This will help students realize how detailed they need to be so that
others can follow their instructions correctly). We think that introducing the unplugged
activity as a game will motivate students to participate in our lesson. We also think that
the game will engage the students in learning more about algorithms and coding.
Motivation/Focus
As we mentioned above, we will introduce our unplugged activity as a game to engage
and excite the students to learn more about algorithms and coding. The students will
work in partners and each group is responsible for creating a lego structure and
providing clear instructions so that another group could recreate the same structure
based solely on the instructions provided. The students will be motivated because its a
game and the goal is to have each group be able to recreate the lego structure correctly
because that means that their directions were extremely specific and detailed. After the
students are introduced to the idea of algorithms, we will introduce the idea of coding.
We will allow each group to have one iPad and play with Osmo Coding. The students
are to use block coding to move complete various tasks. The students will use their
knowledge of algorithms to provide clear instructions for the iPad so the object moves in
the correct way in order to complete the task.
Ask students to turn to a partner and come up with an algorithm they do in their daily
lives (waking up, making pancakes, etc.)
Ask to share examples with everyone
Tell students to divide themselves in partners (they will be working with this group for
the station)
Describe the unplugged activity
Students will work together to create a lego structure, using 5 to 7 legos.
Once Jacob and I stop talking, the students are to grab a sheet of computer
paper, a pen, an iPad, and five to seven legos. The students are to find their own
space and create a lego structure using at least five legos. The students are to
then create a list of specific instructions of how to create the lego structure from
scratch. Once the students complete their instructions, they are to take a picture
of their creation on the iPad, pull up the picture and then flip the ipad screen side
down. The students will then break their lego structure and switch papers with
another group. The students will have to recreate the lego structure only using
the instructions that are provided. Once the students think they have it correct,
they can check the iPad to see if the picture matches what they created. If the
students have created the correct structure, then Jacob and I could assume that
the students understand how to provide specific instructions and have general
knowledge as to what an algorithm is.
After two rotations, we will ask the students to stop and ask them why it is important
to provide detailed instruction
This activity prompts students to think about individual instructions that are needed
but not to over complicate them. This is important in coding since the computer follows
those directions to the level of specificity the programmer gives.
Wrap Up Activity
Ask students what they have learned from todays lesson/if they enjoyed the
activities we had planned for them.
Osmo Coding
Alright students, we will collect the the legos, pen, and sheet of instructions. You
can stay in partners and hold onto the iPads!
Collect the other materials from the students
Now Jacob and I are going to pass out the Osmo Coding kit.
Pass out kit and explain how to set it up (put iPad on base and red reflector at
the top of the iPad
Once the students have finished setting up their iPads, tell them to have all eyes on
you so that we can explain what they will be doing.
Osmo Coding allows all of you to practice using algorithms when you create
codes. Does anyone know what coding means?
Take responses if applicable
Coding is the instructions in a computer program.
Why do you think coding may be important? Do we still have to provide specific
instructions?
After listening to some answers, explain how computer scientists provide clear,
specific algorithms when creating a code for technology softwares.
Now you guys are going to have the opportunity to practice coding on your iPads.
Everyone click on the app that says Osmo Coding.
Remind students about the unplugged activity and how detailed they needed
to be. It will help them when playing with Osmo.
When you log onto Osmo coding, it goes through a quick tutorial that explains the
different blocks and what they do, but Jacob and I will also explain it before they start so
no one is confused.
First Jacob and I will describe the green start button
This starts the code you programmed. Its important to remember to include
this
Next we will describe the blue pieces
These are the movement pieces. You can have your character move left,
right, up, and down.
Next we will describe the yellow pieces
If your character moves to the left four paces, then you can put your blue
movement tile down as well as your yellow numbered pieces so it moves four
paces automatically
After this short introduction, we will have the students begin to play Osmo with their
groups
There will be four students to the Osmo Coding program/station. Only two
students will be working on the Osmo station while the other two students in each
group will redo the lego game. This time the students are required to use 7-10
legos to create a structure and provide instruction for the other group. The
students will be able to create more complex structures and more specific
instruction. After six minutes, the groups will switch (the lego builders will move
to the Osmo and vice versa) and do the other task.
For each level, the group partners can rotate so everyone has a chance to
actually create the code. However the students can help and add input as to
what should be done to complete the task correctly
Jacob and I will walk around and answer questions
Ask what their thought process is to completing their codes?
After about five minutes the students will switch. After another five minutes, we will
ask the students to put everything away and bring iPads to the front.
Ask the students, What did you learn from todays lesson? What did you enjoy?
Why are algorithms so important for coding?
Listen to student response. We are looking for the students to have
developed an understanding of algorithms and the basics of coding. We want the
students to respond with answers that deal with learning something new about
computer science and how they can apply it in their daily lives. We also want the
students to respond that algorithms are important for coding because we need to
tell the computer exactly what we want it to do-it cannot read your mind.
Thank the students for their participation
Get ready for next group
References
Osmo Coding
Special Adaptations
I dont see any special adaptations other than the group sizes and potentially students
with special needs. Maybe one group will only have two students instead of three,
regardless, they should be able to complete the activities and still benefit from the
lesson. As for students with the needs, these will more than likely be told in advance to
assist with lesson planning but these have not been brought up. The only other
adaption would be if one student is taking control of the Osmo robot and leaving the
other student in the dust. To resolve this issue, Jacob and I will make sure that the
students switch each level so the students have the same opportunity to play/program
Osmo. We will do this by telling the students to switch once they have completed a
level.
Anticipated Difficulties
The only anticipated difficulty that I can think of would be the space. Hopefully the
students will have enough space to spread out when they create their lego structure.
The students arent going to want other groups to see what they are creating so finding
enough space is the only struggle I can see happening. Even if we have limited space
though, we can bring folders so students can cover their creations so the other groups
dont know what they created before reading the instructions.
The Osmo should be on a table so students have a level surface to place the pieces.