My first computer was an Apple ][+. I learned coding by screwing around with Applesoft BASIC to see what I could do. Also, the computer magazines of the day frequently distributed programs by printing the code on their pages, and their users would type them in. Those programs frequently had major bugs in them, so you had to troubleshoot the code.
The Mac came out, and while I saw that the machine would be a huge paradigm shift for the industry, Jobs did not want to include any sort of programming language. Microsoft sold a BASIC compiler for the Mac, but it wasn't cheap.
Then Apple took a pet project of one of its developers and included it for free on every Mac. That project was called Hypercard. Suddenly, everyone had access to a programming tool on their Macs (though a relative few really understood it). HC was never a profit center for the Mac, but in my mind, it brought tremendous value. Once again, I was writing apps to fill in the gaps for software that was not available commercially. I remember in college, I was taking a foreign language, and I wrote a stack that would quiz me on the vocabulary. I even inserted the Macintalk extension into the stack, and it would correctly pronounce the words for me; I know it sounds pretty mundane these days, but a couple of decades ago it was fairly groundbreaking stuff.
And even in the pre-internet days, I could still hit the BBS's to find stacks that I needed. Games, utilities, home finance, recipies, whatever.
Then Apple killed HC. They stopped development of it for years, and when they grew tired of listening to HC's fans begging for an upgrade, Apple made it a shrink-wrapped upgrade only; no more free HC. Worse, the upgrade sucked; it didn't begin to compare to a competing product called SuperCard. Selling a shrink-wrapped upgrade to HC pretty much killed it.
Personally, I think it would be tremendous if Apple would buy a package like Codify and bundle it on all iPads. Not only would it be a great learning tool for kids, but they could create a section of the App Store just for distributing user content.