Ruby on Rails: An Introduction

Ruby on Rails: An Introduction

Ruby on Rails: An Introduction

Johns Hopkins University

About this course: Did you ever want to build a web application? Perhaps you even started down that path in a language like Java or C#, when you realized that there was so much “climbing the mountain” that you had to do? Maybe you have heard about web services being all the rage, but thought they were too complicated to integrate into your web application. Or maybe you wondered how deploying web applications to the cloud works, but there was too much to set up just to get going.
In this course, we will explore how to build web applications with the Ruby on Rails web application framework, which is geared towards rapid prototyping. Yes, that means building quickly! At the conclusion of this course, you will be able to build a meaningful web application and deploy it to the “cloud” using a Heroku PaaS (Platform as a Service). Best of all, it will almost feel effortless… Really!
“But wait”, you will say, “there is no way that we can build a useful application if there is no database involved. You need the data for an application to be useful.” Great point! But what if… instead of getting the data from the database, we get it from the internet by tapping into one of the web services out there that readily provides data needed by our application? “Ok, but that’s probably very complicated”, you will say. Take this course and you will be pleasantly surprised at just how easy it is!

In this module, we will install software required to develop Ruby on Rails applications. We will also demonstrate the use of a popular Ruby on Rails editor called “Sublime Text”. We will finish the module by familiarizing ourselves with a version control system called “Git” that will be used later in the course to submit assignments, as well as to deploy Ruby on Rails applications to a PaaS (platform as a service) called “Heroku”.

9 videos, 3 readings, 1 practice quiz

Video: Course Introduction

Reading: Grading

Video: Welcome to Module 1: Setting Up the Development Environment

Reading: Github Repository for Module 1

Reading: Recommended Books

Video: Software Installation For Linux Users

Video: Software Installation for Mac Users

Video: Software Installation for Windows Users

Video: Editors & IDEs for Ruby on Rails

Video: Introduction to Git

Practice Quiz: Introduction to Git

Video: Local Git Repository

Video: Remote Repos and Github

Graded: Module 1 Quiz

WEEK 2

Introduction to Ruby

In this module, we will explore the different areas of the Ruby programming language.<p>We will start with the basics and continue with more advanced topics, such as arrays and hashes. We will also spend time exploring object oriented programming in Ruby, and finish the module by demonstrating how to perform unit testing.</p>

18 videos, 5 readings

Video: Welcome to Module 2: Introduction to Ruby

Reading: GitHub Repository for Module 2

Reading: Recommended Books

Video: Ruby Basics

Video: Flow of Control

Video: Functions

Video: Blocks

Video: Files

Reading: Practice Programming Assignment - Case Statement

Video: Strings

Video: Arrays

Video: Ranges

Video: Hashes

Reading: Practice Programming Assignment: Collections

Video: Classes

Video: Class Inheritance

Video: Modules

Video: Scope

Video: Access Control

Reading: Practice Programming Assignment: Classes

Video: Introduction to Unit Testing

Video: Introduction to RSpec

Video: RSpec Matchers

Graded: Calculating Maximum Word Frequency

WEEK 3

Introduction to Ruby on Rails

In this module, we will become familiar with core concepts behind Ruby on Rails, such as CoC (Convention Over Configuration) and MVC (Model-View-Controller). <p>We will then learn about consuming JSON API with HTTParty, a Ruby gem. We will then integrate this ability to consume JSON API to serve as the data layer for our Rails application.</p>Finally, to conclude this module we will deploy the application to Heroku and write a unit test that will verify the desired functionality.

14 videos, 3 readings

Video: Welcome to Module 3: Introduction to Ruby on Rails

Reading: Github Repository for Module 3

Reading: Recommended Books

Video: Introduction to Rails

Video: Creating your First Application

Video: Controller and View

Video: Routes

Video: Moving Business Logic Out of View

Video: Helpers

Video: Introduction to HTTParty

Video: Bundler

Video: Rails & HTTParty Integration

Video: CSS, Parameters & Root Path

Reading: Practice Programming Assignment: HTTP Client

Video: Deploying to Heroku

Video: Blackbox Testing

Video: Debugging Rails Applications

Graded: Coding Assignment - Recipe Hunter

FAQs

How It Works

Coursework

Each course is like an interactive textbook, featuring pre-recorded videos, quizzes and projects.

Help from Your Peers

Connect with thousands of other learners and debate ideas, discuss course material,
and get help mastering concepts.

Certificates

Earn official recognition for your work, and share your success with friends,
colleagues, and employers.

Creators

Johns Hopkins University

The mission of The Johns Hopkins University is to educate its students and cultivate their capacity for life-long learning, to foster independent and original research, and to bring the benefits of discovery to the world.

Pricing

Audit

Purchase Course

Access to course materials

Available

Available

Access to graded materials

-

Not available

Available

Receive a final grade

-

Not available

Available

Earn a shareable Course Certificate

-

Not available

Available

Ratings and Reviews

Rated 4.6 out of 5 of 1,338 ratings

AG

I love the way the course is organized, however there where a couple of things that wer outdated like the coursera api, and was a bit confusing follow the video.

Another improvement could be to code live instead to have the image of the code in the video.

Thanks for helping me to start my journey in rails :)

I

It is a great course where you can learn the basic and the teacher explain very clear.

Great course! Nice introduction to Ruby and Ruby on Rails plus a thorough guide on how to set up your development environment (this is where I usually get frustrated in other courses).