Living Museum of Learning

Where real moments become exhibits
← Prev Next →
The Last Ten Minutes

The Last Ten Minutes

Cloud drew an entire Chinese chess board almost entirely without loops. Only in the last ten minutes did he discover why programmers invented them.

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.