I am 21, and I had an interest in programming from the age of 12. I tried starting with C, VB, and JS. C felt un-intuitive, VB was pretty easy (and I made a fully functional program from it) but it took a large amount of code and an understanding of the IDE to get anything done, and I couldn't get things to work the way I wanted in JS.
So I resorted to an extremely simple, quick, and immediately gratifying alternative - Programming my TI-83+ Graphing Calculator.
The manual is very informative, and the language is incredibly simple. Variables could not be any simpler (they are hard-coded, with the only options being letters A-Z), the commands are chosen from lists of menus (effectively removing misspellings from the list of screw-ups), and the syntax is incredibly simple. You can start with a program that runs Pythagorean Theorem (remember, the kid is 15 and the son/daughter of someone on Slashdot), work up to string manipulation, and eventually make games with moving 'sprites'. The other MAJOR benefit being that if the kid creates something useful, he can give it to his friends (TI Graphing Calculators can transfer programs using a very simple data cable).
So the kid learns the basics of coding, gets the immediate gratification from creating a program, has an all-encompassing manual detailing every command for when they want to try something new, and gets the excitement of having other people use something they created. Not to mention having something productive to do when they are bored in History class.
If I had to teach a 15 year old to code, I would definitely start with a TI-83+.