I suppose it depends on what his attention span is and how motivated he is, and what he REALLY wants to learn to do.
Does he learn well from a book, or is he more of a visual learner? Does he actually want to learn to program, or is he interested in just making games?
If he actually wants to learn to program, I'd have him start with something like Java. You can get everything you need to build Java applications for free. The Eclipse or NetBeans Environments are both free and let you do pretty much whatever you want.
There are also free version of Visual Studio products from MS that work great for learning as well.
He needs to understand, though, that making video games is a whole different can of worms than fundamental programming. There is a WHOLE bunch of really boring stuff that you have to figure out before you can get to the "fun" stuff.
That means spending time making "hello world" programs and whatnot, and applications that have little to do with actually making video games. Video games are relatively advanced programming, and there is a ton of math and science that goes into it before the coding even begins to start.
Alternatively, there is the world of flash. I hesitate to really call it "programming" but I guess it is as much as as Visual Basic is and whatnot. It's probably the lowest barrier to entry for web programming, and making simple web-based games.