Online sources to learn programming
This is a list of sources that will help me figure out how to best construct a new programming course. It doesn't contain everything Google can find, but rather the interesting picks that seem to have valuable information. This list may change in time.
Note: Links will either direct you to a chapter in this blog series or to the project itself (if I have not written a post just yet).
Video
- Stanford Java course* - a free resource from Stanford with a great approach to teaching.
- PluralSight - an adult video tutorial site with some very useful advanced material.
- Lynda.com - a beginners tutorial site for any topic.
- Coursera - University of Michigan Programming course. Includes "how to assist learning" materials. (videos here: Programming for everybody)
- Khan Academy - the popular and effective source for learning anything.
- Why is programming hard* - Andy Wicks explains why he thinks programming seems hard, but really isn't.
Interactive
- Alice - an interactive blocks based tutoring system created by the awesome Randy Pausch
- Blockly - much like Alice, but on the web and developed by Google.
- Hour of Code - popular movement from Code.org that uses Blockly and gamification to teach.
- CodeCademy* - a "straight to code" approach with the app guiding each step.
- CodeCombat - learn to code in an actual game
- ProgrammingBasics* - incredibly daring: Instead of starting with variables it starts from the other end of the spectrum - OOP.
- List of visual programming languages
Online text
- Javanotes - a comprehensive beginners guide to Java
- Metshein an Estonian text based tutorial site
- University of Tartu online materials for University course in Estonian. (example)
- HowToProgramWithJava - this tutorial tries to grasp all of Java in 5 principle steps.
- Learn without stress - a few tips on how to approach programming without accumulating stress
- TutorialsPoint - great walkthrough of basics
Books
- Learn Java the hard way - an experienced teacher talking about how he does it. (exercises)
- The Art and Science of Java
- Head First Java
- Karel the Robot Learns Java
- Horisont 1969 - Leo Võhandu article about programming
- Kuidas Programmeerida - Estonian book from authors Kaasik, Kiho, Koit. (1990)
- Effective Programming - this blog-to-book by Jeff Atwood is basically a best-of collection from his blog.
Exercises
- Nifty - Stanford
- Codingbat
- Hackerrank - harcore competing, can end up with a job
- Central Connecticut State University