We're using KidCoder right now, my 12yo is using it. I just asked him and he thinks it might be a BIT complicated for a 9yo, so he suggests they'd want to take it more slowly than he has... He's been eating it up and chewing it up lol... He's finished the Windows course and is about halfway through the Game Programming course. Today he programmed a little animation of a stick figure walking... a simple thing, of course, but done from scratch it's pretty cool! He's absolutely loving it and considering the issues he has often had (ADHD and Asperger's, lack of motivation, does stuff to check it off his list but with no intent for retention or mastery) he's really retaining it well.
Once he's done this we'll go on to their TeenCoder level.
We had the first edition and there were a few typos and confusing things, but I think they've been resolved in the 2nd edition that's out now. For the most part, it's only been when there's typos that I've really needed to come in and help him figure things out. He's been entirely self-directed with it. With a 9yo you might need to be more directly involved.