This isn't about the vocational exercise of training young programmers. It's about inspiring the minds of children and unleashing their curiosity. It's bad enough that children helplessly rely upon calculators to perform simple math. Sometimes technological sophistication undercuts the goals of education; less sophisticated is better.
I agree with some of the other letters - why look for Basic, when there are languages that
a) are just as easy to learn and use, if not easier
b) do not teach people bad habits (think GOTO)
c) are also usable once you want to get serious
d) are free software!
Examples of course include Python, Squeak or Ruby. And if you're extra curious and looking for something extra interesting, take a look at the Scratch language from MIT :o)
I've ran into the same issue and have run a programming club for kids that used the old Lamba MOO software and Netlogo. Both are available for free and the kids loved them.
As you noted there are many BASICs that are available for free or for a small amount of money from the internet. You mentioned some of them yourself. You can also look at
JustBasic http://www.justbasic.com
LibertyBasic http://www.libertybasic.com
TrueBasic http://www.truebasic.com
PowerBasic http://www.powerbasic.com
John Fredrickson
Washington, DC
I work with older (in their 50s) engineers who still cobble together circa 1980 homebrew boards with two bits of memory and then write code in optimized assembly and complain about how poor kids today will never learn the really important aspects about designing a computer or writing a program because there is just too much memory in modern machines... Just like you, they assume that because the kids today do not need to walk 20 miles through the snow uphill each day, they won't learn anything. But that is rubbish. They will learn, and discover, and invent. They will just do it with a different tool set than you. And 40 years from now, they'll be complaining that the kids with their darn holodecks are being denied the chance to build character by learning how to manipulate regular expressions in PERL...
N.A.
BASIC is available for Linux in a quick to install, true to (at least my) memory of its PC implementation. As is virtually every other language a curious young mind would want to explore. Installation of Linux on a common PC became relatively simple a couple of years ago.
A bazzar of software is available for that platform that would allow your son, or other curious people, to explore a multitude of disciplines.
I, for instance, have embarked on ear training and music theory.
bwBasic, the version I installed to check what I was saying here, describes itself as:
The Bywater BASIC Interpreter (bwBASIC) implements a large superset of the ANSI Standard for Minimal BASIC (X3.60-1978) and a significant subset of the ANSI Standard for Full BASIC (X3.113-1987) in C. It also offers shell programming facilities as an extension of BASIC. bwBASIC seeks to be as portable as possible.
bwBASIC can be configured to emulate features, commands, and functions available on different types of BASIC interpreters; see the file INSTALL for further installation information.
Regardless of whether BASIC is relevant today, I do understand the point the author is making.
I love computers and have since I learned to code colored dots flashing radomly on a Mac in BASIC, the "Kaleidoscope" program. My brother and I used to code little programs for fun on our TRS-80. Back then, if you had a computer, programming was part of the fun. Why was that? Was it that the games were so lame? Or that it was so easy to get into the BASIC program? Or because that's what the manual that came in the box showed you how to do? I don't remember my little TRS-80 doing anything but programming and playing games. So, I guess that is why. We had to, and we liked it!
I never had the right kind of mind to be a programmer. I cheated my way through PASCAL classes in college. I knew I was hopeless when I struggled for hours to make my 400 lines of code work by the midnight deadline, and the friend who "helped" me solve the problem calmly gave me ten simple, efficient lines of code at 11:50 p.m. Of course his program worked instantly.
Despite my limitations, I did end up working in the computer industry. I became a technical writer, a trainer, a graphic designer, an illustrator, and a web designer. I became what I describe on my resume as a "Computer Poweruser."
I understand how computers work. Because I "get" computers, I will always be able to troubleshoot the programs I am using. I can always find out how to test the limits of a program. So, I have learned a huge number of software programs, and I have no fear of learning new ones.
My stepson is now 19, and when he was in high school, he took classes in Photoshop. He used to visit in the summertime and play around on my software. It was obvious to me that he didn't really understand how a computer program worked. He had learned a few tricks, but he barely knew where his file was being saved. I felt like, wow, no one has taught you about binary. No one has taught you about how computers save information. No one has taught you programming logic.
It's a hard thing to teach. It didn't all sink in just in one fell swoop for me; it took me years of a little programming here, a little there, a math teacher explaining binary, a friend showing me the solution for a PASCAL problem, and toiling over a manual to set up a Microsoft Word Macro.
When I saw my stepson acting like he knew so much about the computer because he could make a razzle dazzle graphic with Photoshop, navigate the Internet, and throw up a little website using FrontPage, I felt at a loss. I consider his understanding of computers to be quite weak. He has a natural interest in computers, but how will he ever "get" them if never has to do any coding at all? My background with simple coding gave me the foundation to understand any software program that is thrown at me. I'd like for my daughter, and for my stepson, to have the same ability to work with computers that I have. I do wonder how kids today will develop a true understanding of how computers function if they are always end users and never programmers.
Much of the initial coverage about Fort Hood turned out to be wrong. Is there anything wrong with that?
The accountability imposed by another country for the CIA's kidnapping and torture reveals much about our own.
Fox News' morning show plays to type, talking about whether Muslims in the Army should face "special debriefings"
The Maine fight was supposed to be the dress rehearsal for repealing California's Prop. 8 -- but gay marriage lost
Once one obtains Seriousness credentials in the Washington media, they are irrevocable no matter one's conduct.
Salon headlines in your mailbox