Chart for Learning a Programming Language
The previous chart helped beginners pick a language, this one shows them what resources to use to learn it. It's better to spend time doing things than to passively read or watch content, so I selected interactive websites, books and courses. Start by going through an online tutorial, and then either read through some of a book or watch an online course. Personally I think a book is better than a video since they're more concise and easier to reference, but most videos below are short and to the point. The chart is based on these posts: Picking a Language, General Tips, Java and Python, Web: HTML Javascript and PHP, Learning Ruby and Rails
Free Resources For Learning a Programming Language
JavaPythonRubyJavascriptGood For Kids / Game ProgrammingGreenfootInvent Your Own Computer Games Hackety-Hack, Games: Ruby4KidsCodeAvengersInteractive Tutorial - Codecademy?No, You can try ProgramrYesYes, there’s also
TryRubyYesMore Practice and HelpCodingBat ProblemsVisualize Python executing
(also CodingBat)RubyMonk*
(1st part is free)Use Firebug or Developer Tools.
(See Waterbear for visual coding)Good Free Book for Teaching ProgrammingHow to Think Like a Computer ScientistHow to Think Like a Computer ScientistLearn to Program
Humble Little Ruby BookEloquent JavascriptInteractive Video CourseIntro to CompSci -
Programming methodology
(Warning: full Stanford course)Udacity - Intro to CompSci - Building a Search EngineCodeSchool’s RubyBits*.AppendTo Javascript 101Advanced BookEffective Java*Dive Into Python 3Pickaxe Guide*JavaScript: The Definitive Guide*More Training / BootcampsSee Local / Online collegesSee online courses or corporate PythonTrainingMost Bootcamps are for Ruby on RailsCatalyst.
For kids: CodeHS.com
* Not free. Update: added affiliate code to Amazon links.
See also: the Zappable Guide to Finding a Web Host.