The choice of programming language doesn't matter. A programming language is just a tool for a job. However, some tools are better than others for a particular task. Since we are learning web development here, we are going to learn Ruby. It is an easy-to-learn but very flexible language. And it is great for making web stuff. Cool. Dig in.
- Try ruby - Very basic introduction to Ruby. Works in the browser, no setup, no hassle. Start here, it takes 15 minutes.
- The Poignant Guide to Ruby - Cartoons == happiness!
- Learn Ruby The Hard Way - This is one of the books used by Boots to get up to speed pre-DBC. This is a book that takes you from knowing nothing about programming to a place where you have a somewhat decent understanding of fundamental programming concepts, plus some more. You can buy it in .pdf and .epub to support the author or read it for free online.
- Ruby Track on CodeAcademy - Free, basic, hands-on, browser-based course. This is nice.
Practicing your Ruby-FuEdit
Once you've gone through some of the first steps and you feel like you know what you are doing there, you can proceed. Knock youself out:
- Ruby Koans - Intermediate ruby practice. You can do them in your browser or download them and run them in a terminal. These are really good, so make sure you check them out. Koans are a Zen thing, they usually small stories, questions or dialogues that are used to make a student progress in his Zen path. Awesome.
- Ruby Monk - Again, some Zen themed intermediate practice.
- Eloquent Ruby - Best programming book I've ever read.
Books and resources that you could read back to back, but are definitely worth mentioning if you want to dig deeper in a particular topic: