I used to play a lot with Lego when I was young, and programming is not much different from that.
Given a simple manual and a set of basic pieces you learn on your own the basics, and then move to higher order constructions by experimentation. I bet you can just give a child a basic black and white terminal and a "refined documentation", and they'll be okay just as much. Just remove everything unnecessary and sandbox the whole thing (you should expect the kids to break it to install games at some point, but that's okay).
... segue to the wonderful LEGO Mindstorms, named after Papert's book, which had a graphical programming language very similar to Squeak, which itself goes back to Kay's dynabook, influenced by Papert.
OT, but I'm very grateful to Mindstorms, it took me to the next level when I was a teen, from QBasic to C. Not because of its visual block language, which I hated as I could already code, but because I found out about a thing called NQC (Not Quite C).
NQC was a hobbled dialect of C that you could use instead of the LEGO's visual language to program the RCX (the main computer brick with batteries in it). I'd never tried C before, and it was a revelation.
And it unlocked wondrous hacks, like using the IrDA transceiver on the RCX as a psuedo-lidar so that your robot could stop short of walls, it could even estimate distance. At the time, it was so cool to me. From playing with my stumbling robot trying not to hit obstacles I got interested in Rodney Brooks and subsumption architectures. So it just inflamed my passions in AI and programming at a critical part of my adolescence.
Ironic, though, that a Papert-inspired graphical language was the antagonist in this story. The breakthrough came from wanting to scale the walls of the little garden LEGO had built.
> And it unlocked wondrous hacks, like using the IrDA transceiver on the RCX as a psuedo-lidar so that your robot could stop short of walls, it could even estimate distance.
Ha, I did that as well with Mindstorms RCX in like 11th grade or so! Later, in university, Mindstorms NXT was used: Our first assignment was to follow a track on the ground and the team I was the only one had two programs, one for recording the track with the sensors and another for following the previously recorded track in high speed without using sensors at all.
Cool hack. So you had to do multiple laps? It's interesting that dead reckoning actually worked, we had lacquered wooden floor in my house and the slip was quite bad, dead reckoning never worked.
We were allowed to do multiple laps. I stopped attending the (non-mandatory) course after I saw that the other teams were no challenge and some even had problems to just follow a line.
Reminds me of a hack we used in the First Lego League. One of the challenges was to unlock a gate, and we ran out of time for designing the necessary hardware/software. Instead, we just had a program that drove full speed in a set direction. About 1/10 times, it'd hit the gate just right and open it.
Given a simple manual and a set of basic pieces you learn on your own the basics, and then move to higher order constructions by experimentation. I bet you can just give a child a basic black and white terminal and a "refined documentation", and they'll be okay just as much. Just remove everything unnecessary and sandbox the whole thing (you should expect the kids to break it to install games at some point, but that's okay).