In the world wide web of programming languages, frameworks and libraries, there are always new and shiny things which grab our attention. There are a thousand ways to build an API these days, including serverless and/or JamStack pseudo-API options as well. So why use Rails in 2020? Let me tell you why I do.
Rails has maintained its edge as a world-class application framework with savvy conventions that have been built on many years of experience from folks working to solve real-world problems from tiny startups to massive enterprise applications. Rails 6 was released in August 2019 and, to my delight, is full of incremental improvements without changing the fundamentals. Most of my Rails education occurred during the Rails 2 and Rails 3 years. I was able to quickly come up to speed and be productive in Rails 6 using many of the same conventions I learned years ago.
I don't want to re-invent the wheel for the 100th time in Node.js. And I don't want to spend my time configuring an arsenel of byzantine online services and microservices. I want to spend my time writing Ruby. I want to be able to run it end-to-end on my old linux laptop, and deploy it to my own server without relying on external services or paying a monthly bill. And when Rails 7 or 8 or 9 comes out, I want to be able to easily stay up to date, and stay stable and keep things running without having to learn a bunch of new conventions.
To sum up: When I want to get things done quickly, and build something I can rely on for years, I'm going to reach for Rails, at least for the API side of things.
That's out of the way. Let's bulid an API.