How do kids program today?
I have often wondered how people learn to program today. In the old days we had Basic and Logo, but what do kids use today? The old standbys are powerful enough to make something for the web (assuming they even exist) and nothing else has a simple development environment for children. Perhaps we need something new.
I was raised on AppleSoft Basic, built in to the firmware on an aging Apple IIe (it was aging in 1983!). It was simple enough for my 8 year old mind to grasp but powerful enough to hold my fickle interest. At first I could make looping print's, which became animation when I discovered I could scroll lines of text at 15 times a second. Of course you understand that this was the days before Nintendo. Atari was the state of the art at the time so my ascii figures weren't too bad. Later I figured out the 40x40 graphics mode with 16 colors. Astounding to my childhood self. Then I picked up Logo. The world was at my finger tips!
But I'm getting away from the point. I learned to program, basic algorithmic thinking, by using simple tools built into my computer. With a few lines I could make a picture, add numbers, and print text. And I could see the patterns of structured programming forming below it. It wasn't until years later that I learned a real language like Pascal, C, or Java, but I was ready because of those late weekdays at the school library.
So what do kids have to use today? What programming language is simple enough, powerful enough, and also freely available for any child to learn it? Perhaps we need to invent one. But what should it do?
I think any language for the modern child should have the following features:
Is this possible?