I'm currently trying to do the same project with an 11-year-old nephew.  I created the rudiments of a little paint program in Java and I'm getting him to add features (new paint tools and such).  The nice thing about Java is it won't crash like C will.  But it is still C-like syntax, which is useful to learn.  The bad part is the syntax is a bit complex for a beginner because of all the object & method stuff.
 
I don't know if there are any BASIC implementations floating around still (there must be).  That might be a fairly simple choice.
 
If you are interested I'm happy to share the little Java paint program.

Erik Neumann  erikn@MyPhysicsLab.com

-----Original Message-----
From: math-fun-bounces+erikn=myphysicslab.com@mailman.xmission.com [mailto:math-fun-bounces+erikn=myphysicslab.com@mailman.xmission.com] On Behalf Of Daniel Asimov
Sent: Monday, December 27, 2004 12:43 PM
To: math-fun@mailman.xmission.com
Subject: [math-fun] Learning computer programming for a bright 13-year old ?

My very bright 13-year-old nephew would like to  learn computer
programming (from scratch).  He's quite familiar with using software,
especially having used Midi music software for several years now. 
 
At this point I don't think he has any specific goal of building
a particular kind of software; he just wants to learn what
computer programming is all about.
 
Has anyone had success with a particular language and/or book
in similar circumstances?  All suggestions are welcome.
 
At this point I'd like to give him something simple (so probably
Java is out) but not too simple (so maybe Alice is out).  But my
mind's not made up about these, either.
 
Many thanks for your ideas.
 
--Dan