Archive | December 2013

Order of Operations

As we progressed through our unit on rational numbers, it became time to work with “Order of Operations”, always a tough concept for middle schoolers that takes a lot of practice.

7.NS.3 Solve real-world and mathematical problems involving the four operations with rational numbers.

7.EE.3  Solve multi-step real-life and mathematical problems posed with positive and negative rational numbers in any form (whole numbers, fractions, and decimals), using tools strategically. Apply properties of operations to calculate with numbers in any form; convert between forms as appropriate; and assess the reasonableness of answers using mental computation and estimation strategies.

I chose to add a “Wreck-it Ralph” programming activity, one of the first I created for this class.  This was a troubleshooting activity in which I gave the students this premise: I made a program that showed how many students attended pep rallies over the last few weeks. I wanted to average the pep rally attendance and display the average.  However, my bar graph doesn’t look right. Clearly, Wreck-it Ralph went into my program and broke it!  The students’ challenge is to fix the errors.

I directed them to Khan Academy and the program that I had made.


I put them into groups and asked them to work together to troubleshoot the problem.  They saw the first mistake pretty quickly: the bar for “d:119” couldn’t possibly be correct, because it was the same length as the bar for “c:312”.  The error in the code is a pretty simple problem with a variable name in the wrong place, but it was powerful for students to see variables used in this way. For some, this made the “light bulb” go on that using a variable in a line of code actually substitutes the value of the variable.

The second problem, that of calculating the average incorrectly, was more difficult.  When questioned, all of the students could tell that 703.75 was way too large for the average pep rally attendance, but they did not see quickly how to change it.  Slowly, though, the solution spread throughout the room.  Students needed parentheses in the averaging expression “a + b + c + d / 4”, otherwise only the last number was divided by 4.  It was a classic “order of operations” mistake.

The activity only took half of a class period, but it marked a turning point in the class: a point after which most of the students understood the use of variables in math expressions.  They loved that they got instant visual feedback on whether their answers were correct, and they found the activity engaging and interesting.

Neither the students nor the teacher needs to know how to code to make this troubleshooting activity work. It’s accessible for everyone!

What are some other good computer-based activities for order of operations?  Knowing how to model a complex math formula with technology is a classic 21st century struggle. How would you approach it?

Multi-Step Percent Problems

Excited kids, programming in JavaScript

Excited kids, programming in JavaScript

Today, my colleagues and I decided to do a flexible grouping activity in 7th grade: We gave students a pre-test on their understanding of percents, and created three different activities based on their pre-test scores. We differentiate in readiness groups: Support group, Target group, and Enrichment group. This week, I took the enrichment group and brought my colleagues on board with my doing a computer programming activity. I was extremely nervous about this. My students have been coding since fairly early in the school year, but this would be a first introduction for kids from other classes. I did not know whether I could make the learning target engaging in a coding format and accessible to everyone. Here is the learning target:

I can use proportional reasoning to solve multi-step percent problems.

Common Core: 7.RP.3 Use proportional relationships to solve multistep ratio and percent problems. Examples: simple interest, tax, markups and markdowns, gratuities and commissions, fees, percent increase and decrease, percent error.

Yes, we did just re-state the standard and make it a learning target!

For reference, these documents are the Support and Target activities. They were terrific problem-sets, interesting, accessible, and engaging.



I thought and thought about a good application of the standard, and I really wanted to make it visual so the students could get instant feedback on whether they were on the right track. I decided an area application would be a good rigorous activity, and it would also include elements of:

7.RP.1 Compute unit rates associated with ratios of fractions, including ratios of lengths, areas and other quantities measured in like or different units.

Thus I created the Sod activity. This is a “Wreck-it Ralph” problem. The premise is that I tell the kids I used to have a working computer program, but Wreck-it Ralph got into my program and broke it, and they have to fix it. They get very excited about Wreck-it Ralph.

Document: enrichment_percent_applications
JavaScript Starter: Sod and Percents

Screen shot of the "Percents and Sod" starter program

Screen shot of the “Percents and Sod” starter program

The Setup:

I randomly assigned kids to groups of 2 or 3. I gave each group a worksheet as a space to show thinking and organize their discussion. Every group had to have one scribe / communication leader, and one “runner” whose job it was to ask other groups for help if they got stuck. I read the situation and we talked about what sod was, how it was sold in rolls that unrolled into rectangles, and how it was priced. I showed them the computer program and the structure of the 3 problems inside – each problem had a rectangle and a pricing problem to solve.

The Execution:

Kids really dove in very quickly and started tackling the problems.  I got summoned over to help a couple of groups start, but groups that did not see me right away still attacked it.  Some groups were having better discussion than others, but all groups were discussing the problems.  They wanted to show me their computers and ask “is this right? Is it?” I answer questions with questions and they know this by now. “Why do you think it’s right?  Does the sod cost $3.50 per square foot?  Are you sure that is 10% bigger? Why did you divide there?”

Not all groups finished every problem, and there are still misconceptions that need worked out. This is part of why we do this, though: to identify, diagnose, and plan for how to expose and break down the misconceptions later.  Some interesting discussion items that came out of the activity:

– Identifying the unit price as $3.50 per square foot instead of $0.35 per square foot.

– Assessing reasonableness of answers (should sodding a yard cost more than a Land Rover?)

– Calculating tax only instead of price + tax

– Using 0.43 as the tax rate instead of 0.043

– Different strategies to increase by 10%: w + w*0.10, or 1.10 * w for example

– Increasing length AND width by 10% instead of only increasing one dimension by 10%. Discussing which strategy actually increases area by 10%

– Identifying that 20% off is the same as 80% of the original price  (price – price*20 is the same expression as price*0.80)

– Deciding whether a 10% increase followed by a 20% decrease is the same as a 10% decrease. This created a fantastic discussion at the end of one class.

The summary:

I selected a couple of kids to share their solutions to problems #2 and #3, and invited others to have discussion on the solutions using appropriate sentence starters.  We did not summarize all problems.  Kids said their “brains hurt”.  I asked them to write two of their biggest “ah-ha’s” on a sheet of paper and turn it in.  I don’t know why I used treeware at this point.  I do like the tactile experience of shuffling through paper, but I probably should have had them turn reflections in on a Google form.

Reflections: Some of the more interesting samples from kids.  I wish I had given them a better prompt. I did not get very mathematical reflections from most of them.

The kid who led the charge on the discussion about multi-step percent problems still has confusion on whether 10% increase then 20% decrease is equivalent to 10% decrease. Must follow up.

The kid who led the charge on the discussion about multi-step percent problems still has confusion on whether 10% increase then 20% decrease is equivalent to 10% decrease. Must follow up. Good observation about computer modeling though.

Student gained confidence in programming. I really could see a huge difference since the beginning of the year. It has taken some time!

Student gained confidence in programming. I really could see a huge difference since the beginning of the year. It has taken some time!

Kids do a lot of solo math in school. This one found group work "easyer" (sic).

Kids do a lot of solo math in school. This one found group work “easyer” (sic).

Let it be known, sod is fun. Mission accomplished.

Let it be known, sod is fun. Mission accomplished.

My reflection:

I felt amazing about how the grouping activity went.  I was smiling from ear to ear afterward.  Now, not every kid felt successful.  Many felt very frustrated, did not understand what they were looking at, and made little progress.  I did remind myself this is really normal when you start coding.  My students went through the same thing at first, and it has taken lots of time, patience, and persistence to get them more comfortable with it.  Now every student can write basic JavaScript commands, but everyone is in different places with their use of other programming constructs such as variables and branching.

This was a phenomenal modeling activity.  Really.  There are more ways to slice this problem than even I realized. The kids loved it more than I thought they would, even though I cautioned them we would be doing math about grass all period.

One unexpected benefit was that students also created different equivalent expressions, aligning their lesson with:

7.EE.2 Understand that rewriting an expression in different forms in a problem context can shed light on the problem and how the quantities in it are related. For example, a + 0.05a = 1.05a means that “increase by 5%” is the same as “multiply by 1.05.”

What are the other benefits, and risks, of an activity like this?  What math skills did they gain? What are pitfalls I didn’t notice?

I leave you with a picture of happy kids coding.

"We can do percents on the computer!"

“We can do percents on the computer!”

Coding In Math Class!

Welcome! I started this blog as a repository for teacher resources on programming in the math classroom. I’m a former software engineer – turned – teacher, and when my classroom became a 1:1 technology classroom, I made a decision that I was going to introduce every kid to programming and teach them how to become better mathematicians through programming.  Not every lesson has been successful, but I have continued to try, and this year, some amazing things have been happening in my 7th grade math class.  Kids create abstractions and models.  They tinker. They visualize. They ask questions about how to go deeper into a math topic.  They get frustrated, and they persist, and they try harder, and they eventually succeed and feel the true joy of accomplishment, and they want to share with others what they did.  They can articulate what they learned, how they learned it, and what the math in the program does – because they created it.

I welcome your contributions, questions, and feedback.  I hope you decide to come along on the journey.  You won’t regret it!