Ruby on Rails: An Introduction Course Review - Women Who Code.
51750
post-template-default,single,single-post,postid-51750,single-format-standard,qode-core-1.0.1,ajax_fade,page_not_loaded,,capri child-child-ver-1.0.0,capri-ver-1.6, vertical_menu_with_scroll,smooth_scroll,grid_1200,blog_installed,wpb-js-composer js-comp-ver-4.12.1,vc_responsive
 

Ruby on Rails: An Introduction Course Review

Ruby on Rails: An Introduction Course Review

“Ruby on Rails: An Introduction” is the first of 6 courses of “Become a Rails Developer” from Johns Hopkins University on Coursera. The specialization aims to help students become full-stack Ruby on Rails developers in approximately 7 months, so the subtitle is “Create modern full-stack web applications in five courses”. The first module is taught by Prof. Kalman Hazins, one of 4 teachers of this specialization.

About the “Ruby on Rails: An Introduction” course

I took “Ruby on Rails: An Introduction” without any previous significant experience with Ruby, RoR or coding. The only 2 things I had were 50% completed Ruby course on Codecademy, very basic attempts to catch up on App Academy Prep (Practice Problems) and some HTML/CSS. The 1st week of the course matched my level, but weeks 2-3 were very challenging (also, week 1 is shorter). This course is mid-level, for someone who already knows the basics of Ruby, RoR and object oriented programming. The 2nd week (dedicated to OOP) was the hardest one for me, even harder than the 3rd (intro to RoR). I was too overwhelmed with the amount of new information to realize that it’s better to research the week repo first, and then watch video lectures with the upcoming assignment in mind. This approach would definitely make things easier.

The most interesting part was the final project (Week 3 assignment) – “Recipe Finder” Ruby on Rails app.
Now I’m taking “Rails with Active Record and Action Pack”, the 2nd course of the specialization.
I want to thank Prof. Hazins for his great lectures and all the team that delivered this course.

What I Learnt From the Couse

  1. I started using Git and Github shell commands
  2. I got another perspective on Ruby basics
  3. I got my first experience with RoR and apps
  4. I started reading documentation on Ruby, RoR and related tools
  5. I learned the basics of OOP (object oriented programming)
  6. I learned how to create a new basic app using HTTParty gem to get the JSON data
  7. I learned about testing tools and tested the app with RSpec
  8. I learned how to deploy an app to Heroku

Pros and cons

I love the course and though it has some downsides (like any other course), I consider them minor ones. Generally, the course could be improved by reducing some info gaps and putting the right hints where necessary to prevent confusion, especially when it comes to assignments.

Pros

  1. I’m happy that this course exists. There are not so many great courses, and this one offers quality material, great to have it
  2. The course is very informative, well presented and puts you on the right track
  3. The course provides an end-to-end coverage of a simple, but real app, from installing environment to deployment
  4. I had a great overall impression: teaching style, material breakup, look&feel, tasks
  5. The material is delivered at a reasonable pace, that suits me well
  6. At the end of each video lecture there is a recap, very helpful to remember key points
  7. In fact, there are no deadlines, only recommended ones, all the progress stays even if you enroll in the next session
  8. Automated assignments checking – that takes just minutes and no need to assess peers!
  9. Screenshots instead of live coding. I prefer screenshots because live coding distracts me from actual code
  10. Rare bonus topics covered: testing with RSpec, app deployment to Heroku, Bundler and Gems (which I can’t stop singing like B-b-b-bundler and the Gemssssssssss!)
  11. Lots of sample code in the Github repository for each week and good book recommendations
  12. Forum is very responsive and friendly

Cons

  1. Easy to confuse with a beginner course, which it is definitely not. This is a mid-level course, should be taken after more simple course, like that provided by Michigan University’s or Codecademy’s Ruby course. Don’t be fooled with the 1st week which is fairly easy 🙂
  2. Sometimes you come across significant gaps between the information you are given and the information you are expected to know to solve the assignments. I had to spend a lot of time googling, asking and reading through forums to figure out some of the issues I ran into.
  3. Sometimes the material lacks answers to “why” and more examples
  4. Assignments’ instructions were hard for me to comprehend, they seem to miss some important pieces and could definitely be better structured and worded

Course Structure

Week 1 – Installing Soft, learning Git/Github basics

Welcome to Ruby on Rails: An Introduction!

  • Course Introduction
  • Grading

Installing Software

  • Setting Up the Development Environment
  • Github Repository for Week 1
  • Recommended Books
  • Software Installation For Linux Users
  • Software Installation For Mac Users
  • Software Installation For Windows Users
  • Editos and IDEs for Ruby on Rails

Git and Github

  • Introduction to Git
  • Introduction to Git Test
  • Local Git Repository
  • Remote Repos and Github
  • Week 1 Quiz

Week 2 – Ruby basics, OOP and intro to testing

    Getting to Know Ruby

  • Introduction to Ruby
  • Github Repository for Week 2
  • Recommended Books
  • Ruby Basics
  • Flow of Control
  • Functions
  • Blocks
  • Files
  • Practice – Case Statement

Collections and String APIs

  • Strings
  • Arrays
  • Ranges
  • Hashes
  • Practice – Collections

Object Oriented Programming in Ruby

  • Classes
  • Class Inheritance
  • Modules
  • Scope
  • Access Control
  • Practice – Classes

Unit Testing with RSpec

  • Introduction to Unit Testing
  • Introduction to RSpec
  • RSpec Matchers
  • Assignment: Calculating Maximum Word Frequency

Week 3 – Intro to RoR, building, testing and deploying the first app

Core Concepts

  • Introduction to Ruby on Rails
  • Github Repository for Week 3
  • Recommended Books
  • Introduction to Rails
  • Creating Your First Application
  • Controller and View
  • Routes

Diving Deeper Into Rails

  • Moving Business Logic Out of View
  • Helpers

Building a Ruby on Rails Application

  • Introduction to HTTParty
  • Bundler
  • Rails and HTTParty Integration
  • CSS, Parameters and Root Path
  • Practice – HTTP Client

Deploying to Heroku and Verification

  • Deploying to Heroku
  • Blackbox Testing
  • Debugging Rails Application
  • Assignment – Recipe Hunter

No Comments

Post a Comment