It’s 2020, and it’s high time for us at JetRuby to once again scrutinise everything we believe in, and answer the million (ish)-dollar question:
“Is Ruby/Rails finally deader than a coffin nail in 2020?”
The rumors of Ruby’s nascent (inevitable, immutable, irreversible) demise have been whispered about for years inside developer locker rooms, and yet the language and Rails, the framework, are still around, powering hundreds of thousands of websites. (Sigh)Do I even need to mention yet again that Github, AirBnB, Hulu at al continue using RoR? To me, that’s a sign of doing pretty darn good, arguably, better than most programming languages, since not all languages/tools are lucky enough to reach these peaks of prominence/awesomeness and credibility.
So perhaps it’s time to move away from the morbid, sensationalist language of technological death and discuss Ruby on Rails in more reasonable and meaningful terms.
So sit back. Pour yourself a mason jar of peppermint tea and Let’s just sensibly talk about what we really mean:
What is the state of Ruby on Rails at the dawn of 2020?
The TIOBE index (the index that uses search engine results) places Ruby in the top 20 technologies. In a Stack overflow 2019 survey, Ruby is in the top 10 most popular languages. And yes, none of these rankings hysterically scream “popularity” like a 6th grade girl at a Jonas Brothers concern, but I would argue, that’s a good thing.
At the end of the day, what users care about is a useful, fast, intuitive, and secure app. The last thing they care about is: what’s under the hood.
Apps being useful — that has very little relation to the technology stack used, everything else I mentioned can definitely be achieved using Ruby/Rails. It just so happens that due to the unique nature of Ruby, we’re able to write clean code — faster, which is a great thing for startups and businesses that run on lean innovation.
Let’s not forget what makes Ruby great
Ruby teaches you some great coding habits: such as TDD approach, MVC pattern, separate databases, DRY code, and restful routes, which in the end translates to clean code that needs less testing. Ruby is created with developers in mind, to make a developer happy. Happy developers make better apps: making users happy as well. Why wouldn’t you want your users to be happy? Ruby/Rails support community is vast and reliable, which means it’s a viable technology and it’s not going away anytime soon.
It might not be the hot new technology, but it’s a stable mature technology, which is a lot more valuable for a business than just being cool.
Ruby is not a magic solution to all your problems, it’s simply a tool. And if you’re a startup, trying to launch your product on time and on budget — then it’s a totally awesome tool for you. And here’s where “no news is good news”. You want your next MVP built with stable proven technology and not a fad that might disappear tomorrow and you’ll be scrambling to find the last available developer to support you.
Is it the only technology you will ever need?
Okay, well, you might choose to do what Twitter did: launch on Ruby, then move on to a new platform when you have the funds to do so. OR — you can do what AirBnB and countless other startups did and stay with Ruby. It’s up to you, but the truth is: if you’re making a web or enterprise app, with Ruby you’ll write better quality code, spend less time testing and launch your product before your competitors do, so you can start getting revenue and think about where to take your product next.
Also, just like with any tool, it’s not necessarily how the tool is used, but WHO uses it. Over the years we’ve cultivated real Ruby pros with a set of know-hows and best practices that can tackle anything you throw at them like a pro-bowl linebacker into a running back at 45 MPH. And guess what, here at Jetruby, we’re an intellectually curious bunch — of course we test out all the other alternatives.
We’re constantly experimenting with new technologies and tools. Why? Because we have extremely patient girlfriends, and it’s fun to try something new: some tools we make a part of our tool belt, some we discard, some — we put on the back burner for further testing in the future. To back up my point, here’s a blogpost on our experience with Node.js, React, Redux, GraphQL and Webpack.
And we’ve recently invested in Elixir, stay tuned for articles on that whole thing…
So — dead or not, that’s not a relevant question when it comes to programming languages. I mean, you can still find someone who knows Fortran or COBOL. If you want to make sure your product is a success, you should use proven, reliable technology with sufficient support community — and Ruby offers that. At this point, we believe that for most startups who want to launch an MVP fast and within a lean budget — Ruby/Rails is the answer, because it’s robust, scalable and it can be implemented with any JS library, such as React. Having said that, whenever a better alternative appears, i.e. a technology proves itself to be a better, faster, more secure alternative overtime, we’ll be the first to let you know.