The Colorful World of Enning
Only a few days ago, Enning had essentially zero experience with coding.
She had also carried a very different self-image into our first conversation.
She told me:
“I'm not good at logic reasoning.”
Her family had also tended to see her as less strong in logic and mathematics than her younger sister, Tianjing.
I didn't want to argue with that judgment.
I wanted to meet the actual learner.
So we started.
In just a few days, Enning completed her first iOS app, 24, and then moved into p5.js.
She learned how to find and reopen her existing code, edit it, run it, take screenshots, share her work in Slack and WhatsApp, and use the tools around her without needing to be guided through every step.
She learned quickly.
Very quickly.
And then came a particularly revealing class.
Before the class, Enning took a short timed reasoning test. She answered 13 of 19 questions correctly. Her younger sister Tianjing, taking the same kind of test, answered 19 of 20, and much faster.
Those numbers are interesting, but they are not the story of this exhibit.
The interesting question was:
What would Enning do next?
The answer was:
She went back to p5.js and had fun.
We were exploring the p5.js square() function.
Enning had just begun to develop a feeling for ordered parameters.
She had discovered that something like:
square(x, y, size);
means that the numbers don't simply form an unordered collection.
Their positions matter.
The first number means one thing.
The second means another.
The third means something else.
Then I asked:
“How do we determine a triangle?”
She thought about it.
“Edges ...”
She wasn't quite sure.
Then she murmured something else.
I gave her a small nudge:
“3 points! Right?”
She suddenly laughed loudly.
The idea had clicked.
Three points.
Then came another beautiful moment.
She asked:
“Should we go to the documentation?”
She already knew where the reference was.
She already knew that documentation could give her the answer.
I said:
“I don't think so. It's just 3 points, right? I think we can figure it out. If it doesn't work, we'll find an example in the documentation page.”
Try thinking first.
Use the reference when thinking isn't enough.
That distinction matters.
Enning commented out the three line() calls she had previously used to draw the triangle.
Then she began typing:
tri...
I noticed her spelling.
“It's an easy word. ‘tri’ means 3. Fix the word first.”
She corrected the word:
triangle
Then she tried:
triangle(...)
with three numbers.
It failed.
I highlighted the old code.
She had previously used four numbers for two points:
line(x1, y1, x2, y2);
So I asked:
“You used 4 numbers for 2 points. Now you used 3 numbers for 3 points?”
She immediately saw it.
“Oops, 6 numbers!”
😂
Three points.
Two coordinates per point.
Six numbers.
The geometry and the programming interface suddenly matched.
And through the whole process, Enning was laughing, experimenting, asking questions—and even whistling during class, as she had done before.
She was having fun thinking.
Then her p5.js canvas began to change.
The original hand-drawn triangle became:
triangle(180, 220, 270, 350, 170, 350);
She experimented with:
stroke()
strokeWeight()
fill()
Different colors.
Different line widths.
Different shapes.
A grid.
A triangle.
A trapezoid.
A parallelogram.
A large square.
The result was no longer simply an assignment.
It was becoming her canvas.
And when I saw it, I wrote in the family group:
“Look at the colorful world of Enning.”
Then I gave her a new homework assignment:
“Draw some circles on your canvas, some beautiful ones.” 😀
Her immediate question was wonderfully Enning:
“Should I fill them?”
Of course.
Why merely draw a circle?
Now she was already thinking about what kind of circle she wanted.
A Second Learning Habit
There was another small experiment that day.
I spent a few minutes with Enning on TypingClub because I wanted to know whether she was actually learning the English words she was typing.
The first word was:
sheaf
She typed it automatically.
I stopped her:
“Do you know the word?”
She immediately realized she didn't and went to the dictionary.
Then I said:
“Spell it out loud. S H E A F.”
She followed.
And then something remarkable happened.
She continued doing the same thing for every word in the typing exercise.
One example was enough.
She had learned the procedure:
unknown word → dictionary → understand it → spell it → continue
This is much more than typing practice.
It is the beginning of a self-directed learning loop.
She doesn't have to know everything.
She only needs to know what to do when she doesn't know something.
There is a temptation to compare the sisters.
Tianjing is faster on the timed reasoning test.
She often sees patterns very quickly.
She enjoys algorithms, sequences, loops, and mathematical exploration.
Enning appears different.
She sometimes needs an extra question.
An extra example.
A little scaffolding.
But then something clicks.
And when it does, she learns fast.
Her development over only a few days has been striking:
zero coding experience
↓
first iOS app
↓
p5.js
↓
geometry
↓
function parameters
↓
documentation awareness
↓
debugging
↓
English vocabulary through typing
↓
dictionary habit
↓
independent tool use
↓
creative visual exploration
And there is another important change.
At the beginning, Enning could say:
“I'm not good at logic reasoning.”
Now, when she encounters something she doesn't understand, she is increasingly doing something else:
“Should we go to the documentation?”
That is a completely different relationship with difficulty.
The first statement describes an identity.
The second describes a strategy.
The 24-Point Surprise
There was another small experiment that same day.
I gave Enning a 24-point problem.
She found:
4 × 7 − (10 − 6) = 24
I asked:
“Can you find a different solution?”
She didn't immediately understand what I meant.
I clarified:
“A different way to get 24.”
A few minutes later:
10 + 7 × (6 − 4) = 24
Two different constructions.
No announcement was made about test scores.
No comparison with her sister was necessary.
I simply gave her a problem.
She solved it.
Then another.
She solved that too.
That is much more interesting to me than a number on a timed test.
What This Exhibit Is Really About
This exhibit is not about proving that Enning is secretly “as smart as” her sister.
That would simply create another comparison.
The more important discovery is that Enning is Enning.
She has her own pace.
Her own questions.
Her own way of noticing things.
Her own sense of beauty.
Her own way of entering a problem.
She may need guidance.
But guidance is not the same as limitation.
A good teacher can sometimes provide only the smallest nudge:
“Three points, right?”
“Look at the four numbers you used before.”
“Try thinking before opening the documentation.”
“Do you know this word?”
And then step back.
The learner takes over.
That is what I am beginning to see in Enning.
Learning Momentum
Five days ago, she had essentially no coding experience.
Today she is comfortable enough with her tools to know:
where her p5.js code is;
how to reopen it;
how to edit it;
how to run it;
how to take screenshots;
how to present code in a readable fixed-width format;
how to share her work;
where to find documentation;
and, increasingly, how to find answers herself.
That's not just learning syntax.
That's becoming a computer learner.
And perhaps the most charming evidence is that she whistles while doing it.
She is not merely completing exercises.
She is beginning to enjoy the process of figuring things out.
A learner does not have to think like someone else to become an excellent thinker.
A learner who once described herself as weak in logic can, within days, build an iOS app, explore p5.js, reason about geometric parameters, solve multiple 24-point problems, learn unfamiliar English vocabulary, and create her own colorful mathematical world.
Give her real problems.
Provide just enough guidance.
Let her try before reaching for the documentation.
Let mistakes become clues.
Teach her how to find answers.
Then step back and let her curiosity take over.
Because education should not force every learner into the same shape.
Tianjing does not need to become Enning.
Enning does not need to become Tianjing.
The goal is to discover who each learner can become when someone gives her the right tools, the right challenges, and enough confidence to keep going.
Closing
The most important thing I saw that day wasn't a score.
It wasn't the triangle.
It wasn't the colorful canvas.
It wasn't even the two solutions to 24.
It was the moment Enning sat in front of her computer, laughed, corrected herself, asked a question, tried again—and then whistled while she worked.
Maybe this is what learning looks like when a learner finally begins to feel:
“I can figure this out.”
And then, of course, comes the next question:
“Should I fill them?” 😂
Yes, Enning.
Make the circles yours.