Ruby is a programming language and Rails is a web framework. It provides a variety of elements that help to build web based applications fast, structured and stable.
It uses principles such as DRY (don't repeat yourself), REST (the modern standard for APIs) and "convention over configuration", reducing development effort and providing high consistency.
Ruby and even more Ruby on Rails have been designed specifically with the idea of beauty, ease of use but also stability and quality standards in mind.
While the programming language itself allows to express complicated logic very easily, the Rails framework uses this to build advanced structures.And \.
Even nowadays, it is always one step ahead in adapting modern principles of software development, never stagnating.
While other frameworks have died quickly again, Rails has been improving since a while.
Functionality that has been implemented by the community in hundreds of libraries called Gems, have been integrated into the frameworks core.
A certain stability has been established. A stability that is missing in other communities, like the NodeJS world. We appreciate it, when consistency is what we aim for.
Other platforms like PHP have been known for their tendency to be suffering of security breaches. Rails has set a milestone making it almost difficult for developers, to create applications vulnerable to SQL injection or CSRF attacks.
Even if experienced developers can avoid such problems in any environment, we like to keep in mind that your application could end up in the hands of lesser cautious people, too.
It is easy to fit different Rails applications together in the form of "engines". This allows us to built one application on top of several others, never loosing the ability to customize and override their functionality.
We are also able to build large applications in a way, that can be easily splitted into microservices just in the right moment and not to early.
Ruby on Rails is great to develop high quality code while maintaining the development speed needed for modern, agile development.
We use it from microservices to large monolith structures, whenever it is possible.
In cases where another language, such as Python, Elixir or Go fits significantly better than Ruby, we will make use of a service oriented architecture and use both.
But for most cases we believe Ruby on Rails just fits fine for web development and application development. And if Java is a requirement, we run Ruby in the JVM as JRuby.