Learning Ruby and Rails crossroads
Ruby on Rails is so popular, that there are merely thousands of good sources of how to learn it. You can choose if you prefer online courses, video courses, live courses, tutorials, blog posts, books, screencats, podcasts or another way. You can learn Ruby and then Rails, you can learn both together, you can even learn only Rails without knowing much about the underlying language. So why to write another article about it? I am offering you a very full list of sources, lets call it a crossroads. This crossroads will help you to find the right way of learning that fits your needs.
Online courses have become very popular lately. There are several formats of online courses, but most popular is some amount of video content, aimed to explain stuff, and then some exercises to practice it. These exercises are often build in the web app, so you do not have to install the language and you can immidiately try it, or they are assigned as homeworks. Lets take a look at online courses, based on their format:
Combination of video and challenges
- Codecademy - Ruby
- Ruby Monk - Ruby
- Talent Buddy - Ruby
- Ruby Koans - Ruby
- Ruby programming challenge for newbies - Ruby
In my opinion, the best representative of the exercise category is Codecademy. Codecademy is all free and is special in a way it is offering only pracitcal challenges, no videos. I perosnally like it, because it is much much quicker. The tasks there are small, so you can easily finish one even when you do not have much time. This is encouraging the “streak” effect. When you write at least one task a day, you are on streak, when you don’t, you loose your streak and have to start over.
This may seem stupid but it is very powerful motivation tool. I always remember how happy I was when I was learning HTML and CSS at codecademy and I watched my streak to grow from a few days to few weeks in a row.. The downside of the absence of video content is that it may be harder to understand the new topics just by trying. There is of course some kind of short introduction, but the main idea is that you will learn it by doing it, which may not fit everyone.
These sites are very similar to each other. They usually offer a huge selections of video courses on variety of topics. There are courses on Ruby, Rails, but also Ruby patterns, testing, best practices, etc… Some of these are paid monthly (Lynda), some by course (Udemy), and some are even free (Buckys Room). Lynda is in my opinion the best video based source among these. It has a small tution ($20/month) but you get access to hundreds of videos. The variety of selection is really impressive. The Rails course is really deep but with a very moderate pace. It explains the important parts and it uses a very clean explanations and examples. Along with the listening to the spoken word you are watching slides or code preview.
It teaches you everything you need to know, but one video is very short so you can proceed with a small steps or watch a whole chapters at once. If the instructor is speaking too slowly. you can make the video faster or you can read the transcript. Lynda is very professional and its content is always up to date and of high quality.
It is also worth mentioning PluralSight, which is the second best page for me. The huge advantage is that there is now content from Peep Code, which has been a perfect page offering high quality courses on several topics.
Exclusive and real time courses
List of exlusive courses:
- Tealeaf Academy
- One month Rails
- Skill crush
- Code Fellows
- Ready Set Rails - live online course
I called this group exclusive because these courses trully are in compare to the previously discussed ones. If you enroll, you will get a full package of things, video contents, podcasts, exercises, sample apps, cheatsheets, online consulting time with an instructor, chat room with other students, etc.. Also, the enrollment is usually only open during a given period of time, because there are limited seats. The price is going rapidly up, especially when there are real-time sessions. On the other hand, this is the most intense type of learning. I would compare it to a University class. It gives a lot but it expects your full commitment and lots of your time.
List of workshops and bootcamps
- Rails Girls
- Lighthouse Labs
- Learn Ruby
- Coder Wave
- Rails Bridge
- General Assembly
- New Circle
- Anyone can learn to code
- Launch Academy
Rails Girls is a weekend workshop for girls for free (I highly reccommend it!).It is maybe short but it will give you a pretty nice taste of Rails and you will definitely be inspired and motivated you into further learning. Not to mention the great community and the fact that it is happening in cities all over the world! Also, it is a great opportunity to became a couch afterwards so you can learn by teaching :) (That was my own path..). Very similar, also aimed at women, is Rails Bridge, only for the States.
List of screencasts
Screencasts are similar to video courses but the difference is, that they are usually specified to a certain topic, they tend to be shorter and they are showing you mainly the screen while coding, not slides or the teacher. The best form this category is Rails Casts although it is a bit old and they are not making a new episodes :( I also reccommend Ruby Tapas but they are a bit more advanced.
- Michael Hartl’s tutorial
- Zet Code
- Jumpstart Labs
- Ruby Learning
- Learn Ruby the hard way
- Tealeaf Academy
- Official Rails Guides
Michael Hartl’s tutorial is the best! It is absolutely the best of all, it is writen tutorial but you are directly asked to follow with the sample app and create it as you read. Reading the material is very good on its own, but if you try what you just read immidiately, you will get the feeling that you not only understand but you can really use it! It will give you confidence, it will make clear how to use everything. Well, on the other hand, it is quite long and for example I did not even finish it for the fiorst time. It goes deep and I think that the first chapters are enough for you to try to build something from scratch.
- Learn to program
- The agile web development with Rails 4
- Beginning rails 4
- Programming Ruby
- Why’s (Poignant) Guide to Ruby
If this post will raise an interest, I promise I will update it on more sources and I will also try to describe those in more depth. For example I would liketo include price, place, level and other information in the summary lists.. If you have any comment or would like to add your source, plase contact me here in a discussion or on Twitter.
Journey - Think. Write. Grow.
Self-improvement app which will help you to focus on your emotions, be positive and stay mindful.