Armed with just the basics in the Squeak programming language
Yes! \o/
Even more surprising than kids able to hack, are adults in school technology ACTUALLY able to push through real hacking tools, instead of the industry-prep crap often "donated" by big IT.
I was impressed when my five year old could multiply large numbers in his head. I think the difference between a 4 and an 11 || 12 year old is quite significant.
Which programming languages and tech stacks would be the least difficult for my young sons to start programming with? I want them to be able to do something graphical, 2D or 3D with motion.
My son just turned 4, so I'm in a similar boat.
My current thoughts are to use something like Lego Mindstorm NXT. This way he will be able to program graphically which will teach him logic and the robot will show the result of what he did, instant gratification. A much more playful environment for a 4 year old than see some script/compiler/IDE stuff.
If you have to go with software only for some reason, Squeak should be nice. Also VPython (http://vpython.org/) allows one to animate 3D-scenes easily. PyGame (http://www.pygame.org/news.html) might also be worth a look, however it is slightly more difficult to get started (the level of abstraction seems to be a bit lower, as you handle sprites yourself).
Sounds good, but don't underestimate kids abilities to be fascinated even by simpler stuff. I learned BASIC at 5 on a VIC 20 - what made me interested was not games, but seeing my dad sit and program it. Just text. I had no idea what he was actually doing.
I have played with Scratch longer and its just pure fun. It actually teaches code-sharing; kids can push their projects to a central repo where other kids can see a screenshot and run the program in their browsers (java applet) or download the source code. You will often see "forks" of someone's game show up with interesting changes.
It is an environment where you have sprites and other objects. You program by assembling visual blocks that are either control structures, instruction top modify properties of objects, event triggers etc. It is good because it greatly reduces the part of learning to program where you find the syntax errors in your code. It is also a lot of fun because the result of your program is visual, animated and interactive.
I introduced it to my nieces a few month ago. I installed it, opened it and told them they could use it to create games, I didn't teach or showed them anything about it. Since then, they have created a few games and started a contest with their cousins on who creates the best game.
Also scratch itself is constructed in Squeak, the environment the kids used in the original article.
It can happen. In 1983, I was 4 and I learnt how to program on a VIC 20 my Dad bought on a whim at a garage sale for $20. My sister was either 8 or 9 at the time, and she taught me the basics of, well, BASIC. I was motivated because she taunted me with the prototypical:
10 PRINT "NINA IS COOL"
20 GOTO 10
My parents had no idea how to use the computer but they thought it was a good thing for us to learn.
Reading this, I just realized that my earliest code does in fact predate my earliest memories, a peculiar thought. I remember not being able to tie my shoes, not knowing left from right and having to jump to turn on a light, but I don't remember not being able to program.
Yes! \o/
Even more surprising than kids able to hack, are adults in school technology ACTUALLY able to push through real hacking tools, instead of the industry-prep crap often "donated" by big IT.
These children are loved.