Ruby on Rails Today

What is Ruby on Rails

Ruby on Rails is a web development framework that helps you build full stack web applications. It provides the basic structure to create web pages, services and databases according to the Model-View-Controller (MVC) pattern.

With any framework, there will always be opinions on which is the best, which has the greatest ability to scale, the easiest to pickup and which deserves your focus when starting to build applications. Ruby on Rails (RoR) is one of those frameworks - with a passionate community behind it that’s constantly upgrading the code. Should you learn Ruby on Rails? I think so, and I’ll tell you why.

The Benefits of Rails

Security

There are many built-in features that make a Rails application secure against common threats. A common attack style is called SQL-injection, whereby malicious code is entered into the application’s user interface with the intention of harmfully manipulating the database. With a Rails server, this threat is mitigated as there exists a built-in safety mechanism to filter out the threat. Rails can also protect against various forms of attacks including an XSS attack, HTML & JavaScript injection and cookie theft.

Simplicity

Rails presents itself on a streamlined syntax which allows for writing less code that’s easier to understand. It also can be integrated with various front-end frameworks including React and Vue.

Gems

Rails’ Gems are open-source libraries that can be used to enhance the functionality of your app. There are gems for almost every purpose, from storing a user’s password as a hashed string to processing payments via Stripe — the possibilities are endless.

Community

Rails has a vibrant community of developers that are constantly improving and updating the programming language. RoR’s source code is open-source and 100% free for anyone to download. Communities allow for developers to expand their knowledge base, build relationships, advance their career and seek mentorship.

Rails contributions on GitHub

The Drawbacks

Popularity

RoR has fallen in popularity in the developer community when compared to other emerging languages, for example, Python and ReactJS. It’s a mature programming language, as it’s been around for over 15 years. New programming languages often emerge, go viral, and what once was cutting edge becomes outdated.

Google trends for Ruby on Rails
Google trends for Ruby on Rails
Stack Overflow data

Speed

Runtime speed at scale is slower when compared to alternatives, such as Django and Node.js. When a developer is running an application on their local environment, speed won’t be noticeable, but it becomes material when thousands of queries are run against your application every minute in production. At that scale, the slightest millisecond of improvement of speed matters, and that’s where Rails can fall behind.

Machine Learning

An emerging technology is machine learning. RoR hasn’t emerged as a tool for ML primarily due to the lack of solutions, gems and relative speed for computations that are requried to run the calculations required. Machine learning is better suited for Python — especially due to its low barriers to entry, advanced ecosystem, popularily and flexibility.

In Summary

Ruby on Rails is a vast web framework, with a devote community of developers that can be leveraged for specific use cases. E-commerce applications have found RoR to be an adequate tool when building their online solutions and multi-billion dollar companies including Shopify use the technology for their operations.

Where To Start

There are many different starting points when launching your career as a developer. If Ruby on Rails isn’t for you, or you are having trouble deciding where to start, check out the graphic below for help!

Credit

Links:

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store