Is Ruby on Rails Dead?
If you've been a Rails developer for at least a few years, you're definitely tired of hearing, "Is Ruby on Rails dead?"
Long-time Rails engineers fully understand that Rails is not dead and is nowhere close to being dead.
There are still massive tech companies like Airbnb, Github, Shopify, Zendesk, etc. that are thriving with Ruby on Rails.
So we know that Rails isn't dead, but is it dying?
This post is intended to give a very brief history of how we came to where we are today and a perspective on what you as a Rails developer can do moving forward.
"Ruby on Rails doesn't scale"
Around 2008, Twitter announced that they are moving away from Ruby on Rails. I won't be getting into the technical details as that would require its own post, but ultimately there were issues with the nature of Ruby as a language that did not work well for Twitter's specific use cases.
99% of all applications in the world do not have the level of traffic that Twitter has, yet many people in the industry saw this as a sign that Rails is not a long-term solution.
Furthermore, people also came to an incorrect conclusion that Ruby on Rails doesn't scale period. Rails definitely can scale. You can find evidence of that from all the massive tech companies still using RoR.
The whole Twitter drama was a long time ago and we are now in 2021, so why does the argument still exist?
It's no longer "hot new tech"
Ruby on Rails has honestly gotten boring. This is a good thing.
The framework has grown past its infancy and is solidifying itself as a mature and robust tool. It's been a long time since its release as an open-source project in 2004 and is no longer the shiny new toy.
The fact that it's not the shiny new toy can lead to a perception that it is dying. When searching on google or youtube, you won't find as much activity as you would with something like React or GraphQL.
The world of Javascript is the new frontier and a bit of a wild west. It wasn't too long ago when Redux was the accepted way of doing state management. Now we are moving away from that and using tools like Apollo and MobX. And far as I can tell we are not quite at our final destination.
Ruby on Rails on the other hand is mature, we won't suddenly be switching the fundamentals of Rails. It's a beautiful product that has constantly evolved with the times and continues to be an excellent tool for web applications.
All great parts of Ruby on Rails are still here!
We as humans have a natural tendency to focus on negative things. Often to the point that we fail to see all the good parts.
Allow me to highlight some of my favorite aspects of Ruby and Rails.
Ruby is optimized for "Developer Happiness"
There is no objective way to measure happiness, but you as a Ruby engineer know that working with Ruby is very pleasurable.
The syntax is beautiful and elegant. You don't need 8 different words just to define a function.
Convention over Configuration
No need to reinvent the wheel.
By simply doing things the Rails way, you get so many things for free!
The wonderful community that truly cares
You can just watch one talk from RubyConf and you will quickly pick up that the community truly cares about the framework and its future.
Most of all they care about you, the Rails developer. They care about making it easy for you to build features with ease. They push forward with evolving the framework to keep up with the times.
I invite you to spend some more time in a different server-side language and framework. You will re-find your appreciation for Ruby and Rails.
You can also revisit the Rails Doctrine here:
Coding bootcamps are not teaching RoR.
Ruby on Rails used to be the language and framework that every coding bootcamp taught. The coding bootcamp boom of the early to mid-2010s coincided with the dominance of Ruby on Rails.
This has quickly faded away and the focus has shifted to Node and React. Part of the shift has to do with the fact that it's easier to teach students 1 language, Javascript, and apply that knowledge to the back-end.
But there's no doubt that the notion that "Ruby on Rails is dead" has had its impact. Just look at this screenshot from Tortuga Coder's website.
Coding Dojo, the school I went to, no longer teaches Ruby on Rails but now offers Java, Python, Javascript, and C#.
This has contributed to the...
Shortage of Ruby on Rails developers
Companies are still using Ruby on Rails. As a business, you can't just switch languages or frameworks. It would be incredibly expensive to do so and there's no way you could convince most people that this is a good idea.
You also can't always keep hiring people and train them up in Rails. There's massive value in getting a software engineer that already knows Ruby and Rails at a very deep level.
The demand is now sky high for Rails engineers. Now you as a Rails engineer may begin to see higher salaries being offered to you. This is definitely a good thing for you in the short term.
However new companies may see the shortage of Rails engineers and decide that moving forward with Node would be a better decision in the long run.
This is really the thing that I'm most afraid of.
This whole "Ruby on Rails is dead" could become a self-fulfilling prophecy.
What we can do
You most likely are a person that loves working with Ruby and Rails and will want to for the foreseeable future. Yet you still want to make sure you're making the best decisions for your career.
I believe we can all do our part to promote Rails and defend it from its naysayers.
Here are some things that I am doing (and you can too!):
Contribute to Rails
You can do your part for Rails by helping it continue to evolve. Your contribution doesn't have to be big. It can actually be something really small like what I did here.
Be more active in the Ruby community
When I was learning how to code, it was awesome attending all the Ruby events. It was great to see all these smart people giving talks as well as helping each other learn to code.
Now that restrictions are getting lifted, I think it's important that we re-connect with our fellow Rubyists and nurture the growth of Junior Ruby Devs.
Get and stay informed
We can give our best effort, but Ruby on Rails could very well become obsolete in the future.
If that becomes the case, you as a developer ultimately need to make the best decision for yourself.
As of now, we understand that Rails is a robust and proven solution for building wonderful web applications. However, time has shown us that new technologies can quickly change the landscape of software.
But that time is not now.
Today, I truly believe that Ruby on Rails is still the best solution for building web applications. Let's do our part to keep it that way!