After Lynda.com Ruby Essential Training

After reading around for the best way to learn Ruby and Ruby on Rails I found many people advocating for people to get a better grasp on Ruby.  So I decided to try the Ruby Essential Training on Lynda.com.  I paid $25 for the monthly subscription, which I think is well worth it.  I figured I might be able to try the essential Rails training.  It was listed as beginner but I thought I would do it anyway.  I didn’t get the exercise files and you definitely don’t need to upgrade to premium for the files for this one.

My review:

1.  Very basic introduction mainly aimed for non-developer.  As a developer who has done a bunch of tutorials, I was able to skip by at least 50% of the material (through fast forwarding).  

2.  But Kevin does talk a lot about “gotchas” and special cases that I tried not to miss by fast forwarding.  These were probably my biggest takeaways from the course.

3.  I wish he would have had a larger piece on the “yield” keyword.  I imagine he didn’t because it is a beginner lesson, so probably fine.  I feel I know it decent enough but won’t fully appreciate it until I see it many times.

4.  The project at the end was the best part.  I learned a lot by trying to implement the methods before he did and seeing the differences.  Since he implements them in the “traditional” Ruby way, I started to learn on how things are usually done.  I think this will be the biggest learning curve for me.  I decided I am going to try to implement some other libraries and compare my code to real Ruby devs.

5.  Kevin explains everything very well and goes step by step.  He does things in different ways to show you how it can be done and never assumes anything.  As a teacher, he is awesome!  He shows you things the long way first so that you know what is going on underneath the covers.

 

Some things I learned/neat tidbits:

1.  The || operator for null assignments x = y || z (similar to ?? in .NET)

2.  Ruby Constants start with a capital letter.  They CAN be changed but you will get a warning.

3.  splat operator (*) turns a range into an array

4.  I love how Ruby allows Mix-ins… saweet!

5.  “require” only loads the file once, “load” loads it each time

6.  Opening up core classes and adding methods seems very powerful! – keeps code clean and flexible

 

Things I really need to learn how to use more often:

– unless keyword

– labels (i.e. :name vs @name vs “name”)

– inline array initialization (idk what its really called yet…like @name, @city = person_array)

– array.shift

 

Overall I think this course was maybe a bit too basic for someone with programming experience.  But even for me, I think learning some of the gotches and basics of some of the things I didn’t know as well were well worth it.  And the final project was a good first piece of Ruby code to develop (not web too!)

 

Advertisement

RubyMonk

So I finished the RubyMonk.com tutorial.  Overall a pretty good tutorial.  It holds your hand quite a bit, but it tries to give you a good understanding of the fundamentals.  Of course I won’t really know if they missed something until I gain a better understanding of the language.

Some criticisms I have:

– There are too few problems.  They should just have problems after each stage.

– They try to push you to the problems page every chapter or 2 (there are only 6 chapters).  And the problems page has all the problems listed.  There is no ryhme or reason why they take you there.  Even if you have solved all the problems you can at this point (each problem has a set of skills associated with it), they still are all just listed there (albeit with checkmark for accomplished ones).

– (Somewhat a continuation of the point above) The navigation sucks.  They force you to the problem page sometimes (even if you don’t have to go) and then from the problem page there is no way go to the back to the list of lessons.  The only way around this, is to use the browser back button and then hit the breadcrumb link at the top of the lesson pages.

Overall a good tutorial that gives you some basics in about 1-3 hours of time.  Got a better understanding of the yield keyword for sure.

So noob its sad

Decided I need to start learning Ruby.  Seems like a good language to learn to build web applications quickly.  There is such a large community out there and tons of help.  I first tried TryRuby.org which was a very very simple warm-up.  Really targeted towards people who know nothing about development.  Good just to get a small taste.  Small interactive tutorial which pretty much holds your hand.  I got lost once or twice when I tried to test some other things out.  The tutorial got weird, so I needed to back up sometimes.  I guess I should just follow the path….

I signed up for a free online Ruby course at http://rubylearning.org/class/login/index.php.  It starts in a week, so my goal is to get familiar enough with Ruby to go through this course which will teach me more about how Ruby is used with other technologies.

Now I am on to RubyMonk.com and going to go through their 54 exercises.  I am hoping I can blow through these in an hour or 2 to gain a better footing around the syntax.  Then I am going to go through RailsForZombies perhaps.  I also heard http://railstutorial.org/ is good, so probably going to go through that after these to get some concepts down.

Wish me luck!