Khan Academy (all ages, great for beginners up to advanced programmers)
Free website, teaches basics of programming using JavaScript, also offers tutorials in HTML, CSS, creating webpages, computer science principles, and more
khanacademy.org
Code.org (all ages, mostly for beginners but some advanced courses as well)
A database of activities and tutorials, has a large selection of mostly Hour of Code tutorials
code.org/learn
Tynker (all ages and skills)
Provides classes for a subscription fee, starts with basic block programming, offers advanced classes, introduction to robotics, Minecraft, and more
tynker.com
Scratch (aimed at ages 8 to 16)
Simple block programming tool that can be used to create stories, animations, and games. Free at scratch.mit.edu
MIT App Inventor (all ages, but I’d recommend some basic knowledge or programming)
My personal favorite way to learn programming (also used to program our robot) - uses block program similar to Scratch to make simple apps that can actually be used. Also has examples and app tutorials
Free at appinventor.mit.edu/explore
Apps:
Lightbot (available in junior coding puzzles for ages 4-8 or programming puzzles for ages 9+)
Teaches programming concepts such as loops, if/else statements, etc. Available as an iOS and Andriod app or on a computer
Costs $3 for the app but some free demo puzzles available online
ScratchJr (elementary schoolers)
An app that uses a simplified version of Scratch (see above) for young kids to create interactive stories and games
Free on iOS and Android
More links to resources, tutorials, and programs are available at hourofcode.com/us/beyond