Sunday, February 21, 2016

Mucking with Angles and Arcs

The Turtle Blocks Club students have impressed me time and time again with their perseverance, their willingness to tackle problems that are beyond their operating knowledge, and the enthusiasm they bring to learning new skills. In particular, Logo programming has sharpened these students' math skills by making the concepts more concrete. Last week's project, in particular, demonstrated remarkable "mucking around" with Logo programming and mathematics, something I think Brian Silverman would appreciate.

Last week I showed one student, using TurtleArt and the "hidden" PicoLogo text area, how he could define a block using text. He started in TurtleBlocks and created a cool design that the turtle would be able to draw. With a little help with syntax and bracket placement he quickly re-wrote the block procedure in text.

We loaded the procedure onto the LogoTurtle and set it drawing.

Hmmm. The drawing was not quite right. Fortunately, the student wanted to put in the time to make it right. We started by running a simple square procedure to make sure the LogoTurtle was calibrated.

Spot on. This led to a conversation about floating points (the Adafruit Metro Mini does not handle floating point math) and how Brian and Erik programmed the robot to turn, friction of the wheels and the pen, and how we might make the design look like the one on the screen. I also told them I had a hypothesis that I wanted to check.

We considered the moves the LogoTurtle made to create the design and decided to muck with the angle and the arc, as the student noticed the drawn circle was not entirely 360°. It took a few iterations and tracking of the changes we made to the procedure to arrive at the correct numbers.

Bravo! We made the LogoTurtle draw a great approximation of the screen design!

Afterwards, I shared my hypothesis. I explained to the students that I noticed the drift in angles and arcs in the LogoTurtle and reported it as a bug shortly after the first release of the software. I was surprised not to hear a response from Brian, but that got me thinking. The LogoTurtle is not as "perfect" as a screen turtle and requires more mucking around to reach the precision of a screen turtle. While some students might dismiss the LogoTurtle when it does not draw exactly what is on the screen, others might take the opportunity to muck with the math and teach the turtle to successfully reproduce a screen turtle's work. In mucking around, the student's understanding of degrees and arcs becomes more concrete, meaningful, and contextualized.

I was extremely proud of the effort the student put into solving this problem and excited by the learning adventure the LogoTurtle led us on.

No comments: