Skip to main content

Ruby on Rails

What does Ruby on Rails mean?

Ruby on Rails (ROS) is a so-called “framework” that is built on the extremely popular programming language Ruby. With Rails you can realize dynamic websites that access dynamic databases and in many cases can be programmed faster and easier than with other similar programming languages, such as PHP or Python.

History of development

The programming language Ruby, on which the Rails framework is based, was conceived by Japanese computer scientist Yukihiro Matsumoto as an extremely readable “human language”. The main advantage of this orientation is that Ruby source code can be read almost like normal text. The Rails framework, first developed and introduced to the general public in 2004 by Danish developer David Heinemeier Hansson, is based precisely on this approach. Hansson extracted RoR from the project management tool “Basecamp”. Thus, he did not have to rewrite a large part of the source code for the framework, but was able to take the basics from the tool and integrate them into Rails. The philosophy of Ruby is to be reflected in the framework by three basic concepts, namely:

  • Don’t repeat yourself (DRY): In RoR, information only has to be stored once in the database system. A new copy, as is common with many other programming languages, is therefore not necessary.
  • Convention over Configuration: The Rails framework assumes sensible default values, so that an adjustment of the configuration is not necessary in many cases.
  • Projects? When creating RoR projects, not only a configuration file is created, but also the entire structure for the project directories.
YouTube

By loading the video, you agree to YouTube’s privacy policy.
Learn more

Load video

Components

The RoR runtime environment is a closed system based on various scripts, libraries and the Ruby interpreter. Each web application developed with RoR consists of a directory tree, which in turn is composed of configurations, views, controllers and database model. The architecture of a Ruby on Rails web application is composed of the following components:

  • Controller: This is a Ruby file that is executed when a URL request is made. When a function page, such as account settings, is called on a website, a parameter inserted in the URL automatically triggers a database query.
  • Model: This is a database schema that is used to relate data to each other.
  • View: The view is used to process data and display it as an HTML document.

Advantages and disadvantages at a glance

Pro
  • The development process is often much faster and easier with Ruby on Rails than with comparable programming languages.
  • RoR code is characterized by very good readability and avoids unnecessary syntax to simplify the development process.
  • Development with RoR is cost-effective.
Contra
  • Not all hosting providers support Rails.
  • NodeJS and PHP have a wider distribution.
  • RoR applications are not as performant as Java or .NET applications.

Conclusion of the OM Optimiser team

Rails is a framework that is primarily designed to meet the needs of web developers who place a lot of emphasis on simple programming and easy-to-read code.

Do you have any more questions?

Please contact us


Further contents