# Engagement Strategies for class
### Purpose
To make our classes dynamic, hold to students' attention, and prove they are following what we say, we must embed engagement strategies across class plans.
### Definition
Engagement Strategies can be technical or non-technical.
Generally, they are simple, quick (between 60 and 180 seconds) activities or teaching strategies that involve the student.
They can take the form of a question, a pair, group, or class mini-activity or a sort of a ritual the class recognizes.
Their main goal is to create engagement, as well as to bring attention and energy back to class.
### Engagement Strategies Repository
For the sake of this project, we created this file with effective engagement strategies that can be embedded in class plans.
They are great to add as a note, before code reviews or class exercises and examples.
#### How to use this repo
You will address the engagement strategy directly in the class plan.
Use the same naming convention as they have here:
- One identifier icon
- One identificatory name
### Engagement Strategies
#### :snowflake: Cold Calling
Calling on students is a great way to gauge students' understanding and keep them on their toes. Be careful not to make it too high pressure. A good tactic is to create a class rule that students can always pass but they have to choose the student they pass to.
#### :fast_forward: What do I do next?
This is a magic question to ask when you are live coding an exercise and you want to
1) promote engagement
2) check that students are following.
It comes down to asking "What's the next line of code I should write?" before moving forward.
The key to this strategy working is patience and appreciation of silents. When you ask that question to the whole class silence can be an indicator of thinking or the inner activity of balancing risk. At this point, body language and facial expression can give you a hint on where and when to push for an answer (any answer, even the wrong one would help the class).
If you target this question to one specific person (mixing it with cold-calling), you will have results in a shorter time.
#### :couple: Mini-Activities
Mini-activities should take around 2-5 minutes to complete. Longer activities should be tackled in pairs or groups in break-out rooms. Mini-activities are simple and short checks for understanding.
In web dev, this might mean demonstrating how to write a for loop that prints the word "cow" 5 times and then asking students to take a couple of minutes to write a loop that prints "chicken" 7 times.
After the time is up, call on a student to share their screen and walk the class quickly through their solution. It's not challenging but it engages students enough to keep them alert.
#### :frog: What is this doing?
Provide the class with an example or solution. Once everybody gets to see it (especially for a hard exercise) there's a general feeling of relief, and that good feeling is a great place for learning confidently.
Dissect the solution in little pieces. You can start explaining yourself or ask some students to explain the solution.
To know who's a good candidate ask the class who got it right and choose among them.
Once you started the dynamic of interpreting and explaining the first steps, move ahead to another random student. At this point, it doesn't matter if their initial exercise was well executed. If the students find trouble understanding, this is a teachable opportunity! It works best if another student volunteers to explain and make sense of it so everybody can move forward at the same time.
#### :closed_book: Quick Definition
Prompt students to give you / write down the definition for the topic you are addressing.
Collect and share some of these.
A good practice is writing some in the whiteboard, highlight (orally or visually) some keywords, and refer back to these while explaining more on the topic.
#### :tractor: Use Cases Roulette
Prompt the students to write down a use case for the topic just explained.
The output of the activity can be a few lines, a graphic, or a storyboard depending on student preference.
Sharing the use cases is the most valuable part of the activity, broadening our conceptions on how different people would use this particular piece of knowledge.
#### :pencil: Write-Pair-Share
Present to the students a theoretical problem that requires some thought. Write-Pair-Share activities take about 5 minutes to complete.
Give students 60 seconds to think about the problem before assigning them to breakout rooms with a partner (remote).
In the breakout room, partners have 3 minutes to come up collaboratively with a list of criteria.
After the breakout room, call on a few groups to share their results with the class.
#### :twisted_rightwards_arrows: What's another way to do it?
Let's say you just explained how to solve an exercise or are going through an example from the lesson... Most of the time, there will be multiple ways to arrive at a result or solve the problem. You, as a teacher, know it an give it for granted. But for students, it's important to help create this higher level, more complex understanding of how our craft works.
By asking this magical question, you are opening up to critical thinking, creative problem-solving, and curiosity towards the different. Pondering value before shape.
#### :hand: Fist to Five
This is a very common _pulse check_ for class. It's great to know how the class is doing in terms of understanding or energy.
Fist to Five is a quick and easy way to gauge student understanding on one topic before moving forward.
Ask each student to hold up a number from 0 (fist) to 5 indicating how well they understand the topic just covered.
It goes like this: "How well have you understood this (concept)? Please show me your hands - the fist being "I don't even get the name" and five beings "I could apply this right now with no problem" ".
If you see a lot of 0s, 1s, or 2s encourage and consider altering your lesson plan and doing some review. If you see a lot of 4s and 5s, congratulate your class on grasping so much material so quickly.
#### :arrow_right_hook: All the ways to
This is a one-minute group activity that promotes divergent thinking.
In 60 seconds, groups of 3-4 people should come up with at least 3-4 (one per student) alternatives to approach one problem.
One way to share the results is to leave students 1-2 minutes to then go around in the class to consult the other groups what they've come up with.
To add more spice to it, you can say that in the second minute, they can add the new responses they like to their stack :wink:
In this way, sharing explaining and listening capabilities are enhanced because there's a "reward" to it. They reward is understanding more and more deeply.
#### :blossom: Daisy Chain
This style of activity engages a large number of students. The general idea is that you call on a student to complete the first part of an exercise. That student then calls on another to continue where they left off. That student then calls on another and so on.
In Data you might present a data set for exploratory analysis. You call on Alvaro to tell you the first line to write in your Jupyter notebook. Alvaro imports a package and passes it to Tatiana. Tatiana imports another package and passes it to Luis. Luis imports the data from the CSV and passes Maya... This cycle continues until the assignment is complete.
Be sure to gently correct students when they make an error and allow them to pass to another student if needed.
#### :sos: What's the problem here?
When live-coding, a bug can happen just like when coding. You can even purposely create some errors/bugs that probably your students will encounter at some point. This is the power of empathy and understanding of what MISUNDERSTANDING or MISCONCEPTIONS students can hold. And, at the same time, students will see how the bug gets solved so they can apply the same approach if the same happens to them.
So you pressed enter and receive `null` or `undefined`, normally a senior developer would rapidly identify the mistake. Use this opportunity to ask your students to reflect, debug your code. Simply ask the class this question or cold-call on one student. Use the time to promote critical problem-solving.
If the class can't come up with the issue fast, use the daisy chain method to build on each students' partial correct answer.
#### :slot_machine: Polls
Polls are another easy and quick way to gauge student understanding and break up the monotony of lectures. There are plenty of great free polling options out there.
One that can be useful in pour classrooms is the Slack app [Polly](https://team-ironhack.slack.com/apps/A04E6JX41-polly).
Polls can be used for more than just gauging understanding. Try using polls to allow students to vote on how you spend the next 20 minutes of class (review, game, extra lab, or interview questions) or to vote on what you wear to class tomorrow (pajamas, dinosaur costume, formal wear, or too many polka dots).
#### :grey_question: Kahoot
Kahoot is a quick and fun quiz website. Instructors generate short fun quizzes and students compete to answer correctly the fastest. Link to the website [here](https://kahoot.com/).
## External Resources
Check out these resources for more inspiration:
- [21 ways to check students' understanding](https://www.opencolleges.edu.au/informed/features/21-ways-to-check-for-student-understanding/)