The Nightstar Zoo

Nightstar IRC Network - irc.nightstar.net
It is currently Tue Oct 24, 2017 1:06 am

All times are UTC - 6 hours [ DST ]




Post new topic Reply to topic  [ 14 posts ] 
Author Message
 Post subject: Why Johnny Can't Code
PostPosted: Sat Sep 16, 2006 2:26 am 
Offline
Intern
Intern
User avatar

Joined: Sun May 12, 2002 12:18 am
Posts: 1134
Location: Idaho
Science Fiction author David Brin on why BASIC still has a place in education. He and his 14 year old son bought a Commodore 64 off eBay after not being able to find any really simple BASIC for Macintosh or PC.

Math textbooks have BASIC examples in them? Didn't when I was in school in the 80s'! A simple language like BASIC would be an ideal learning tool for algebra and other math classes.

_________________
Fandemonium!
August 1st, 2nd, 3rd, 2014

"I am a machine. I am a weapon of war. I am a destroyer of life in the service of life, the sword and shield of my human creators." Bolo Invincibilus, Mark XXIII, Model B (Experimental) 0075-NKE "Nike".


Top
 Profile  
 
 Post subject:
PostPosted: Sat Sep 16, 2006 7:34 am 
Offline
Concession Worker
Concession Worker
User avatar

Joined: Tue Jul 01, 2003 5:26 pm
Posts: 1479
Location: R'lyeh
IMO, the limited yet powerful nature of the C64 architecture makes it great for two things: learning how to code efficiently, and (more importantly) learning how to solve tricky problems with a limited toolset. However, most BASICs (including Commodore BASIC) really should be avoided. The learning curve for BASIC programming is not that much better than for anything else, and the coding habits it teaches are just horrible. If you want to start coding for the C64, ditch BASIC and go all-out 6502. It's both more educational and less painful.


If I wanted to teach kids to program I would expose them to something like Python (with pygame!) or Squeak...

_________________
Living in a state free from the burdens of privacy and democracy since 2008-06-18.


Top
 Profile  
 
 Post subject:
PostPosted: Mon Sep 18, 2006 3:13 pm 
Offline
Safari Exhibit
Safari Exhibit
User avatar

Joined: Mon Feb 07, 2005 3:48 am
Posts: 151
Location: Durban, South Africa
I concur. While I currently don't hve any kids to teach (my cousins show depressingly little interest, except for the one who's being mangled at school by Java and a really horrible process) I have been playing around with pygame a little just in case.

I even wrote a brief guide to teaching yourself inspired by said cousin, although I don't think he ever looked at tit. A few other people have, though.

The rise of the PC, with an OS that was not programmable, severly limited many people's chances to learn. I know I was stuck for several years until I managed to get my hands on a bootleg copy of Turbo Pascal. These days, with Linux becoming more widespread, hopefully the situation will improve somewhat. I don't think we'll ever see a single ubiquitous language again, though. This is sad, but not as sad as that single ubiquitious language being BASIC.


Top
 Profile  
 
 Post subject:
PostPosted: Tue Sep 19, 2006 1:06 am 
Offline
Intern
Intern
User avatar

Joined: Sun May 12, 2002 12:18 am
Posts: 1134
Location: Idaho
The guy that wrote the 'Build' 3D game engine used in Duke Nukem 3D and around a dozen other titles started out with TI-BASIC on a 99-4/A Home Computer as his first computer.

Many versions of BASIC aren't very 'basic' at all. RapidQ could compile many different styles of BASIC code into an executable program file.

Ever see that fully functional 8-bit Nintendo emulator written completely in Microsoft's Quick BASIC? ('Course it requires a 1Ghz PC to run full speed, and was written when 300Mhz was the fastest PC available.)

BASIC ain't just line numbers and GOTO statements!

_________________
Fandemonium!
August 1st, 2nd, 3rd, 2014

"I am a machine. I am a weapon of war. I am a destroyer of life in the service of life, the sword and shield of my human creators." Bolo Invincibilus, Mark XXIII, Model B (Experimental) 0075-NKE "Nike".


Top
 Profile  
 
 Post subject:
PostPosted: Tue Sep 19, 2006 2:10 am 
Offline
Safari Exhibit
Safari Exhibit
User avatar

Joined: Mon Feb 07, 2005 3:48 am
Posts: 151
Location: Durban, South Africa
bizzybody wrote:
BASIC ain't just line numbers and GOTO statements!


Indeed. However, I have yet to encounter an implementation that fully transcends its origins without becoming a completely different language. Qbasic is probably about the best BASIC has ever gotten, and that's rather difficult to get hold of, these days. Visual Basic is hardly BASIC any more and it's horrible in completely different directions. I'm a little out of date on BASICs these days, but I did quite a lot of research back in the days when my dad got his first XT and I was allowed to play with it.

I still have a soft spot for my old C64, though, and one of these days I'll fire it up again...


Top
 Profile  
 
 Post subject:
PostPosted: Wed Sep 20, 2006 6:34 pm 
Offline
Nightstar Graveyard Daemon
User avatar

Joined: Mon Jun 03, 2002 8:30 pm
Posts: 1071
Location: Wouldn't you rather observe my Velocity?
jerith wrote:
Qbasic is probably about the best BASIC has ever gotten


Minor nitpick: the name you're looking for here is QuickBASIC, not QBasic. They were different, mainly in the sense that DevStudio's Professional and Academic versions were different.

They were the same language and sported the same TUI editor. QBasic came free with whatever version of DOS they were pushing at the time (4.2, I think?) and you had to launch QBasic and open a .BAS file with it.

QuickBASIC cost US$45, but ohh, blessed joy of joys, it came with a compiler.

I got my first programming job in QuickBASIC doing the computer animation for a movie called Nightmare at Noon. (HOLY SHIT! I'm in IMDb!)

Anyway, QuickBASIC fed my family for the first couple of years I was married.

Mmm... good times.


Top
 Profile  
 
 Post subject:
PostPosted: Thu Sep 21, 2006 2:31 am 
Offline
Safari Exhibit
Safari Exhibit
User avatar

Joined: Mon Feb 07, 2005 3:48 am
Posts: 151
Location: Durban, South Africa
Chalain wrote:
Minor nitpick: the name you're looking for here is QuickBASIC, not QBasic. They were different, mainly in the sense that DevStudio's Professional and Academic versions were different.

They were the same language and sported the same TUI editor. QBasic came free with whatever version of DOS they were pushing at the time (4.2, I think?) and you had to launch QBasic and open a .BAS file with it.


I was unaware of the distinction (I thought one was just a shorter name for the other) but it this case it's mostly moot. I was commenting more on the language than the toolchain and I only ever played with the free version.

Chalain wrote:
I got my first programming job in QuickBASIC doing the computer animation for a movie called Nightmare at Noon. (HOLY SHIT! I'm in IMDb!)


Interesting. I was an extra in (I think) this BBC Krakatoa movie but I'm not credited on IMDB. (Nor was I expecting to be -- I was 20% of a Dutch marching band.)


Top
 Profile  
 
 Post subject:
PostPosted: Mon Oct 09, 2006 3:10 pm 
Logo is a better teaching language than BASIC, really.


Top
  
 
 Post subject:
PostPosted: Mon Oct 09, 2006 3:44 pm 
Offline
Safari Exhibit
Safari Exhibit
User avatar

Joined: Mon Feb 07, 2005 3:48 am
Posts: 151
Location: Durban, South Africa
gwalla wrote:
Logo is a better teaching language than BASIC, really.


I quite agree. I wouldn't teach anyone basic unless there really was no alternative. Back in high school we did half a year (or maybe a full year? I forget) of Logo. Since I had played with C64 logo for several years beforehand, I quickly grew bored and started pushing the limits of the language. My group's final project did stuff most people didn't know was possible, including the teacher.

Programming music one frequency at a time -- fun days, those.


Top
 Profile  
 
 Post subject:
PostPosted: Fri Oct 27, 2006 10:10 am 
As I've said before, I think Python would be the language of choice these days; it is a modern mutliparadigm language, yet almost as simple to learn as Logo, and has an interpreter listener so you can write programs on the fly. The only disadvantage it has over some BASICs is that you can't save what you write at the listener directly; to write a program you would save, you need to use the editor. However, there are ways around this too.

I understand that Ruby would also make a good choice, though I don't know much about it yet.


Top
  
 
 Post subject:
PostPosted: Fri Oct 27, 2006 10:19 am 
Offline
Safari Exhibit
Safari Exhibit
User avatar

Joined: Mon Feb 07, 2005 3:48 am
Posts: 151
Location: Durban, South Africa
I probably wouldn't teach Ruby as a first language for many of the same reasons I wouldn't teach Perl. It's a great language, but messy. I'd also hesitate to introduce blocks (essentially lambdas) into an introductory course in an essentially imperative/OO language.


Top
 Profile  
 
 Post subject:
PostPosted: Fri Oct 27, 2006 4:45 pm 
Offline
Concession Worker
Concession Worker
User avatar

Joined: Tue Jul 01, 2003 5:26 pm
Posts: 1479
Location: R'lyeh
jerith wrote:
I even wrote a brief guide to teaching yourself inspired by said cousin, although I don't think he ever looked at tit. A few other people have, though.

I can't believe I didn't notice that <strike>Freudian slip</strike> typo until now. :D

_________________
Living in a state free from the burdens of privacy and democracy since 2008-06-18.


Top
 Profile  
 
 Post subject:
PostPosted: Fri Oct 27, 2006 10:37 pm 
Offline
Intern
Intern
User avatar

Joined: Sun May 12, 2002 12:18 am
Posts: 1134
Location: Idaho
How about Squeak? That's had some quite recent updates.

_________________
Fandemonium!
August 1st, 2nd, 3rd, 2014

"I am a machine. I am a weapon of war. I am a destroyer of life in the service of life, the sword and shield of my human creators." Bolo Invincibilus, Mark XXIII, Model B (Experimental) 0075-NKE "Nike".


Top
 Profile  
 
PostPosted: Fri Dec 18, 2015 2:09 pm 
Offline
Intern
Intern
User avatar

Joined: Wed Apr 08, 2009 7:02 pm
Posts: 1074
Location: Puget Sound, WA
When I was in college in the late 80's studying Electrical Engineering and Computer Science, our math books had Fortran examples for many of the more complex numerical methods. Frankly they weren't very good examples.

Generally speaking, you can solve just about any problem in any language, but I wouldn't try writing a Fast Fourier Transform in COBOL.

That said, I agree that Python is a great first programming language. My first computer was a TRS-80 Model III with BASIC in ROM, but I ended up writing assembly code for speed. I did very much like the convenience of being able to single-step through the BASIC interpreter, though. Python is very easy to understand, can be used directly from the command line, and can be compiled for speed.

_________________
===============================================
"A sufficiently-advanced technology is indistinguishable from magic."
Arthur C. Clarke
"Sufficiently advanced magic is indistinguishable from technology."
Jack L. Chalker
"Magic is just another way of saying 'I don't know how it works.'"
Larry Niven
"Any technology, no matter how primitive, is magic to those who don't understand it."
Florence Ambrose


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 14 posts ] 

All times are UTC - 6 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group