Avatar of Craig Buchek
Recommends
on
RailsRails

That's a really ambitious project. So you're going to want to move as quickly as possible. That means choosing a software stack that will allow you to move the most quickly. Of the ones you've listed, Ruby (Ruby on Rails, more precisely) will give you that. There are probably other options that would allow you to move even more quickly than Rails, but developers for those more advanced stacks are much more expensive, and hard to find.

Rails can and does scale to millions of users. It's not necessarily easy, but if you're running a successful app, you'll be able to afford people to help you scale out when you reach that point. But if you choose a slower framework (or have bad developers) you won't even reach the point of needing scalability.

READ MORE
2 upvotes·3 comments·333.1K views
Oded Arbel
Oded Arbel
·
April 24th 2020 at 10:31AM

Ruby, as a language, is an excellent choice - its easy to learn and work with, has great OO semantics and is very powerful (not fast, though). Rails is a great set of tools, but I always thought it is too complex and too "magicky" for its own good (it has a high learning curve and requires a lot of know how for a programmer to be effective). There are many alternatives, especially if you only want to do a REST API, that are simpler easier to work with and ... faster. I used and liked Grape and Sinatra. Here is a larger list of Ruby frameworks for REST API developers: https://wpshopmart.com/best-ruby-frameworks/.

BTW, in regards to my advice and missing from the list in the link above, I found Vert.x to be an effective Ruby server framework for REST APIs. See for example here: https://vertx.io/docs/vertx-web/ruby/#_sub_routers

·
Reply
Craig Buchek
Craig Buchek
·
April 24th 2020 at 6:45PM

I certainly wouldn't suggest that someone try to learn Rails while trying to found a startup. But I wouldn't suggest learning ANY framework while founding a startup. It's more about being able to find developers.

In the same vein, while other Ruby frameworks have some advantages, Rails is a common denominator that any Ruby developer already knows. Lord knows I have my issues with Rails, but it's a great way to move quickly to prove out the startup's ideas.

If your Rails app can't scale to 10s of thousands of users, then you've done something drastically wrong, and no framework will be able to fix that. Yes, you'll spend more on servers, but that's easily offset by the speed of delivering new features. (Assuming the idea has enough merit to actually find paying customers.)

·
Reply
Craig Buchek
Craig Buchek
·
April 24th 2020 at 6:46PM

I've heard really good things about Vert.x, but didn't realize it could be used with Ruby now. Thanks for the pointer!

·
Reply