Five Days from Zero to Geometry Code
Just five days ago, Enning had zero experience in coding.
Since then, an extraordinary amount has happened.
She learned enough Swift and Xcode to build a complete little iOS app called “24”. She learned to think of a program as something she could construct, run, inspect, and improve—not merely something other people wrote.
And now, during an extended lesson, she reached another first:
her first drawing program.
Using p5.js, Enning created a 400 × 400 canvas and began drawing geometry with code.
She started with a grid, carefully constructing it from horizontal and vertical lines. Then she moved to a triangle:
line(180, 220, 270, 350);
line(180, 220, 170, 350);
line(170, 350, 270, 350);
Three lines became a triangle.
Then, underneath her completed work, she wrote two more challenges:
// parallelogram
// trapezoid
Her homework for the next step was now clear:
draw a parallelogram and a trapezoid.
Donald was surprised by something that had nothing to do with the geometry itself.
Enning already knew the two long English words:
parallelogram
trapezoid
And she could spell most of both.
Five days ago, she had never written code.
Now she was writing code to construct geometric figures whose English names are challenging even for many much older learners.
The coding and language learning were happening at the same time.
And Enning had developed another new habit.
She keeps bringing up the dictionary.
Often.
Very often.
😂
Instead of being embarrassed by an unfamiliar word or waiting for someone else to explain it, she increasingly does something wonderfully practical:
Look it up.
Then continue.
The dictionary has quietly become one of Enning's learning tools.
An unfamiliar word is no longer necessarily a barrier.
It becomes a small problem she knows how to solve.
What does this word mean?
How do I spell it?
How is it used?
Then she returns to the task.
That habit matters because her coding environment is naturally generating new English vocabulary all the time.
canvas.
background.
line.
triangle.
parallelogram.
trapezoid.
She does not need a separate vocabulary lesson for every word.
The words arrive because she is doing something meaningful with them.
And now she is beginning to take responsibility for understanding them herself.
This is what five days can look like when a learner is given the right combination of challenge, encouragement, and room to explore.
Enning did not spend five days “learning coding.”
She moved through a chain of increasingly meaningful experiences:
zero coding experience
↓
first Swift/Xcode experience
↓
complete iOS 24 game
↓
first p5.js drawing program
↓
geometry through code
↓
parallelogram + trapezoid homework
At the same time:
Chinese-dominated communication
↓
English responses
↓
new vocabulary encountered naturally
↓
dictionary habit
↓
recognizing and spelling long mathematical words
The remarkable thing is that these are not two separate learning tracks.
They reinforce each other.
The geometry gives meaning to the English.
The English gives names to the geometry.
The code gives her a way to make the geometry visible.
And the dictionary gives her a way to keep moving whenever language gets in the way.
Five days ago, Enning had no coding experience.
Today, she has already learned that when she encounters something she doesn't know, she can figure it out and keep going.
That may be the most important skill of all.
A learner can go from zero coding experience to a complete iOS app and then to mathematical drawing code in only five days—while simultaneously expanding her English vocabulary.
By connecting coding, mathematics, language, and real creation; by giving the learner meaningful challenges; and by encouraging her to use tools such as a dictionary whenever she encounters something unfamiliar.
Because the goal is not merely to teach Enning how to code a triangle, parallelogram, or trapezoid. It is to help her develop the habit of meeting something unknown, looking it up, understanding it, and continuing independently.