Jake Peterson

May 16, 2021

2 min read

What is Ruby on Rails?

Before we take a deep dive into all the services Ruby on Rails has to offer us, let’s first take a moment to discuss Ruby. Ruby is an objected oriented programming language, so much so that even true and false, strings, and numbers are considered objects . It’s creator, Yukihiro Matsumoto, created ruby to appear simple and natural to read but still intricate inside and able to achieve complex feats. One of the main reasons Ruby has become so popular is because of Ruby on Rails.

Ruby on Rails is an open sourced web application framework. It can be used to build a wide variety of projects ranging from single page applications to full blown websites. Github, Shopify, Twitch, and Instacart are just a few honorable mentions of all the sites that use Ruby on Rails.

Key Features

Active Record: Easily allows you to create and store data without ever actually writing SQL queries.

MVC: Model, View, and Controller architect. Model- handles data and logic. View- handles the presentation on the user interface. Controller- handles how the user interacts.

Convention over Configuration: Designed to decrease the number of choices the programmer has to make, because these choices have already been made. For example Rails has a way of naming tables in relation to classes so if you have a movie class, then there will be a movies table.

Pros

Simplicity- Ruby has a very simple and easy to read syntax, similar to english.

Community- Because it is an open sourced framework, there is such a large community of people contributing to make Rails better. You can also find numerous chats or forums on anything you need to implement.

Compatibility- Ruby on Rails is compatible with front end frameworks like React, Vue, or Angular and they can be integrated easily.

Cons

Flexibility: Because the goal of Rails is to make a programmer more productive by just following the conventional way of doing things within this framework, customization is more difficult to do.

Popularity: The popularity has been on the decline, some thing this is may be a result of the steep learning curve. It takes a while to become a specialist in Rails.

Performance: One of the big complaints is that Ruby on Rails has a slower runtime speed, as well as the boot time taking quite a bit especially for larger projects with lots of gems.

Overall I thoroughly loved learning Ruby on Rails. From the convention to the scaffolding wizardry to learning the ins and outs of MVC. I could not recommend using this framework enough.

Sources: