Maybe That Programming Puzzle Was Right All Along
What I Used to Think About Block-Based Programming
Recently, I found myself thinking back to programming education from about ten years ago.
It was around the time schools started teaching children to move characters around by arranging blocks, in tools similar to Scratch.
The reaction from many engineers was not especially positive.
“That is not programming.”
“They are not even setting up an environment?”
“Real programming means suffering through syntax errors.”
That was roughly the mood.
To be honest, I thought something similar.
You just drag and drop blocks.
You do not write code.
You do not get syntax errors.
You do not deal with environment setup.
Is that really programming? I thought it was more like a puzzle.
Why My View Changed
Recently, that view has changed.
Actually, it has changed quite a lot.
Now I think that kind of education may have been exactly right.
The reason is simple.
AI writes code now.
I use Claude and Codex for development almost every day.
Syntax that I used to spend hours looking up can now be produced by AI in seconds.
Even environment setup problems are now partly handled with AI’s help.
Of course, human knowledge is still necessary.
But the relative importance has clearly shifted.
What matters now is not whether you remember a for loop.
What matters is whether you can answer these questions:
- What do you want to build?
- In what order should things happen to achieve that goal?
In other words, the important thing is logic.
It is the ability to turn an objective into an algorithm.
The Puzzle Was Actually the Point
Seen that way, those lessons built around arranging blocks become interesting.
Children were skipping syntax from the beginning.
They were learning the logic itself: variables, conditions, loops, and sequences.
Maybe that was not programming education in the narrow sense.
It was education in logical thinking.
Did the educators of that time foresee the AI era?
Probably not.
Most likely, it was a coincidence.
They simply chose a method that children could understand.
But as a result, it adapted beautifully to the future.
If anything, maybe we were the ones who misunderstood the essence when we said, “That is not real programming.”
From Writing Code to Designing Logic
Recently, I often say that the ability to write code will become less necessary. I have written about that many times on this blog.
Maybe that statement goes a little too far.
But as a broad direction, I do not think it is wrong.
Humans are moving from being people who write code to people who design logic.
When I think about it that way, I cannot help but laugh a little.
Engineers used to tell stories like these almost as badges of honor:
- I spent three days stuck on environment setup.
- I lost half a day because I forgot one semicolon.
- I stayed up all night because of a library version mismatch.
I went through plenty of that myself.
But children today may not need to suffer through the same things.
And I think that is fine.
Just as carriage drivers disappeared, and just as telephone switchboard operators disappeared, the times have simply changed.
Ten years ago, I thought, “Isn’t this just a puzzle?”
But now I think differently.
Maybe breaking down a goal and arranging the steps in the right order was always closer to the essence than suffering through syntax errors.
Some of what we once treated as the real thing may have been nothing more than ritual.