The Nine Parallelograms
Ivy is entering Grade 10 in one week. After one missed class, we had 1.5 hours together. She began with a Grade 7 Khan Academy course challenge and scored 28/30. There was no obvious mathematical hole, although she was noticeably slower than expected.
Then she showed me a right triangle and wanted to draw vertical lines inside it with Python Turtle. What looked simple to me became a revealing moment: her mind immediately jumped to hypotenuse, sqrt, and tan.
I reduced the problem to the simplest possible case: a vertical line halfway across the base.
Instead of immediately seeing that the height must be half, Ivy stopped and asked:
"I am trying to figure out why it's half, how we got half."
That was the alarm.
We went to the whiteboard. I introduced the idea of similar triangles and reduced the geometry to ratios. Soon she was seeing the sequence: 1s, 2s, 3s, ...
When she wanted to jump directly into a for loop, I stopped her:
"We need to find out the pattern first."
She wrote three cases without a loop. The pattern became obvious. Then she wrote the loop. Her first version flipped left and right, but it was very close.
"Very close. I'd leave the rest for you so we have 10+ minutes to open Xcode."
The last 15 minutes became the most encouraging part of the class.
Before class, Ivy had already worked hard on an Xcode 3D Rubik's Cube project. She had fixed the first hardcoded top cell and was ready to tackle the harder abstraction.
Step by step, slowly but confidently, she completed fillTopCell(x:y:color:), calculating the four vertices of a top-face parallelogram from x and y.
My only suggestion was:
"Do this as early as possible — index from 0 instead of 1."
She ended up with a reusable function capable of filling the nine parallelograms on the top face.
This was not an Onshape tutorial. It was geometry becoming computation.
Ivy's potential did not reveal itself through learning a 3D modeling tool. It revealed itself through nine parallelograms that she had to calculate, parameterize, and turn into reusable code.
She can learn quickly once the underlying relationship is visible. Her challenge is different: she sometimes reaches for advanced vocabulary or familiar formulas before looking for the simplest structure.
The lesson was not "don't use tan."
It was:
Look first.
Find the pattern.
Understand the relationship.
Then write the code.
Math is not an obstacle standing between Ivy and engineering. It is part of the foundation that makes engineering possible.