The Last Ten Minutes
Cloud's task in class was to draw a Chinese chess board with Python Turtle.
He had not yet mastered the for loop.
So he chose the only strategy he knew.
Left.
Right.
Forward.
Backward.
Again.
And again.
His code grew longer and longer.
Every line represented another decision made entirely by himself.
After class, I wrote to his mother:
Chinese
今天Cloud代码写得非常辛苦,在不使用循环的情况下,左拐右拐,大脑高速运转,实属不易。🍉
English
Today Cloud worked extremely hard on his program. Without using loops, he kept turning left and right while his brain ran at full speed. It was truly not an easy task. 🍉
Cloud had already tried using for loops three or four times during the same class.
Each time, he retreated.
Today was different.
During the final ten minutes of class, he successfully used a for loop.
Then another one.
After class, I sent another message:
Chinese
在最后10分钟,成功使用了 for 循环,两次。👍 前面尝试过for循环三四次,退却了。我过几个小时再布置作业,先好好休息。
English
During the last ten minutes, he successfully used a for loop—twice. 👍 He had tried three or four times before but backed away each time. I'll assign the homework a few hours later. For now, he deserves a good rest.
The code was still long.
Still imperfect.
But Cloud had crossed an invisible boundary.
When we looked at the completed Chinese chess board, I pointed out something interesting.
Chinese
如果咱们在项目中,进行一些简单的算术计算,和规划,就能避免线段太长,格子不均匀这类瑕疵。
English
With a little arithmetic and planning, we can avoid imperfections such as lines that are too long or grid cells that are uneven.
The lesson was no longer about Python.
It had become a lesson about thinking before coding.
Only after that did I assign his homework:
Draw a standard 19×19 Go board using Python Turtle.
A beginner naturally thinks one command at a time.
An algorithm thinker begins to see patterns.
Cloud's long program was not a mistake.
It was the bridge he had to cross before loops could become meaningful.
Sometimes repetition is not wasted effort.
Sometimes it is the tuition we pay to understand abstraction.
A beginner can discover algorithmic thinking much earlier than expected.
By first experiencing repetition, the learner naturally begins searching for patterns and better solutions.
Programming is not about writing more code.
It is about discovering the ideas that make most of the code unnecessary.
Chinese
今天Rhea刚能在空旷的草坪上驰骋;Cloud已经开始了在数学和逻辑领域里自由地探索。
English
Today Rhea learned to race freely across an open field; Cloud has begun exploring freely in the world of mathematics and logic.
That comparison is so beautiful that I think it deserves its own exhibit one day. It connects a little girl's first bike ride with a teenager's first experience of algorithmic freedom—two completely different worlds sharing the same feeling of discovery.