Letters posted here are associated with the following article:

301
Letters
Thursday, September 14, 2006 12:00 AM

Why Johnny can't code

BASIC used to be on every computer a child touched -- but today there's no easy way for kids to get hooked on programming.

The letters thread is now closed.

View:
Thursday, September 14, 2006 07:15 PM

try mumps - its like basic but nicer

If you want to try Mumps, originally based on Basic but with an hierarchical file system and better string handling, try:

http://neamh.cns.uni.edu/mumps.html

or

http://www.cs.uni.edu/~okane/source/MUMPS-MDH/compiler.html

Free GPL'ed software

Thursday, September 14, 2006 07:39 PM

BASIC teaching tool

An excellent tool for teaching BASIC programming is the BASIC STAMP processor, available from parallax.com, or a number of other electronic distributors. The deluxe STAMP II version will perform reasonably extensive mathematical and logical operations and provides 16 direction-programmable I/O lines that allow you to interface the chip with "real world" electronic devices. For under $70 you can get the STAMP II plus a carrier board with 9 volt battery connection, a serial port plug, and space for simple interface circuitry. A complete manual describing the STAMP's operation and applications is also available. You can obtain a sophisticated BASIC editor and downloader program for free on the Parallax website, in versions compatible with either Mac or Windows machines.

I build exhibits for a local hand-on exploration museum, and have included STAMPs in a number of my exhibits. Using it is fun, hassle free, and I can't recommend it more highly. It's not blindingly fast, but for most of my applications, its performance is more than adequate.

Thursday, September 14, 2006 08:29 PM

The hard truth: Your knowledge is obsolete, Mr. Brin

I clearly remember the last time I got flat. Was six, seven years ago. It so happened that my father was in the car at the time.

I pulled out the jack, popped it under the edge of the car's bodywork, and started to wind.

"No no son!" My dad's face distorted with incredulity. "What are you doing!" Gesturing with his hands. "The jack's gotta go under the front or back of the axle! You'll tear that panel off you keep going!"

No, Dad. Sorry. Your knowledge of cars is obsolete.

My Dad was doing his doctorate in a computing discipline in the late 70s, and we spent time together coding in, yes, BASIC. I'll never forget those hours we spent coding our "Pirates" game. They were the foundation of my career in IT.

But would I insist on teaching _my_ child BASIC?

You're kidding, right?

BASIC teaches nothing but bad programming habits that, if you wanted to extend your skills, would all have to be broken.

Kinda like putting the jack under the axle. Useful way back when, but please don't try that in a modern sedan.

My knowledge of BASIC, emotionally resonant though it is, is obsolete.

There are a dozen fantastic interpreted scripting languages that would not only be more useful and fun to teach, but would impart all the same lessons that I learned from BASIC, without all the negatives.

How much of your essay, Mr. Brin, is simply a refusal to upgrade your own skills before attempting to make your child ready for the world that is, rather than the world that was?

Thursday, September 14, 2006 08:34 PM

Cute, but...

It's not the "Gods of IT" you should be looking to. Those people are concerned about, as you said, getting stuff done in high-level languages cheaply and quickly.

The kind of thing you're looking for is still alive and well... in Linux. That's where the hackers are, the people who care about how the machine works at all levels.

I just spent all of 30 seconds finding, downloading, and using Bywater BASIC to print out "foo" in a loop (10 print "foo", 20 goto 10 natch).

You're looking at the wrong platform to provide that kind of experience. Granted, that's partly your point, but it's not our fault we have a better platform to play on now. Linux is the hobbyist OS of today, like those wonderful Apples, Commodores, and Ataris of old.

Regards,

-scott anderson

Thursday, September 14, 2006 08:44 PM

What about GD?

The author would, it seems, want graphics programming that can be controlled with mathematical (geomeric and coordinate) algorithms.

The GD library fits this. Bindings are available in Perl, PHP, and Pthon, as well as Visual basic.

These do not use line numbers, but, if required, Perl at least is flexible enough to use older conventions like labels and goto statements, as does Basic. Its insistence on sigils like '$' for variables and an arrow -> for functions of a graphics object may seem a bit wierd to a Basic programmer, but that should be a minor hurdle. An example:

use GD::Simple;

# create a new image

$img = GD::Simple->new(400,250);

# draw a red rectangle with blue borders

$img->bgcolor('red');

$img->fgcolor('blue');

$img->rectangle(10,10,50,50);

# draw an empty rectangle with green borders

$img->bgcolor(undef);

$img->fgcolor('green');

$img->rectangle(30,30,100,100);

# move to (80,80) and draw a green line to (100,190)

$img->moveTo(80,80);

$img->lineTo(100,190);

etc.. see http://search.cpan.org/~lds/GD-2.35/GD/Simple.pm

Thursday, September 14, 2006 09:11 PM

I agree!

When I graduated most of my friends had watched TRON, could name all hands on the deck of the Enterprise, and "code". Flash forward 25 years. Now, all my students know most "cheats" for most retail games, can identify the sidebars on Star Trek 2.0, but can't code their way out of paper bag. I spend hours upon hours teaching them command line Unix, shell scripting, and programming logic so they have at least a shot of being succesful in higher level programming or jobs...most of which we knew long before we arrived at college. Don't get me wrong, I love my modern desktop but I do wish students had the opportunity to learn the skills we did before graduating.

Thursday, September 14, 2006 09:41 PM

Mathematica? No way.

qu1j0t3: Mathematica is a disaster for anyone but the most gifted high schoolers. I don't even recommend it for non-technical majors in college. It is syntactically very picky, yet has very soft variable typing. It is also essentally a compartmentalized and extensible language, which is great for a very technical person building their own tools, but is terrible for dynamic groups (e.g. in classrooms) experimenting and wanting to share code.

Wolfram has tried to get into the K-12 market. Several teachers I know (calculus, diff eq) have played with MM and concluded that it's basically good for demos during lecture but not for the students. There are many excellent packages for K-12 math and programming, some of which have been mentioned here.

Most Active Letters Threads

445

The Washington establishment suffers a serious defeat

Approval of the Paul/Grayson bill to audit the Fed is both rare and important in several ways
415

The administration guts its own argument for 9/11 trials

If some detainees get military commissions or indefinite detention, how can 9/11 trials be justified?
294

Rule-of-law extremism engulfs primitive Eastern Europe

Why would the new President of Lithuania demand investigations of CIA black sites in her country?
226

A letter to readers

On my current condition: Definitely treatable, definitely uncertain
179

More GOP lies about healthcare reform

Republicans who know better falsely claim that the panel recommending fewer mammograms is a Dem plan for rationing

View all »

Letters Help

Currently in Salon