Another great resource for teaching kids programming that I haven't seen mentioned in the discussion is Scratch (http://scratch.mit.edu/). My daughter (just turned 11) has been playing with it for a couple years now and it's pretty amazing the stuff she can create. The best part is that the scratch website hosts projects for free, so she can share them with friends and family. It's a great introduction to programming concepts.
As far as learning HTML/JavaScript, my daughter also liked Codecademy, and went through several tutorials there. She would get bogged down a little on syntax (Scratch is very visual), but I can't imagine an easier way to learn HTML/JavaScript.
I'm about to do an multi-week after school "Intro to Programming" session at our local elementary/middle school in Scratch in Baltimore city. 8-10 weeks for 5th to 7th graders. It is an urban school with quite a range in the kids' abilities and not all kids have working computers at home. It'll be a challenge but I think the kids will surprise me.
Last school year I taught 2nd graders a little bit using Scratch and many of them got it and with a bit more exposure this year they could be creating programs on their own.
As far as learning HTML/JavaScript, my daughter also liked Codecademy, and went through several tutorials there. She would get bogged down a little on syntax (Scratch is very visual), but I can't imagine an easier way to learn HTML/JavaScript.