Content posted here with the permission of the author PJ Hagerty, who is Developer, writer, speaker, musician, and Developer Advocate. He is known to travel the world speaking about programming and the way people think and interact.
You and your partners have come up with a brilliant idea. You are ready to disrupt an industry with the next killer app. It’s all vaporware right now, but you know, if you can get to the market quickly, this will change the game altogether.
So what language do you choose to build your software in?
For many startups, that answer continues to be Ruby on Rails. Ruby is a flexible programming language built to keep programmers happy. Rails is the framework that helps Ruby to come alive for application development. The old adage is Ruby on Rails gets you 90% of the way in 10% of the time.
So let’s take a look at some features of Ruby and Rails that make it the continued choice of software developers and startups the world over.
Great for APIs
Modern applications are heavily reliant on APIs. Whether it’s something like OAuth to build a sturdy and safe authentication system, or bringing in data from other applications, chances are you will need to interact regularly with APIs from other applications. Additionally, you’ll likely want to export your own API and Rails is set up to do help with that.
While some people find other answers work well with Ruby when it comes to API consumption and service, like Sinatra, a more robust application calls for a more robust solution. Rails provides that solution with a middleware layer that provides security, proper parsing of ingested APIs, and a testing mode that brings you a full application experience in the API layer.
For more information, check out the RoR docs on APIs.
Built for Testing
Testing has been a key component of the Ruby and Rails ecosystem pretty much since Bryan Liles delivered a (NSFW) talk about how important testing was to what we do as developers back in 2008. As the Rails platform evolved, it became more and more an ingrained portion of what we do.
With the advent of Rails 6, testing has taken an even more important seat. Things like Parallel Tests that works alongside ActiveSupport:TestCase, andAction Cable Testing, which continues to build on the new addition from Rails 5, mean we are able to test further and deeper into our applications, ensuring things are solid and stable when we release it to the world.
Solid and Mature
One of the first things people would say as Ruby on Rails came to see more interest about 10 or 15 years ago, was that it wasn’t stable, it wasn’t mature – you still occasionally hear the refrain, “Rails Doesn’t Scale”. It really wasn’t true then, but it’s really not true at all now.
As pointed out in this article, most languages don’t scale when written poorly. This goes hand in hand with other ideas – like a secure application only works if you pay attention to security. Scaling is dependent on what you are trying to do.
Ruby on Rails is built for teams to build complex microservices or monolithic applications, whatever you are looking to do. And it works quickly, with scaffolding and tools built in to the system.
It’s Open Source
One of the key components that make Ruby and Rails great is the facts that it’s Open Source. One of the benefits of building a startup with an Open Source language is the community. With Closed Source, you are dependent on a company or organization to make decisions. Those decisions are likely not what’s best for you, the application world or the people using it, but what’s best for them. Ruby and Rails does not have the closed source issue.
This means you are part of the community and part of the ecosystem. When you need to make changes or need support, there are multitudes of strangers, from the newest rubyist to the core team, out there ready to help directly or by building more things into the ecosystem
It still makes us happy
When Ruby was conceived in 1993, Yukihiro “Matz” Matsumoto, the idea was to create a language that took the best of other languages, but left behind the things that made developers not enjoy writing code.
We at Josh Software know that Ruby still makes us happy. When we build applications for startups or work with legacy applications, we know we will enjoy building these things because Ruby and Rails are tools built for stable, mature, enjoyable applications.
As years have passed, Ruby on Rails has continued to impress developers and entrepreneurs from Silicon Valley to Ruby’s home in Tokyo and everywhere in between.