Read other letters about this article
Some excellent responses here. I question the notion that BASIC is somehow going to teach a kid how the computer really works. Help me out here, but has anyone other than a Bleeding edge Basicist ever used the language to dick around with the stack?
All of my memories of BASIC are that it was an easier way to get high level chores done than assembler and that it was an ugly way to do it. GOTOS, and horrid line numbers before you could label. I spent a lot of time back in the day figuring out how to get crap out of BASIC and into something that people could use. It was during that struggle that I figured out a couple of things: if I could avoid using BASIC, I would do so. If I could avoid using FORTRAN, another nasty, antiquated, language, I would do so. Had I ever learned COBOL, that would have been the third thing I would have figured out how to avoid.
To my way of thinking, the reason the earnest author of this article, David Brin, wants BASIC, is that it is something he knows. He is enthusiastic about it, because it was fun for him in his youth; something he can easily share with his son, Ben. When I read the article, the first thing I thought was, "well, why not just go get a shareware BASIC interpreter and run it in a shell on a PC, Mac, or Linux box?"
Several people have suggested just that.
What I want to know is, what is the magical allure of BASIC outside of the constraints of familiarity? Old style BASIC running in a shell is pretty boring, and it will not shed one bit of light on the abstractive moat around the machine one encounters using modern languages and coding practices. Nor does it share much light inside the moat, for that matter.
I am not going to engage in arguments with the computer scientists and other rabble hanging around Salon.com about this, but this article reminded me of someone lamenting that there were no more Conestogas available for Grandpa to teach the young'uns how to cross the Missouri with an oxe's ass in their face while a perfect bridge runs from bank to bank.