Learning to Program
http://www.cprogramming.com – For those dead-set on learning C or C++, this website is a good resource for tutorials and guides. While predominantly “read and practice yourself” styled, it has a wealth of resources for the aspiring C/C++ developer.
http://www.coursera.com – If you prefer a structured “distance-learning” style course, with tasks set by a real professor from an established university (and the possibility of a certificate of completion on some courses), Coursera may be for you. Combining video lectures with theory and self-study, their courses will teach you the fundamentals of learning to program, using the expertise gained from universities around the world.
Kilobolt Studios – If you have ever wanted to learn about game development on Android, you have found the right resource. James Cho, lead developer at Kilobolt, has posted an incredibly in-depth series of tutorials and guides on how to develop a game on Android. Working from the basics of Java, up to adding interactive elements to your game, this series of tutorials will teach you how to write your own Android game. Will your idea become the next Angry Birds?
Device Specific Information
Android Development Codex – If you are in need of device-specific information, or another set of information about Android to help you learn, check out the Android Development Codex, which aims to give you all the information you need about how to get going with your device. While not all are included yet, it’s in the form of a wiki and anyone is welcome to contribute.