Comment by jackdoe
16 hours ago
> 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.
there are 45 million devs in the world (out of which probably 10 can actually program) and 8.5 billion people
we could say 0.5%?
It’s misleading to use the entire world’s population. A very large proportion of that hasn’t ever had the opportunity to learn to write code.
> 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/
Yea, and I think it is amazing, but in the same time it will work for some and not for others
The same way scratch works for some, redstone for others, and https://strudel.cc/ for third
I think the truth is that we are more different than alike, and computers are quite strange.
I personally was professionally coding, and writing hundreds of lines of code per day for years, and now I look at this code and I can see that I was not just bad, I literally did not know what programming is.
Human code is an expression of the mind that thinks it. Some language allow us to better see into the author's mind, e.g forth and lisp, leak the most, c also leaks quite a lot e.g. reading antirez's code or https://justine.lol/lambda/, or phk or even k&r, go leaks the least I think.
Anyway, my point is, programming is quite personal, and many people have to find their own way.
PS: what I call programming is very distant from "professional software development"
Amazing diagrams!