Letters to the Editor
-
Great story....... Something to gnaw on.
Granted BASIC was the first largely used language kids learned on but also remember that c was the first language to be used on cross platforms. BASIC is also very good for the educational purposes but teaches bad programming languages. Remember in the beginning of OS' Unix was first and not ms or apple. Alot of people tend to forget that and forget about the Mabell labs. Now I do agree with you about the whole situation in dealing with kids not learning to code nor being able to. Great idea getting the commodore 64, but another perspective is think of what the real revolution that came with the dawn of the Unix environment. Such a radical change in the way the world functions was due to the onslaught of the enterprise world. Eric S. Raymond and Richard M. Stallman would be perfect people for your son Ben to read some of their articles on programming. They are the back to basic kind of guys but with C of course. These guys also started FSF(free software foundation) and GNU so they are very reputable developers. I know alot of people over look Unix or any *nix today but it is used in almost every idea that takes off. Even Microsoft tries to take some pages from it as well, lol. Programming is a fun and exciting career and lifestyle but to obtain the innovation like you stated we must embrace the past. We have to know where we are coming from to know where we are going. Have a wonderful day.
-
Why BASIC?
There ARE better programming languages around that could replace BASIC for beginners.
As many others I was doing my first steps in programming learning BASIC. 15 years ago it was ok, because BASIC is a simple language, and there was nothing else that could run on Z80 hardware as easy as BASIC was. But I must tell - it took me _years_ later to unlearn all the bad habbits that you'll quickly acquire struggling all the BASIC's limitations (infamuos goto's, copy-paste antipattern, tigh coupling, NIH syndrome - you name it).
Now, 15 years after, being professional with experience in many commodity languages (c, perl, php, java, ruby) I can't even think of recommending such ugly and damn language as BASIC is to anyone as introduction to the wounderful world of computer programming.
Don't get me wrong. I'm not kind of snob, who thinks that there is only one RIGH language and everything else is crap (actually, to some degree I'm - after I learned about ruby :) There are many factors that define what language to use for partucular job, and in the end it's programmer to be blamed for ugly code, not the language. It's obvious that for education you need a different kind of language that would allow to teach essential concepts and at the same time will not bloat the environment with "decoration" which purpose is very specific (like java's classpath for example).
For this, I think, any popular scripting language is good. My personal choice these days would be Ruby, before it was Perl. But Phyton is great too. Heck, even PHP is better! Not only these languages allows smooth paradigm shift from procedure-oriented design to OO design, they also support and sometime encourage the use of good programming techniques and design patterns - the only skills required to make you a good programmer (others required to make you the best :)
BASIC is a history, let's leave it in peace.
-
Great article
Being a part of the generation that grew up with the Apple II and C-64 (and TI-99/4A) this brought back some fond memories of writting basic code. Even playing with some *gasp* assembler. Today I feel that the reason can't code is because few even know C let alone assembler.
Anyone this article had me make a quick look around, I figured the fore mentioned Java developers must have simulated something in Java.
Here is a C-64 emulator (BASIC included) in a simulator that will run suprisingly well in a web browser.
http://www.live-id.org/j64/
Personally I like th e-bay approach. It is the technologist approach to the car guy saying "don't crush them, restore them".
-
Johnny has it easier than ever
When I learned to program I had no internet access, If I couldn't figure something out I had only the meagre help on my PC, plus the two or three example programs. Now you can type the exact error message you get into Google and somebody else has usually solved the problem. Not to mention the numerous tutorials and entire programs availabable for download.
BASIC is much more difficult language to learn than, say Python. Sure, Python can't draw things to the screen directly like BASIC, but libraries like PyGame allow this. Kids today, especially ones who are learning to program, are saavy enough to download libraries. Python also teaches the full range of programming, from simple one page programs with little structure all the way up to enterprise level. Sure C/C++ teaches you more about how computers work but Python teaches the logic skills and art of programming, which is more important in the long run.
-
It's out there...
For the Mac:
Chipmunk Basic
http://www.nicholson.com/rhn/basic/
For Windows:
Just BASIC
http://www.justbasic.com/
More can be found here:
Free Programming Resources
http://www.freeprogrammingresources.com/basic.html
-
Excuse me?
I am amazed at the number of letters agreeing with this ridiculous article. Everyone cries for BASIC, yet no one can say why a modern scripting language won't do. Or, rather, they give lots of reasons that are false.
"They're too complex for kids!" Look, kids don't have to learn all the fancy features to use them. With most modern scripting languages you could do a straight translation from BASIC and it would work. The only functional change necessary is you would use a text label for your "goto" instead of a number. Is that so hard? It would take about 10 minutes for Brin to teach his kid to translate the BASIC in his text book into a modern scripting language.
"They're so arcane!" Like BASIC isn't arcane? There was never a standard implementation of BASIC. And how about "poke 15360, 60" for arcane? What the hell does that mean?
"BASIC was closer to the metal!" No, it wasn't. BASIC is a high-level interpreted language, just like modern scripting languages. It had NOTHING to do with how the computer worked.
And, yes, you could muck around with the guts of the machines with "peek" and "poke", but on a modern machine you CANNOT DO THAT, not because no one has implemented the feature, but because there is HARDWARE in the machine that will shut your process down if you try it. This is because manipulating the machine at that level will crash your programs and corrupt your files. And today people don't want to lose all their data when Johnny decides to experiment with "poke". Whoops! There go all the digital photos! Whoops! There go the tax returns.
If your child is ready to experiment at that level, get a PIC programmer. There are any number of microcontroller products out there that can be programmed close-to-the-metal without risking all your data.
