Today, I am going to be talking a little bit about the different resources that I used to learn programming/web development.
Web Learning: Udacity-This site has a lot of courses. The course that I took here was Intro. to Computer Science. I feel that this course is a great first step into programming. The quality of instructor, TA, and course material are top-notch. Please note that this course is taught in Python. As of writing this review, Udacity is still free. I definitely have no complaints about this site. 10/10
Codecademy- This is a great site to start at if you have never coded before. It is currently free. I also noticed that it has quite a few bugs. I really enjoyed the content, especially the Ruby course. For a free site, it is good. 8/10
Codeschool- I prefer this site over Team Treehouse. Some of the material on this site CAN be difficult at first. The transition between courses in the same path can be challenging. For example, even after finishing Try Ruby, you may find it tough to finish Ruby Bits (parts 1 and 2). It is best to go through a real book (see below) first after Try Ruby. I wouldn’t recommend starting out at this site for beginners as a lot of the courses assume that you have basic programming knowledge.However, this is the site to work on once you have the fundamentals down. The content in the videos are very condensed. The quality of the instructors is top-notch. 9/10
Team Treehouse-This site is Okay. The instruction on this site is definitely a lot more in-depth than Codeschool, making it the more beginner-friendly choice. There are whole sections dedicated Also, I feel that some of the materials on this site are a bit outdated. I was super confused in their MySQL tutorial where they asked me to install a certain SQL GUI that was no longer on the MySQL site. 6/10
Rubeque: This site is good for solving problems with the knowledge that you are gaining from other places. Definitely aim to complete a few problems a week on this site. 9/10
Books: Peter Cooper’s Beginning Ruby-This is an excellent book for beginners. It goes through everything in-depth and I like that it has example programs that walk you through building real programs. 9/10
Chris Pine’s Learn to Program-Another great book that is available for free on the web. It is very well-written and helpful for learning the basics. 10/10
Michael Hartl’s Rails Tutorial Book-Rails is complex and I believe that this is the best introduction to Rails. This is a “must-go-through” if you are starting Rails. 10/10
Besides these websites/books, there is a myriad of resources out there. In conjunction with resources, you should also work projects. Simple ones such as creating a tic tac toe game, blackjack game, chat box, or even a bot are great examples of projects that you can work on.
If I were to do it all over again and start learning Ruby/Rails from scratch, I would go through my resources in the following order:
- Chris Pine’s Learn to Program and some of Codecademy or Team Treehouse a) (Optional) Udacity’s Intro to Computer Science
- Peter Cooper’s Beginning Ruby a) Create a simple programming project
- Codeschool
- Michael Hartl’s Rails Tutorial
- More Codeschool
- Create a Web App with Rails
Thanks for reading and happy programming!