http://www.smalltalk.org/smalltalk/whatissmalltalk.html
We programmers spend half our days discussing which programming language is the best screwdriver for our jobs. I bet there'll be 500 posts on this topic by the end of the day.
Heck, download Visual C# for your boy, then put a SQL Server or an Oracle instance on your PC, he'll be pulling down 80K out of high school.
What about 'true basic'?
Could it be that the demise of BASIC is also linked to the paranoia about birthing a whole new horde of hackers and crackers that will cause mischief on the internets?
I seem to remember some translators from BASIC to C. HAH, try to find a straight 'C' compiler anymore... I think that you can still download Turbo C for free and there was a version of BASIC and Pascal by Borland as well.
Yes, it's a shame that current support for BASIC has died. Ahh the halcyon days of my youth with a TRS-80 and a cassette deck...
Many young people who are curious about much of anything at all. The commonest thing I hear is "I don't know about that stuff, don't ask me." And since a good programmer today can expect to lose their job to someone in Brazil, Vietnam or India, I can't say as I worry too much about it. In my kids lifetime I think anyone with a 6th grade reading level will eventually be called an elite academic snob.
Thanks, Detroit's Black Helicopter, you've illustrated the point well. In your VB example, what is wscript? What's does the construct wscript.echo do? I'm a generation older than the writer (close to 50) but I was taught Pascal in college. The problem with starting with a OO language like VB is the lack of transparency. Yeah, I know, what's the difference between a function call and a method call? Well, if you have to ask that, why are you programming in an OO language?
I've been disturbed by what passes for programming these days. Take a look at any web page source - what is this? Its not programming - clearly no one person typed all of this...crap in! Its all cut and paste. I believe that the web is destroying programming more than anything.
So on one side, things look so complicated that its hard to understand what's going on under the covers but on the other you have companies trying to sell their products as no programming needed (sheesh, try making Access do anything useful!).
I find it distressing that big business (ie M$) is trying to sell programming as a process akin to manufacturing (and one that can be done better by a cheap off shore company) rather than the often creative process that it is.
The author implies that BASIC is an integral layer that lives between assembly and higher-level languages; in fact it's an evolutionary dead-end. A student learning BASIC would have to learn concepts such as line numbering and GOTO statements which are not only deprecated today, but are "considered harmful" and produce brittle, unwieldy code.
Basic isn't available anymore? Cry me a river. Rather than saddling the poor kid with C++ or dragging him back to the stone age with an Apple II, hook him up with a $15 a month hosting account and a PHP book. No, it won't be the same way that you learned but people (including kids) who have an interest programming will take whatever route is available to them.
greetings,
while i personally would not go as far as highly-respected computer professionals and call the teaching of basic poor programming practice, there are better alternatives. as ''how to design programs'' at http://www.htdp.org with both a book and a running environment.
why does the author not mention these?
bengt
While I agree with the essence of your article - that understanding the 'bits that wiggle' is important (as my first manager post-graduation described it) I don't understand why it has to be basic.
Is it only because 'old' books have basic examples (implying there are no/few examples in other languages)? Or the simplicity of typing on a terminal, typing 'run' and seeing the results? Or because basic is pseudo assembler like, with its 'goto' control flow?
It's interesting you mention Python, albeit discarding it summarily. Personal experience has shown it to be very well suited as a teaching / introduction / exploration language.
[An aside: My wife is a teacher, and through her I got chatting to the computer science teachers. They were having problems introducing students to programming: someone had decided that C# in visual studio was the way to go. Perhaps unsurprisingly this wasn't working well. I suggested they try python instead - the language was, after all, designed for teaching. The feedback was this proved very successful; running the interpreter provides the immediacy you mention above with the same level of learning curve. The language was both accessible and powerful enough to support all levels of ability (the brighter students moved into 3D courtesy of Visual Python).]
So I'm interested in knowing, why Basic specifically?
I too grew up learning BASIC. However, my kids never learned it, and why should they? The concepts in BASIC are four or five generations behind today's methodologies.
Basic encourages spaghetti style coding, and the need for line numbers is a pain. It was good in the days predating page based text editors, but today line numbers are just a relic of an ancient time. Heck, forget about object orientation. True BASIC doesn’t even have have functional programming or even "top down" design! And, don’t get me started about the variable names.
If you want to teach a kid to program today, why not use Perl? It’s fast to learn, interpretive, and can be used from quick “guess my number” scripts, to fairly serious client/server programming. I gave my kids the Llama book, and they pretty much took off on their own. Perl for the PC is freely available from ActiveState. If you have a Mac or a Linux system, it’s already on there.
And, talking about Macs and Linux systems, bring up the ol’ command terminal and teach them a bit of shell scripting. I showed my kids how to write quick scripts to parse a file, rename all the files in a directory, automate backups, etc. Kornshell is pretty powerful, and most systems come with Desktop Kornshell which is a GUI version of Kornshell.
Of course, what kids really like to do these days is design their own webpages. Two of my sons have learned CSS and HTML, and the middle one has picked up PHP. He’s now coding his own Joomla modules. Not bad for a 15 year old. The older one, however, is more interested in JavaScript (You know, that AJAX stuff).
Next thing you’ll be whining about how there are no good books on UUCP networking.
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