I keep making posts with titles similar to this one, but then again, I keep finding new resources. There are a lot, including books (many of them freely available for download), videos, on-line courses, and so on.
- Invent Your Own Computer Games with Python looks like a very good book, and an extremely good value: it’s a free download, it’s in its second edition, and it’s also available as a print book for not too much. The “Invent With Python” Blog is a real blog, if not particularly high-bandwidth, it seems author Al Sweigart manages to post at least a couple of items each month, including “Code Comments”, which include source code with detailed comments. An overall excellent resource, specifically targeted to teaching/learning programming for kids (though it should work for anyone).
- Hello World! Computer Programming for Kids and Other Beginners is another book aimed at kids and other beginners and with a focus on programming games. There’s a website, Computer Programming for Kids, and there are videos at Youtube starring Carter Sande, co-author of the book and son of the other co-author, Warren Sande. The blog isn’t updated as often as the “Invent with Python” blog, but there is a fairly robust authors’ forum at the publisher’s website.
- Computer science is not the same thing as programming, though programming is generally considered a requirement and/or a prerequisite for studying computer science. In any case, sometimes it can be easier to teach the foundations of computer science without actually using a computer. That’s how the Computer Science Unplugged project rolls, with about 20 exercises, a free-downloadable book (with 12 of the most popular exercises) and a selection of videos on their Youtube channel demonstrating the exercises in action.
- I’ve got to mention, again, the excellent Learn Python The Hard Way by Zed Shaw. I started working through it, and it’s great: the short chapters/exercises are just long enough to engage me for an hour or so at a time, though it’s possible to spend more time on each. Perhaps not quite as “friendly” for kids as the others listed here, it could be good enough to get an interested teen going. For those teens who are less interested, I don’t know if anything will work, but who knows.