I started out my little experiment with computer programming in math class. It shows a lot of promise, but there is still a lot to consider!

The purposes of the first activity were threefold: To construct and classify geometric shapes, to plot points on a four-quadrant grid, and to use variables in expressions.

On Day 1, I gave students some direct instruction on variables and coordinate graphing, and I gave them a sample program to type in and modify.

For day 2, I tasked the kids with creating an interesting drawing with these constraints:

– It had to use the translate(200,200); function first, so it would move the origin to the center of the screen and thus make a four-quadrant graph.

– It had to plot shapes in all four quadrants.

– It had to use variables in some way.

I suggested that the drawing could be symmetrical and beautiful, but did not require any symmetry. I let them play.

I wanted to see evidence that the students understood variables and graphing, mostly. Classifying shapes was sort of a bonus. I found that it was very hard to assess. I didn’t have enough computers for each student to have one individually, so most students partnered up. I hope to get my own class set of netbooks very soon, so I can evaluate kids individually! Even though it was hard to see on an individual level who understood what, I could see some broad trends. One student created this beautiful drawing.

Isn’t it gorgeous? And, she was clearly purposeful about the placement and size of her circles. She used variables beautifully and could definitely see patterns with the coordinates in the different quadrants of the graph. I feel I could tell her to place a circle in a certain position of the screen, and she would know what coordinates she needed to get it there.

I got many, many drawings like this:

Watching students work, they sort of plugged in numbers at random and modified them until they got something pretty. They weren’t being really purposeful in their placement of shapes. Since many of the drawings are like this, I would say that most of the class is getting the hang of Javascript syntax, but they are still “Progressing” or “partially proficient” in understanding variables and graphing.

One student made this drawing, which is extremely cool but very hard to assess. The code demonstrates a good understanding of variables. But I don’t know if the student was purposefully graphing the shapes, or tweaking the numbers until the shape looked okay. I think I’ve decided even if he or she wasn’t purposeful, through trial-and-error this kiddo probably developed a good understanding of graphing. But I will need to check.

That said, it’s coming along. Usually, when we work with variables and equations, there are more than a few kids that ask “What is that x?” several weeks into the unit! But they are coming along faster with understanding the use of variables in their programs. They attacked their programming tasks and were excited about doing it. There was energy you just don’t see when you have students graph on paper.

I really am a huge fan of the Khan Academy programming platform. It’s at http://www.khanacademy.org/cs and I could not do what I’m doing without it. Super easy to use, super kid-friendly. I wish the teacher class-management tools were a little simpler… it’s a lot of mouse clicks to look at a kid’s program. That is a small inconvenience that is more than offset by how easy and awesome they have made Javascript.

Due to technology and scheduling restrictions, I need to back off the computers for a couple of days, but we’ll pick it up again next week. In the meantime this is my plan:

– Demo to students some of the work their peers did and evaluate their own understanding of variables and graphing

– Quiz on integers and rational numbers, on a number line and on a coordinate grid

– Start on addition and subtraction of rational numbers

– Plan for studying animation next week, which will build on the themes of variables and graphing, while adding in a target of understanding addition and subtraction of signed numbers.

Frank McGowan

December 12, 2013 at 2:32 pm

Hello and thanks for sharing! I am also a 7th grade math teacher and would like to put code into my class. In this post, you write about the coordinate grid. How do you balance between the standard grid notation of quadrants and the 0 (upper left) 400 (bottom right) of the programming plane? Thanks!

dawndup

December 13, 2013 at 9:44 pm

Hi Frank, thank you for your message.

Some programming languages use a standard coordinate plane – Scratch is one example that comes to mind.

My students struggled a lot with graphing on a computer screen at first. It takes time, consistency, and patience. They had more patience for it when it seemed they were doing something meaningful. I’ve gotten better at creating tasks since this blog was posted, but I am always looking to improve.

Most of their struggles did not have to do with the y-axis being flipped, but with the lack of a scale on the screen. They have gotten more comfortable operating in a world of pixels since then and can easily place objects on the screen now.

I sometimes ask them to call translate(200,200); as their first line of code. This moves the origin to the center of the screen and gives them an invisible 4-quadrant grid – sometimes nice if students need to work with positive and negative numbers.

Looking back, the struggles with graphing on a computer screen were worthwhile. It made graphing a much more demanding activity than usual – the kids had to dig deep to think about plotting shapes and designs. They need to re-think what they learned when the coordinate grid is a “standard” grid on paper.

I would be curious to hear your experiences with it!

Frank McGowan

December 15, 2013 at 12:02 am

Thanks for the additional insight. I’ll see how it goes. I hope that my lack of a deep Java understanding doesn’t hold us all back!

dawndup

December 16, 2013 at 10:57 am

Let me know. What grade do you teach and what is the unit / lesson topic?

Frank McGowan

December 20, 2013 at 5:11 am

Hello – I teach 7th grade math and have an upcoming geometry unit. I hope you have a wonderful winter break!