Should I use Ruby on Rails in 2021?

An article, posted 22 days ago filed in rails, ruby, ruby on rails, laravel, symfony, php, python, django, flask, hanami, comparison, enterprise & trust.

I’m still a big fan of Ruby on Rails. No other framework has ever made me as productive. And it is no a secret that it makes quite some other product companies very successful. Think of Shopify, Github, Basecamp, Hey, and others.

But if you’d look at at the list of most popular languages, the top 10 doesn’t feature ruby anymore.

In their 2020 survey on most popular technologies, StackOverflow writes:

Additionally, Ruby, once in the top 10 of this list as recently as 2017, has declined, being surpassed by newer, trendier technologies such as Go and Kotlin.

Also if you look at Google trends, ruby has always been negligible when compared to Python or PHP or Javascript, the trend is downward for the ruby package manager. But that is in the generic programming languages domain, still the trends is also downwards for “Ruby on Rails” when compared to e.g. Django, Laravel & Symfony.

But perhaps people are just working hard to ship things?

Most of the above mentioned trends focussed on generic applications. According to w3techs, Ruby is the third language detected for server-side programming languages (and slowly growing, albeit currently just at a mere 4.9%, in a market that is still dominated by PHP (79.1%)).

Previously we looked at search popularity of frameworks in server-side programming languages. But another metric is github activity for these open source frameworks. At this moment (over a timespan of one month):

  Rails (ruby) Hanami (ruby) Django (python) Flask (python) Symfony (php) Laravel (php) React (Javascript)
Merged pull request 167 5 71 16 208 4 52
Open Pull requests. 62 2 21 7 41 0 20
Closed issues 90 1 n/a 17 158 n/a 69
New issues 33 0 n/a 5 75 n/a 45
Authors 82 3 45 8 64 4 12
Mergers 77 3 35 7 65 3 9
Additions 5823 876 3413 84 533,817 19 8230
Deletions 1754 846 1629 56 434,091 3 4034
Github Stars 48.7k 5.5k 58.5k 56k 25.6k 65.9k 171k

Note: Django nor Laravel use Github for issue tracking.

Depending on the metric either Symfony or Rails take the lead (and while Laravel seemed more popular in Google Trends when compared to Symfony, it is hardly so given the Github activity).

Main consideration for me to choose Ruby on Rails over any other solution most of the time: no other framework or language has made me as productive as Ruby on Rails has (for basic web applications). And every time when I tried switching eco-systems I was struck by how much setup and configuration is required for stuff I have taken for granted to be just there and/or just work (testing infrastructure (from unit to integration), configuration of environments, dependency management).

Thanks to Petrik de Heus for suggesting the Github metrics.

update: in case you’re wondering, the ruby language itself is also quite alive (again all last month statistics):

  Ruby Rust Python
Merged pull request 54 436 376
Open Pull requests. 31 165 94
Closed issues n/a 303 n/a
New issues n/a 195 n/a
Authors 38 141 77
Mergers 18 136 68
Additions 78,998 32,836 17,564
Deletions 11,151 16,804 11,994
Github Stars 18.3k 56.8k 39k

Op de hoogte blijven?

Maandelijks maak ik een selectie artikelen en zorg ik voor wat extra context bij de meer technische stukken. Schrijf je hieronder in:

Mailfrequentie = 1x per maand. Je privacy wordt serieus genomen: de mailinglijst bestaat alleen op onze servers.