Search This Blog

Saturday, September 24, 2016

Math Mini-Lessons and Coding in K-5

In the last few years I've recently become very interested in coding-- learning it and teaching it-- and have been working on bringing more coding into our K-5 classrooms (read more in my previous post about coding after the "Hour of Code"). As a math coach and enthusiast, I am also passionate about using coding as a way of teaching, and engaging students in, mathematics. I believe in teaching math in context-- to help students construct lasting connections while learning math, and to help them enjoy learning math.

When it comes to teaching math in context, coding and mathematics are a natural fit.

Direction blocks
Directional terms
Especially for the younger students, coding is a great way to learn directional terminology in context! Asking students to move a robot (or a character on a screen) forward, backward, left or right can be more of a challenge than you think and really pushes students to think about what those terms really mean (i.e. 'forward' is always changing because it means moving in the direction that you are facing).

Measurement
From metric units to pixels, coding robots to coding video games, coding definitely requires a programmer to work with one, if not multiple, forms of measurement:
  • Distance-- "Forward 10"? "Move 10 steps"? If students want a robot or character to move a certain distance, they need to learn what "10" means in different coding programs (Dash robots move 10 cm. at a time, while a sprite in Scratch is moving 10 pixels, etc.). In either situation, coding activities are a fun way for students to use measurement skills, and practice calculating distances, in a real and useful context.
  • Angle measurements-- Want your robot or sprite to make a turn? You'll have to tell the computer how many degrees to turn the object. 90 degrees? Or 180? Or 35? Give students a mini-lesson in right angles, or teach them how to use those protractors, and then let them figure out what angle they need to program their object to move to get to where they need to go! (SO much more engaging than those silly measurement worksheets where students are supposed to practice measuring random angles out of context!)

Variables
Notice a pattern?
Students struggling with the idea of variables? How about playing with variables (values that can change) in a coding task. Looking at variables in coding give students a concrete example of how a value might change.

Patterns
Coding is all about patterns! One of my favorite Raspberry Pi programming lessons (the "Traffic Lights" lesson) starts by having students learn how to program the red LED on a stop light by copying some code in the instructions. Then students are asked to repeat the code to make the yellow and green lights blink in the same manner. Students have to look for the pattern and then repeat it-- fantastic math task!

Repeated addition/multiplication
I've seen students as young as pre-kindergarten pick up on repeated addition or multiplication concepts (on their own!) during coding tasks. For example, in Scratch Jr. students typically first program their cat to move multiple steps by attaching one forward arrow to another to another to another... until they notice that they can change the value of one forward arrow to represent multiple steps. Realizations like this are perfect teachable moments! Teachers can use discoveries like this as the intro to a lesson on repeated addition and it's relationship to multiplication.

Decimals fractions
Sense Hat on Raspberry Pi
Pause times and wait times in a code require students to have some knowledge of decimal fractions. Want the wait time between commands to be less than 1 second? Decimal fractions!

Coordinates/graphing
Students can use programs like Scratch to code a character/sprite to move to certain coordinates on the screen, or create a digital image on a Sense Hat on a Raspberry Pi by programming certain coordinates on the hat to light up. Just two examples of the ways that students can learn about graphing and XY coordinates by having to use them.

Positive/Negative Integers
Coding movement using the 4-quadrant coordinate grid in Scratch is a great way for students to learn more about positive and negative integers. Students move their character around by plotting (x,y) coordinates or by changing the value of their "x" or "y" coordinate by a certain positive (move right) or negative (move left) distance.


Created in Scratch by @mshaughs

Thursday, September 15, 2016

Bikram Yoga is Teaching Me How to be a Better Coach

Me before Bikram...
Two nights ago I attended my very first Bikram yoga class. For those of you unfamiliar with Bikram yoga, it involves a lot of stretching, a lot of strengthening, a lot of breathing, and an awful lot of heat (110 degrees F, give or take...). I've done different types of yoga in the past, but I'd avoided Bikram for quite a long time, nervous about the heat. I don't love excessive heat and the idea of exercising in that excessive heat turned me off to Bikram even more.

But I'd heard good things, and my friends really like it, and one day I was gifted 10 classes at a local Bikram studio, so I found myself braving the heat and sweat to attend my very 1st Bikram yoga class.

I arrived nervous, and as soon as I opened the studio door and that wall of heat and humidity hit me, I became even more nervous. The first couple of poses were really tough for me, and I found myself opting out and watching more frequently than participating during the first half hour of class.

But the instructor wouldn't let me opt out completely. Even though it annoyed me at times ("I am pushing myself as hard as I can..." I thought to myself, even though I really wasn't, "quit barking at me!"), he kept talking me through the uncomfortableness and the pain, giving me reasons each pose would improve my health and strategies for working through the heat. With his encouragement I did push myself a little harder. And in the end, I not only survived my first class, but I thrived, feeling energized for pushing myself, listening to my instructor, and working through the struggle to complete something that challenged me.

Reflecting on my experience, I thought about the clients that I work with as a math/tech coach. Many of them probably feel the same way about trying a new tech tool as I did about trying Bikram yoga-- nervous, hesitant, reluctant to try. I am passionate about digital technology and as a coach I can sometimes get a little over-excited, pushing too much on people that might not be ready. Remembering the way I felt before my first Bikram yoga class can help me remember how to take baby steps with teachers feeling the same way about trying something new in their classrooms for the first time.

Me after Bikram!
That being said, as a nervous newbie, there were so many points at which I was ready to quit during that first Bikram class. It would have been easier than persevering through something that was so difficult for me. Luckily, my instructor kept encouraging me and pushing me to keep going. As a coach it's my job to meet teachers where they're at, but also to push them just a little to keep going, keep trying, keep improving.

So what happened after that first, challenging experience with Bikram? I went back for more the very next day. And, not surprisingly, knowing more than I did on the first day, I did even better in the 2nd class than I'd done in the first! I didn't get everything right, but my instructor was paying attention, and knowing that I was still learning, she followed-up, checked-in, and supported me when I needed it-- the way a good coach does.