> But I am having a hard time imagining it's the best way to learn to pipe together commands.
To be honest, it is very strange how hard it is to teach programming concepts, for some reason almost all humans use computers but only 0.1% or so can program them.
I am not sure we have the 'best way' to teach anything computer related.
People develop world model for physics quite early, they know they can pull with a rope but cant push with a rope.
And they get intuition, things that are thrown up, go down, and they can transfer this intuition in the math, because math is real.
For some reason its hard to do that with code. People keep trying to push with a rope, even after studying for many years.
PS: I am trying to teach her neural networks now and am working on this RNN board game https://punkx.org/projekt0/book/part2/rnn.html to fight the "square" dragon. I want her to develop good world model for neural networks, so that she understands what chatgpt is. I just keep experimenting, sometimes things click, sometimes not.
> almost all humans use computers but only 0.1% or so can program them.
This is nitpicking but I was curious: there are 4.4 million software developers in the US (https://www.griddynamics.com/blog/number-software-developers...). The population is 340 million, 0.1% would be 340,000. You’re off by over one order of magnitude.
> I am not sure we have the 'best way' to teach anything computer related.
Not saying this is the best way, but have you followed any of Bret Victor's work with dynamicland[1]?
[1] https://dynamicland.org/