# data[].attributes.body
- Refers to breaking something up into parts.  In a computational thinking context, this means breaking a complex task into simpler subtasks.  In other parts of the curriculum, decomposition occurs in math as breaking up numbers into components, in science as representing systems as components, and ELA as parts of sentences.

# data[].attributes.headline
Students create models of mealworm life cycles

# data[].attributes.subject
Students create models of mealworm life cycles

# data[].attributes.body
Applying judgement to patterns/ attributes/facts/functions... that you have identified in a system/text... in service of determining what is pertinent, necessary, valuable, credible...

# data[].attributes.body
spotting similarities and common differences; by identifying patterns students can make predictions, create rules, solve more general problems

# data[].attributes.body
A sequence of steps to solve a problem or achieve an outcome.

# data[].attributes.body
Create computational artifacts by incorporating existing modules into one's own work to solve a problem.

Computational Thinking & Programming

Modularity

3-5

1B-CT-M-2

Creative Computing With Scratch - CCS 3-8: BootUp Curriculum PLTW - Launch URI - ICDS

Continually decompose problems into smaller subtasks until each subtask is a managable set of basic operations.

Computational Thinking & Programming

Modularity

3-5

1B-CT-M-1

Creative Computing With Scratch - CCS 3-8: BootUp Curriculum Bootstrap - Algebra Bootstrap - Data Science PLTW - Launch PLTW - CSE URI - ICDS

# data[].attributes.body
1A-AP-11 Decompose (break down) the steps
needed to solve a problem into a precise sequence of
instructions. (P3.2)

1B-AP-11 Decompose (break down) problems into
smaller, manageable subproblems to facilitate the
program development process. (P3.2)

# data[].attributes.body
Using known/acquired information to design or construct, and being able to share that creation with others.

# data[].attributes.body
Abstraction: Removing unnecessary details/information with a specific focus.

# data[].attributes.body
Our definition: using reasoning skills to make decisions and explain why something happens.

# data[].attributes.headline
Computational Thinking in Primary School:
An Examination of Abstraction and Decomposition
in Different Age Groups

# data[].attributes.subject
Computational Thinking in Primary School:
An Examination of Abstraction and Decomposition
in Different Age Groups

# data[].attributes.headline
Students use decomposition to make models of sensory receptors in science class.

# data[].attributes.subject
Students use decomposition to make models of sensory receptors in science class.

# data[].attributes.headline
Students evaluate evidence at a crime scene and make careful observations to figure out what happened to the laboratory worker.

# data[].attributes.subject
Students evaluate evidence at a crime scene and make careful observations to figure out what happened to the laboratory worker.

# data[].attributes.body
Students work together to figure out how to get their classmate over the wall.

# data[].attributes.headline
Students in process of modeling their circuits. They later added labels and showed the flow of electricity using another color. 

# data[].attributes.subject
Students in process of modeling their circuits. They later added labels and showed the flow of electricity using another color. 

# data[].attributes.headline
After learning about Rachel Carson's Silent Spring, students created a news broadcast on young environmental activists and how Rachel's ideals are still relevant and inspirational today. 

# data[].attributes.subject
After learning about Rachel Carson's Silent Spring, students created a news broadcast on young environmental activists and how Rachel's ideals are still relevant and inspirational today. 

# data[].attributes.body
This also used a great deal of collaboration!

# data[].attributes.headline
Students investigate conductors. They test a variety of materials to see if they can transfer energy to run a motor. Later on they look for a pattern between the materials that transfer and discover they're all metal. (I have a video of this but it's too large to post. If I can shrink it successfully, I'll upload it later on.) 

# data[].attributes.subject
Students investigate conductors. They test a variety of materials to see if they can transfer energy to run a motor. Later on they look for a pattern between the materials that transfer and discover they're all metal. (I have a video of this but it's too large to post. If I can shrink it successfully, I'll upload it later on.) 

# data[].attributes.headline
Students tinkered when they had to light a bulb with a battery. They also had to debug along the way. For some, this also was a perseverance opportunity. 

# data[].attributes.subject
Students tinkered when they had to light a bulb with a battery. They also had to debug along the way. For some, this also was a perseverance opportunity. 

# data[].attributes.headline
sticking with it until the end, even if the deadline passes; intrinsic motivation

# data[].attributes.subject
sticking with it until the end, even if the deadline passes; intrinsic motivation

# data[].attributes.headline
Students working together to create a product/new idea, share thoughts, knowledge, experiences,and/or understandings, solve a problem, and build common connections.

# data[].attributes.subject
Students working together to create a product/new idea, share thoughts, knowledge, experiences,and/or understandings, solve a problem, and build common connections.

# data[].attributes.body
Ss had to identify repeated patterns in code that could be replaced with a loop. Great unplugged lesson in 5th grade.

# data[].attributes.body
Ss had to write code and with loops and the other Ss had to model the code using cups.

# data[].attributes.body
Ss got to see under the hood. Programming using algorithms.

# data[].attributes.body
Science and computational thinking at its best. Ss explaining how the Moon revolves around the Earth using Scratch animation.

# data[].attributes.body
Students building and observing blood flow during a science experiment. Great computational thinking, finding a bug and debugging if the system did not function properly.

# data[].attributes.headline
Computational thinking and tinkering: Exploration of an early
childhood robotics curriculum

# data[].attributes.subject
Computational thinking and tinkering: Exploration of an early
childhood robotics curriculum

# data[].attributes.body
Children as young as four can play to learn a range
of concepts. The TangibleK Robotics Program paired developmentally appropriate computer programming and robotics tools to engage kindergarten children in
learning computational thinking

# data[].attributes.headline
Finding mistakes in other peer's math work

# data[].attributes.subject
Finding mistakes in other peer's math work

# data[].attributes.body
Having second grade students identify the main idea of non fiction text requires them to focus on big ideas while putting aside small not crucial to main idea details.
Reading literature they work on retelling the story but leave out small details and only tell the large events.

# data[].attributes.body
Designing a process to separate a mixture into its component substances.

# data[].attributes.body
Deciding what to include in a model of the forces acting on a system

# data[].attributes.body
Ss observe changes in mealworms, butterflies and milkweed bugs to identify life cycles, and that although different, all organisms have a life cycle.

# data[].attributes.headline
figuring out why the telegraph is not working

# data[].attributes.subject
figuring out why the telegraph is not working

# data[].attributes.headline
54 is the same as 50 and 4 or 14 and 40 ... so on and so forth

# data[].attributes.subject
54 is the same as 50 and 4 or 14 and 40 ... so on and so forth

# data[].attributes.headline
using manipulative to prove a theorem or property... sticking with it until they do.

# data[].attributes.subject
using manipulative to prove a theorem or property... sticking with it until they do.

# data[].attributes.body
Model daily processes by creating and following algorithms to complete tasks.

Computational Thinking & Programming

Algorithms

K-2

1A-CT-A-1

Code.org - Fundamentals Creative Computing With Scratch - CCS K-2 Creative Computing With Scratch - CCS 3-8: BootUp Curriculum URI - ICDS

# data[].attributes.body
Collaboration (as opposed to cooperation) involves mutual effort and contribution in pursuit of a shared goal. This effort and contribution doesn't have to be equal, but is essential to achieving a creation of material or concept.

# data[].attributes.body
Kdg. Ss had to design and build a marble run. This was their first opportunity to go through the design process. It presented a lot of challenges, but the objective of the lesson was to help students realize that failure and frustration are common when working on projects, and to never give up (persistence).

# data[].attributes.body
Gems

# data[].attributes.wish_content.attachment_props.text
Can we try to make an arm model? 💪🏾 🏋🏽‍♀️ @gemsnet10 #BulldogEd #sciencerules

# data[].attributes.wish_content.attachment_props.original_text
Can we try to make an arm model? 💪🏾 🏋🏽‍♀️ @gemsnet10 #BulldogEd #sciencerules https://t.co/Iiby8eNuhP

# data[].attributes.attachment_link.embed_code
Can we try to make an arm model? 💪🏾 🏋🏽‍♀️ @gemsnet10 #BulldogEd #sciencerules pic.twitter.com/Iiby8eNuhP
— Felicia Bornholm (@mrsbornholm_3) June 6, 2018

# data[].attributes.headline
CS4RI Standards
Use an iterative process to plan the development of a computational artifact by including others' perspectives and considering user preferences.Computational Thinking & ProgrammingComputational Design3-51B-CT-CD-1Code.org - Fundamentals Creative Computing With Scratch - CCS 3-8: BootUp Curriculum PLTW - Launch

# data[].attributes.subject
CS4RI Standards
Use an iterative process to plan the development of a computational artifact by including others' perspectives and considering user preferences.Computational Thinking & ProgrammingComputational Design3-51B-CT-CD-1Code.org - Fundamentals Creative Computing With Scratch - CCS 3-8: BootUp Curriculum PLTW - Launch

# data[].attributes.body
Identify real world examples of data structures and data types.

Computational Thinking & Programming

Data Structures and Data Types

3-5

1B-CT-D-1

Code.org - Discoveries PLTW - Launch URI - ICDS

# data[].attributes.body
Decompose a task into a set of smaller tasks.

Computational Thinking & Programming

Modularity

K-2

1A-CT-M-1

Creative Computing With Scratch - CCS K-2 Creative Computing With Scratch - CCS 3-8: BootUp Curriculum Bootstrap - Algebra Bootstrap - Data Science PLTW - Launch URI - ICDS

# data[].attributes.body
Identify a task that includes sequences and simple loops.

Computational Thinking & Programming

Computational Design

K-2

1A-CT-CD-2

Creative Computing With Scratch - CCS K-2 PLTW - Launch URI - ICDS

# data[].attributes.headline
CS4RI Standards
Develop a plan that describes what a computational artifact should look like and how it should perform.
Computational Thinking & Programming
Computational Design
K-2
1A-CT-CD-1
Code.org - Discoveries Creative Computing With Scratch - CCS K-2 PLTW - Launch URI - ICDS

Describe steps taken and choices made during the process of creating a computational artifact.
Computational Thinking & Programming
Computational Design
3-5
1B-CT-CD-3
Creative Computing With Scratch - CCS 3-8: BootUp Curriculum Bootstrap - Algebra Bootstrap - Data Science PLTW - Launch URI - ICDS

# data[].attributes.subject
CS4RI Standards
Develop a plan that describes what a computational artifact should look like and how it should perform.
Computational Thinking & Programming
Computational Design
K-2
1A-CT-CD-1
Code.org - Discoveries Creative Computing With Scratch - CCS K-2 PLTW - Launch URI - ICDS

Describe steps taken and choices made during the process of creating a computational artifact.
Computational Thinking & Programming
Computational Design
3-5
1B-CT-CD-3
Creative Computing With Scratch - CCS 3-8: BootUp Curriculum Bootstrap - Algebra Bootstrap - Data Science PLTW - Launch URI - ICDS

# data[].attributes.body
Debug errors in an algorithm or program that includes sequences and simple loops.

Computational Thinking & Programming

Computational Design

3-5

1B-CT-CD-2

Code.org - Fundamentals Creative Computing With Scratch - CCS K-2 Creative Computing With Scratch - CCS 3-8: BootUp Curriculum PLTW - Launch URI - ICDS

# data[].attributes.headline
CS4RI Standards
Compare and refine multiple algorithms for the same task and determine which is more appropriate to complete the task.
Computational Thinking & Programming
Algorithms
3-5
1B-CT-A-1
Creative Computing With Scratch - CCS 3-8: BootUp Curriculum PLTW - Launch URI - ICDS

# data[].attributes.subject
CS4RI Standards
Compare and refine multiple algorithms for the same task and determine which is more appropriate to complete the task.
Computational Thinking & Programming
Algorithms
3-5
1B-CT-A-1
Creative Computing With Scratch - CCS 3-8: BootUp Curriculum PLTW - Launch URI - ICDS

# data[].attributes.body
1A-IC-17 Work respectfully and responsibly with
others online. (P2.1)

1B-IC-20 Seek diverse perspectives for the purpose
of improving computational artifacts. (P1.1)

# data[].attributes.body
1B-AP-09 Create programs that use variables to
store and modify data. (P5.2)

2-AP-11 Create clearly named variables that
represent different data types and perform operations
on their values. (P5.1, P5.2)

Control

1A-AP-10 Develop programs with sequences and
simple loops, to express ideas or address a problem.
(P5.2)

1B-AP-10 Create programs that include sequences,
events, loops, and conditionals. (P5.2)

# data[].attributes.body
1A-AP-08 Model daily processes by creating and
following algorithms (sets of step-by-step instructions)
to complete tasks. (P4.4)

1B-AP-08 Compare and refine multiple algorithms for
the same task and determine which is the most
appropriate. (P6.3, P3.3)

# data[].attributes.body
1A-DA-07 Identify and describe patterns in data
visualizations, such as charts or graphs, to make
predictions. (P4.1)

# data[].attributes.body
1B-DA-06 Organize and present collected data
visually to highlight relationships and support a claim.
(P7.1)

# data[].attributes.body
1B-DA-07 Use data to highlight or propose cause-
and-effect relationships, predict outcomes, or communicate an idea. (P7.1)

# data[].attributes.body
1A-AP-14 Debug (identify and fix) errors in an
algorithm or program that includes sequences and
simple loops. (P6.2)

1B-AP-15 Test and debug (identify and fix errors) a
program or algorithm

# data[].attributes.body
I can develop a model to describe that matter is made of particles too small to be seen

# data[].attributes.body
I can generate and compare multiple possible solutions to a problem based on how well each is likely to meet the criteria and constraints of the problem.

# data[].attributes.body
I can represent data in graphical displays to reveal patterns of daily changes in length and direction of shadows, day and night, and the seasonal appearance of some stars in the night sky

# data[].attributes.body
I can plan and carry out fair tests in which variables are controlled and failure points are considered to identify aspects of a model or prototype that can be improved

# data[].attributes.body
Students use the following Thinking and Feedback protocol to give feedback to improve the work of classmates and make changes to their own work.

# data[].attributes.body
After researching, a student highlights the most important information to prepare for a class discussion.

# data[].attributes.headline
This paper reviews the literature related to the learning and teaching of debugging computer programs. Debugging is an important skill that continues to be both difficult for novice programmers to learn and challenging for computer science educators to teach

# data[].attributes.subject
This paper reviews the literature related to the learning and teaching of debugging computer programs. Debugging is an important skill that continues to be both difficult for novice programmers to learn and challenging for computer science educators to teach

# data[].attributes.attachment_link.title
Debugging a review of the literature from an educational perspective.pdf

# data[].attributes.attachment_link.title
Understanding problem solving behavior of 6 8 graders in a debugging game.pdf

# data[].attributes.headline
Beyond jam sandwiches and cups of tea: An exploration ofprimary pupils'algorithm‐evaluation strategies

# data[].attributes.subject
Beyond jam sandwiches and cups of tea: An exploration ofprimary pupils'algorithm‐evaluation strategies

# data[].attributes.headline
Computational Thinking in Primary School:
An Examination of Abstraction and Decomposition
in Different Age Groups

# data[].attributes.subject
Computational Thinking in Primary School:
An Examination of Abstraction and Decomposition
in Different Age Groups

# data[].attributes.attachment_link.readable_text
"FUZZY SIPPERS" is the third lesson in a 10 week Tinkering series offered to first grade students. Using everyday materials in open-ended projects, we transform the ordinary to the extraordinary while nurturing problem solving skills, building creative confidence, encouraging collaboration, and empowering students as agents of their own success.

What is tinkering? Tinkering is experimenting with ideas, tools and materials to discover the myriad of possibilities that everyday objects can hold. Tinkering allows us to invent marvelous creations through working with our hands, persevering through setbacks, and engaging with others in creative collaboration. Tinkering is "thinking with our hands."

Why tinkering? Thanks to smart phones, video games, and good ol' TV, too much of our kids' world is virtual and their experiences are largely vicarious. Tinkering allows for empowered, active learning. It is real interaction with real objects, real tools, and real people.

DESCRIPTION: In this lesson, students will explore the properties of flexible and rigid materials (pipe cleaners and plastic straws), the concept of tension, and basic engineering / building principles to create fantastical structures from pipe cleaners and plastic straws.
OBJECTIVES & GOALS:

Explore the physical attributes of flexible and rigid solids

Discover the importance of creating a wide, sturdy base in creating tall structures

Develop perseverance and creative confidence through experiential Tinkering activity

Foster collaboration between small groups of students

Encourage speaking and listening skills in group discussion

Step 1: Materials & Introduction

MATERIALS:
Clear plastic straws (cut into 2" pieces) (each student will need at least 25 pieces)

Fuzzy craft stems / pipe cleaners (cut into 3" pieces) (each student will need at least 75 pieces)

INTRODUCTION & DEMO (students on the rug) - 10 minutes

(Note to readers: For suggestions on guided conversations that introduce students to the idea of TINKERING, please see my Instructable "FLOWERS FROM MARS", which is week 1 of a 10-week tinkering curriculum)

Begin with the Tinkering motto: "When we Tinker ... we think with our hands." and we make this gesture (Wiggle fingers at your temple and move them outward). Explain to kids to imagine that their hands are holding all their ideas and when you wiggle your fingers it's like letting the ideas come out from your brain.
Inquire about iteration:
Last week, we tinkered with strips of paper and staplers. Did anyone have an opportunity to tinker some more with those materials and tools? Allow students to share their further explorations. If you have many students with their hands in the air, take a moment to do a "Pair Share" where they turn to the person sitting next to them and tell them about what they created. Remind students that an important part of tinkering is sharing our ideas with our classmates.
Introduce TOOLS and MATERIALS:
MATERIALS - Introduce straws and pipe cleaners. Discuss the different ways that the straw and the pipe cleaner are flexible. The straw can be bent, but it pops right back into its cylinder/tube shape when you let go. When you bend the pipe cleaner, it stays bent because there is a metal wire inside. It also has a fuzzy surface that you can squish down, but it will pop back into being fuzzy when you let go.

TOOLS - Remember that are things we use to help us make, build and create. Mention that you used scissors as a tool to prepare the straws and pipe cleaners, but today, the only tools the students will be using are their own hands!

Share

Recommendations

Tape Contest

Trash to Treasure

Paper Contest

Step 2: Demonstration (10 Minutes)

Hold up a piece of straw and a pipe cleaner and ask students how we might use these together to build something. Students will likely suggest putting the pipe cleaner into the straw. Demonstrate that the pipe cleaner will stay in place because the fuzzy surface is pushing against the inside of the straw, which helps to hold it there. (you can define this as "tension" if you wish)

Demonstrate connecting a few straws and pipe cleaners together will make a longer chain, but that you can't really build anything that will stand on its own. Pose the question "How can we change the way we put these together to make a structure that can stand on its own?"

Take suggestions and then demo how put three pipe cleaners into one straw, and bend them open to make a base.

Tell the kids: "It looks a little like a chicken's foot, and in the same way a chicken's foot helps it to stand, using three pipe cleaners at once will help your structure to stand."

Pose the challenge: Can you combine many "chicken feet" together to make a structure that stands tall? Can you use your imagination to create buildings, or playgrounds, or animals, or whatever else comes to your mind?

Have the kids consider: Sometimes when we tinker, we may have an idea in our heads about something specific that we want to make and sometimes we don't have a clear idea. Other times, we may get frustrated because the materials aren't really suited for making what we imagine and we need to let some ideas go for new ideas to come. The important thing to do is keeping experimenting with the materials and see where the tinkering takes us.

Remind them of the rules: There is no "WRONG" in Tinkering, but there are a few rules:
1 - RESPECT the Materials and Tools - Use tools properly, be mindful to use materials wisely, not wastefully 2 - RESPECT your classmates - share materials, share tools. Be encouraging! Work together! 3- RESPECT yourself - always try your hardest. It's OK to feel frustrated, but keep working and keep trying. Be PROUD of what you do.

Step 3: Tinkering Time! (25 Minutes)

For the first 10 minutes, children will work independently, exploring the materials on their own. Students should feel free to tinker and experiment with the tools and materials, so long as they are following the 3 rules of respect.

After 10 minutes, stop and get the children's attention to issue a new challenge. "I now challenge you to see if you can connect what you've created with the other kids' creations at your table." When you see collaboration happening, call it to everyone's attention and celebrate it!

Watch for signs of frustrations while students are working. Remind students to just say "Whoo-hoo!" when they've made what they think is a mistake. Invariably, these structures will collapse / topple over / loosen and break apart. Students will need to persevere through these setbacks and figure out how to solve the issue.

At the last 5 minutes, give a 5 minute warning to clean up time and say, "I challenge you to take it even further. Can you connect even more together? Can you transform it in a way that it hasn't been done yet? " Give 2 minute and 1 minute warnings.

Step 4: Clean Up and Reflection (10 Minutes)

Clean Up / Gallery Walk:
Students should clean up their tables, returning unused materials to their proper containers. Cleaning up after ourselves is an important part of Tinkering. Creations can be left on tables (since they fall apart easily) and students can do a "gallery walk" around the tables to see what the other kids created.

Reflection Time: In a circle on the rug, students can bring what they've created to share in a facilitated dialogue about the tinkering experience. "When we tinker, it's good to share our ideas and the things we discovered with each other." "It's important that only one person talks at a time and they we give respect to each other."

This week's reflection time can focus on managing frustrations. Ask students, "Did anyone experience any sticky points? Moments where they felt frustrated? How do you get past it?"

Open discussion to sharing what students created, storytelling about ideas behind what they created and offering appreciations.

Closing: A final thought on having these materials come apart ... these materials are completely re-usable and pieces can be taken apart and built into something entirely new. If you work at free-choice time, look at what's been made already and alter and add to it to make something different.

End with the phrase & gesture. "When we tinker, we think with our hands."

Step 5: Some Other Thoughts for Those Who Haven't Seen the Previous Week's Tinerking for 1st Grade Lesson Plans on Instructables

AN IMPORTANT NOTE ON THE QUESTION: "Can I take this home?" Invariably, students will want to take what they create home to show their parents. They're proud of what they've created, and that's a good thing. The one draw back to allowing students to take home what they make is that when students have worked together on an creation, the question arises as to WHO gets to take it home. Or even worse, children are disinclined to collaborate because they want to take their individual creation home. At our school, we resolved this issue with a policy we share with the students from the start, which is that what we make in Tinkering class, stays in the classroom to be used as inspiration for others. We hold Tinkering class Thursdays, and each 1st grade teacher has a "Tinkering Station" set up for their free choice time on Friday afternoons. The same materials and tools from the day before are made available, and students are invited to be self-directed in further tinkering lessons. For Friday free choice, we have a "make it and take it" policy. What you create with Tinkering materials and tools on Friday, they may take home.
Goals & Perspectives on 1st Grade Tinkering Program:
Open-Ended Challenges: There is no "right" way to do it, no step-by-step instructions. Challenges are designed for success in a variety of ways and allow students to investigate and succeed on their own terms.

Collaborative in nature: All tinkering challenges are group projects where individual work could join together with classmates' to create something new. Students build together, fostering a sense of being part of something larger than themselves.

Materials are ordinary objects, recycled whenever possible: Challenges envision ways to use familiar objects in unfamiliar ways. Toilet paper rolls, milk cartons, paper goods; the materials are all things that kids have at home, so they can continue tinkering.

Embracing failures, managing frustrations and persevering: "Nothing is a mistake. There's no win and no fail. There's only MAKE." Getting stuck is celebrated as students are encouraged to see sticky points as opportunities to learn.

Revisit & iterate with "free-choice" tinkering station: Materials from each week's challenge are made available at a "Tinkering Station" at free choice time, allowing students to explore further and be self-directed in their learning.

Empathy & Storytelling: Opportunities for speaking and listening are included as part of reflection time. Students share stories of what they've created and offer appreciations for classmates and the skills and abilities they bring to the group.

Enhancing design sensibilities: Challenges value the form of the object as much as its function. Challenges are designed to be aesthetically pleasing and enliven imaginations.

Respect for materials and tools: Tools and materials are the vehicles for our creativity and expression. Tools are used properly and although we may sometimes make a mess when tinkering, we always clean up after ourselves.

Creative confidence: Empowering children to see themselves as Makers and creators

Problem solving, curiosity, inquiry: Challenges are designed to encourage an understanding of materials and their properties and how to manipulate them to create something new. Students are encouraged to stretch and explore, discovering what else they can create.

FUN! The serious work of PLAY. Einstein said, "Play is the highest form of research."

# data[].attributes.attachment_link.title
FUZZY SIPPERS - 1st Grade Tinkering - Week 3

# data[].attributes.attachment_link.description
FUZZY SIPPERS - 1st Grade Tinkering - Week 3: "FUZZY SIPPERS" is the third lesson in a 10 week Tinkering series offered to first grade students. Using everyday materials in open-ended projects, we transform the ordinary to the extraordinary while nurturing problem solving skills, building cre...

# data[].attributes.headline
Teaching Perseverance to Different Grade Levels

# data[].attributes.subject
Teaching Perseverance to Different Grade Levels

# data[].attributes.attachment_link.readable_text
We all know students who seem to give up quickly and appeal for our help, even when the task is appropriately challenging, or students who are reluctant to even start a task that seems challenging and instead opt to sit and wait until we check in with them. These behaviors can halt progress and feel frustrating for both students and teacher.
Clearly, students don't always come to school knowing how to move from "This is too hard" to "This may take some time and effort but I can do it." That means we need to teach them strategies such as positive self-talk, taking a couple of deep breaths to calm themselves and then returning to work, choosing a different approach, or asking a partner a clarifying question.

Interactive Modeling is a powerful Responsive Classroom practice used to teach students the skills, strategies, and procedures they need for success in school. You can use Interactive Modeling to show students how to use a paintbrush, sound out words, or take care of the class pet. And you can also use it to teach them higher level academic skills and behaviors, such as how to persevere through challenging academic work.

Modeling Perseverance Strategies

As the following examples for primary and upper elementary grades show, Interactive Modeling is a good way to teach students how to persevere because it shows them what perseverance looks and sounds like and gives them immediate opportunities for supported practice.

Interactive Modeling is a straightforward, seven-step process used to teach children skills, strategies, or procedures that you want them to do in a specific way.

1. Briefly state what you will model, and why.

2. Model the behavior exactly as you expect students to do it. (Don't narrate unless you need to "show" an internal thinking process.)

3. Ask students what they noticed. Prompt them to notice essential details.

4. Invite one or more students to model the same way you did.

5. Again, ask students what they noticed.

6. Have all students practice.

7. Provide feedback.

To learn more, see Interactive Modeling: A Powerful Technique for Teaching Children.

Primary Grades Example

1. Say what you're going to model and why. "Remember when we played 'Rumpelstiltskin' at Morning Meeting today? That's a fun game, but it's also kind of hard. And you figured out how to help yourselves through the hard parts. Sometimes our schoolwork is challenging, too. And just as you figured out how to help yourself during 'Rumpelstiltskin,' it's important to learn how to help yourself when you feel frustrated with your work. I'm going to show you one way to help yourself when your work feels hard."

2. Model the behavior. "Watch what I do and say as I try to figure out how to understand this math problem." The teacher models reading a short problem and beginning to draw a picture to visualize it. Then he gives the sign (a finger pointing to his head) that he's going to do a think-aloud: "This is that kind of problem we've been doing where a number is missing. I don't know how to draw this and I'm frustrated." He takes a few deep breaths. "OK. I feel calmer. I can figure this out. Maybe I can use cubes instead of drawing."

3. Ask students what they noticed. "What did you notice me do when I got stuck on my work?" The students name what they saw and heard. The teacher prompts them if they missed anything important.

4. Invite a student to model. "Jocelyn, can you model taking a couple of deep breaths and talking to yourself in a calm way? Watch Jocelyn and notice what she does."

5. Again, ask students what they noticed. "What did you notice Jocelyn do when she got stuck?" Students name what they heard and saw.

6. Have all students practice. "As you work on your math tasks, pay attention to any times that the work feels hard. Then think about what you saw and heard when Jocelyn and I got stuck. After math, we'll talk about how you helped yourself. Sometimes, you'll still need my help, and that's OK too."

7. Provide feedback. As students work on their math, the teacher checks in with them. When he sees them using a calming strategy, he reinforces their behavior: "Amir, it looks like you took a deep breath and tried the problem a different way. You're remembering what we practiced!" And if he sees a student struggling, he reminds them what to try if they're stuck.

At the end of math class, he asks reflection questions: "Did any parts of math feel hard today?" "What did you try when math felt hard?" "How did that feel?"

Upper Elementary Grades Example

1. Say what you're going to model and why. "Challenging work can be exciting and can help us learn, but it can also feel frustrating. I'm going to show you a strategy to use when you get stuck on a problem so that you can keep going and feel successful, even if it's hard."

2. Model the behavior. "Watch what I do and say as I work on this math problem." The teacher models beginning a math problem and then gives the sign (a finger pointing to her head) that she's going to do a think-aloud. "Hmmm, this doesn't seem to make sense. Ugh, I get so frustrated when stuff doesn't make sense." She takes a couple of deep breaths. "This feels hard but that's OK. I'll reread it slowly out loud this time." She then returns to the problem.

3. Ask students what they noticed. "What did you notice about how I worked on that problem?" The teacher listens as students name what they saw and heard. She prompts them if they missed the self-talk she used to get through the tough part.

4. Invite one or more students to model. "Who would like to demonstrate taking a couple of calming breaths and using positive self-talk, just as I did?"

5. Ask students what they noticed. "What did you notice Marcus do as he worked on the problem?" The teacher takes a few observations then digs deeper: "How will doing this help Marcus?" she asks.

6. Have all students practice. "Now we're going to continue working on math problems. As you work, pay attention to any time that you struggle and remember what you saw and heard. During our reflection later, you'll have a chance to share what you did to work through the challenging parts."

7. Provide feedback. The teacher checks in with students as they work and reinforces their positive efforts; when they seem stuck, she reminds them what to try. At the end of class, she asks a few reflection questions: "What helped you today when you were stuck?" "What will you try tomorrow if something is challenging?"

Supporting Students as They Use the New Strategies

Once you've done the initial teaching through Interactive Modeling, students will need continuing opportunities to practice using perseverance strategies. Here are some ways you can support them.

Display the strategies. Try creating anchor charts listing the strategies you've modeled. One chart might list all the strategies; another might list a few key details about one of the strategies, such as phrases students could use in their self-talk.

Use positive teacher language. Reinforcing language lets students know what they're doing well so they can continue to make improvements. And before students begin challenging work, reminding language helps them remember what they can do to help themselves. Here are some examples to get you started:

An Empowering Message

Teaching students how to persevere when they feel stuck sends them an empowering message: that they can grow to be independent and confident learners. Using Interactive Modeling to teach perseverance strategies lets students observe exactly how to use the strategies, practice right away, and receive immediate feedback on their efforts. That clarity and immediacy will help ensure their success in learning how to work through difficulties not just in their schoolwork but in other challenging classroom situations as well.

# data[].attributes.attachment_link.title
Teaching Perseverance? Try Interactive Modeling | Responsive Classroom

# data[].attributes.attachment_link.description
We all know students who seem to give up quickly and appeal for our help, even when the task is appropriately challenging, or students who are reluctant to even start a task that seems challenging and instead opt to sit and wait until we check in with them.

# data[].attributes.attachment_link.readable_text
Iterative loops. Code reviews. Fast feedback. Error checking and linting. These are software engineering practices that have proven to dramatically improve the quality of code developers produce. What if you can could get all of this, instantaneously, while typing code line by line and character by character? You can, with pair programming, a technique common to many agile work environments.

More "two heads are better than one" than "stop reading over my shoulder," pair programming is the practice of two developers sharing a single workstation to interactively tackle a coding task together. At Code Fellows, pair programing is one way we foster a collaborative environment while developing key industry skills.

How does pair programming work?

While there are many different styles, pair programming commonly involves two roles: the Driver and the Navigator. The Driver is the programmer who is typing and the only one whose hands are on the keyboard. Handling the "mechanics" of coding, the Driver manages the text editor, switching files, version control, and-of course writing-code. The Navigator uses their words to guide the Driver but does not provide any direct input to the computer. The Navigator thinks about the big picture, what comes next, how an algorithm might be converted in to code, while scanning for typos or bugs. The Navigator might also utilize their computer as a second screen to look up solutions and documentation, but should not be writing any code.

Why pair program?

While learning to code, developers likely study several programming languages. Similar to a foreign language class, there are four fundamental skills that help anyone learn a new language: Listening: hearing and interpreting the vocabulary Speaking: using the correct words to communicate an idea Reading: understanding what written language intends to convey Writing: producing from scratch a meaningful

Pair programming touches on all four skills: developers explain out loud what the code should do, listen to others' guidance, read code that others have written, and write code themselves.

During a five-hour paired lab session, Code Fellows students work on all four of these language-specific skills. The abilities they foster will serve them well in completing assignments, in their own communication and learning, in interviews, and in readiness for a job at a company that utilizes this agile practice.

Wow, all that? Let's take a look!

1. Greater efficiency

It is a common misconception that pair programming takes a lot longer and is less efficient. In reality, when two people focus on the same code base, it is easier to catch mistakes in the making. Research indicates that pair programing takes slightly longer, but produces higher-quality code that doesn't require later effort in troubleshooting and debugging (let alone exposing users to a broken product). So, in the long-run, it's often actually more efficient than two people working on separate features. When coming up with ideas and discussing solutions out loud, two programmers may come to a solution faster than one programmer on their own. Also, when the pair is stuck, both programmers can research the problem and reach a solution faster. Researches also identified pairing enhances technical skills, team communication, and even enjoyability of coding in the workplace.

2. Engaged collaboration

When two programmers focus on the same code, the experience is more engaging and both programmers are more focused than if they were working alone. It is harder to procrastinate or get off track when someone else is relying on you to complete the work. Popping open your Facebook timeline is just that less enticing when someone else is looking at your screen.

Another important aspect of learning to program is knowing when to ask for help. We advise our students to spend no more than fifteen minutes stuck on a problem before asking a teaching assistant or instructor for help. When developers pair program, they rely more on each other and can often find a solution together without needing to ask for additional help. Ultimately, this boosts overall confidence.

3. Learning from fellow students

Everyone has a different approach to problem solving; working with a teammate can expose developers to techniques they otherwise would not have thought of. If one developer has a unique approach to a specific problem, pair programming exposes the other developer to a new solution.

Often times, the developers in a pairing have different skill sets. If one programmer is more experienced in a certain skill, they can teach a student who is less familiar with that area. The less experienced developer benefits from the experienced developer's knowledge and guidance, and the latter benefits from explaining the topic in their own words, further solidifying their own understanding.

4. Social skills

Pair programming is great for improving social skills. When working with someone who has a different coding style, communication is key. This can become more difficult when two programmers have different personalities. Pair programming not only improves programming skills, but can also help programmers develop their interpersonal skills. When just grabbing the keyboard and taking over isn't an option, getting good at finding the right words is a skill unto itself.

This has long-term career impacts. As much as employers want strong programmers, they know it's essential to hire people who can work well with others.

5. Job interview readiness

A common step in many interview processes involves pair programming between a current employee and an applicant, either in person or through a shared screen. They will carry out exercises together, such as code challenges, building a project or feature, or debugging an existing code base. By doing so, companies can get a better feel for how an applicant will fit into the team and their collaboration style.

For most roles, the ability to work with and learn from others and stellar communication skills are as (or more!) important to a company than specific technical skills. Pair programming strengthens all of those skills.

6. Work environment readiness

Many companies that utilize pair programing expect to train fresh hires from CS-degree programs on how they operate to actually deliver a product. Code Fellows graduates who are already familiar with how pairing works can hit the ground running at a new job, with one less hurdle to overcome.

Ready to dive in and improve your pair programming and your coding skills? See upcoming courses "

# data[].attributes.attachment_link.title
6 Reasons for Pair Programming - Learn to Code | Code Fellows

# data[].attributes.attachment_link.description
Iterative loops. Code reviews. Fast feedback. Error checking and linting. These are software engineering practices that have proven to dramatically improve the quality of code developers produce. What if you can could get all of this, instantaneously, while typing code line by line and character by character?

# data[].attributes.body
NaHCO3 + CaCl2 = CO2 + 2NaCl + CaCO3 + H2

# data[].attributes.body
Students use the following checklist to evaluate their own writing or that of a peer. It is used for the student or partnership to create a goal for the writer.

# data[].attributes.body
2nd graders find different ways to represent the number. First they showed how to represent 100 (previous screen not shown). Next they use what their own responses and also their peers' responses and look at how they can represent 98. S's look to identify the pattern.

# data[].attributes.headline
What will happen to the paperclip when I tak it away from the magnet?  GemsNet

# data[].attributes.subject
What will happen to the paperclip when I tak it away from the magnet?  GemsNet

# data[].attributes.headline
Creating shadows while learning about light -Gems

# data[].attributes.subject
Creating shadows while learning about light -Gems

# data[].attributes.headline
Moving wires around to make a circuit- GemsNet

# data[].attributes.subject
Moving wires around to make a circuit- GemsNet

# data[].attributes.body
GemsNet

# data[].attributes.wish_content.attachment_props.text
Making our own paper.....very exciting. We are loving this science unit.

# data[].attributes.wish_content.attachment_props.original_text
Making our own paper.....very exciting. We are loving this science unit. https://t.co/sUk9i7rZT0

# data[].attributes.attachment_link.embed_code
Making our own paper.....very exciting. We are loving this science unit. pic.twitter.com/sUk9i7rZT0
— raposa’s_kinders (@pryors_kinders) March 7, 2019

# data[].attributes.headline
GemsNet - What happens to the twirly bird when the design changes

# data[].attributes.subject
GemsNet - What happens to the twirly bird when the design changes

# data[].attributes.wish_content.attachment_props.text
Twirly bird day! 🌱 FQ: what happens to the motion of a twirly bird when the design changes? #BalascoSquad @gemsnet10

# data[].attributes.wish_content.attachment_props.original_text
Twirly bird day! 🌱 FQ: what happens to the motion of a twirly bird when the design changes? #BalascoSquad @gemsnet10 https://t.co/LRQJkDGYjC

# data[].attributes.attachment_link.embed_code
Twirly bird day! 🌱 FQ: what happens to the motion of a twirly bird when the design changes? #BalascoSquad @gemsnet10 pic.twitter.com/LRQJkDGYjC
— Stephanie Balasco (@MsBalasco) February 8, 2019

# data[].attributes.attachment_link.metadata.attachment_props_source.data.text
Twirly bird day! 🌱 FQ: what happens to the motion of a twirly bird when the design changes? #BalascoSquad @gemsnet10 https://t.co/LRQJkDGYjC

# data[].attributes.attachment_link.metadata.attachment_props.original_text
Twirly bird day! 🌱 FQ: what happens to the motion of a twirly bird when the design changes? #BalascoSquad @gemsnet10 https://t.co/LRQJkDGYjC

# data[].attributes.attachment_link.metadata.attachment_props.text
Twirly bird day! 🌱 FQ: what happens to the motion of a twirly bird when the design changes? #BalascoSquad @gemsnet10

# data[].attributes.headline
Students working together to see how weather events change land

# data[].attributes.subject
Students working together to see how weather events change land

# data[].attributes.headline
Students persevered to park their car(cup) in the garage

# data[].attributes.subject
Students persevered to park their car(cup) in the garage

# data[].attributes.body
GemsN

# data[].attributes.wish_content.attachment_props.text
#ChallengeAccepted The students pretended their cup was a car and needed to park it under the ramp (garage). #success @gemsnet10

# data[].attributes.wish_content.attachment_props.original_text
#ChallengeAccepted The students pretended their cup was a car and needed to park it under the ramp (garage). #success @gemsnet10 https://t.co/rYbfkUg7A5

# data[].attributes.attachment_link.embed_code
#ChallengeAccepted The students pretended their cup was a car and needed to park it under the ramp (garage). #success @gemsnet10 pic.twitter.com/rYbfkUg7A5
— Monica Kauffman (@kauffman_monica) January 9, 2019

# data[].attributes.headline
Students figure out what sounds are easy to identify

# data[].attributes.subject
Students figure out what sounds are easy to identify

# data[].attributes.body
GemsNet

# data[].attributes.headline
Collaborating on habitat posters- GemsNet

# data[].attributes.subject
Collaborating on habitat posters- GemsNet

# data[].attributes.headline
Student writing a procedure on how to be an engineer- GemsNet

# data[].attributes.subject
Student writing a procedure on how to be an engineer- GemsNet

# data[].attributes.body
In a K classroom, students were working on composing songs. They chose the instruments and designed a sequence for how those instruments would be played (2 drum beats, 3 maraca shakes, 2 bells ringing). Student then chose classmates to play the instruments and directed them on how the song should be played.

# data[].attributes.body
Students explored creating shadows with various light sources. Here they are exploring objects blocking the light source to create a shadow.

# data[].attributes.headline
We created a skit to show our knowledge about what makes a liquid a liquid. 

# data[].attributes.subject
We created a skit to show our knowledge about what makes a liquid a liquid. 

# data[].attributes.body
Here students tinker with various objects and flashlights to discover how a shadow is created.