6 ms·
I have another way to look at the same thing. Ruby/Rails as a development language/framework is great and no doubts about it. I used it for many years. Would I
by rockyj 5y ago
I have another way to look at the same thing. Ruby/Rails as a development language/framework is great and no doubts about it. I used it for many years. Would I recommend it for any new project / startup now (other than a simple CRUD with a handful of users) - No.
Shopify or Stripe are huge companies with massive codebases in Ruby, perhaps so complex that they are better off making investments in Ruby performance rather than re-writing their stack.
In fact, the very fact that these companies have to spend so much time trying to make Ruby work well tells me that something is not right.
For a startup which has limited resources why should I wait for 10% improvements in Ruby performance every 6 months, when I can already get on the rocket-ship of performance that is - Node.js or JVM or even Elixir. Kotlin for example even writes a bit like Ruby, has some decent frameworks available and will give me magnitudes of performance on top.
- dyeje 5y agoYou choose Rails because you can build extremely fast with it (for a variety of reasons). The number one risk to a startup is not finding product market fit. Therefore, building fast is paramount. It doesn't matter how much load your product can handle if you never get the load in the first place. I would absolutely recommend Rails for most startups whose central product is a web application.
- rockyj 5y agoI tend to disagree, this was true few years ago but there are now tons of frameworks / boiler-plates which also enable devs to launch fast and stay fast e.g Phoenix Yes, Rails is very mature but the difference is not that huge anymore.
- ksec 5y ago> Phoenix Is Phoenix really that close to Rails in terms of ecosystem system maturity? I haven't done any real world work with Phoenix. So I couldn't judge. More often that not most people suggest Y is close to X. And the difference is not that much when Y is already 80% to X. Reality is that 20% is a huge difference. That takes as much time to reach the previous 80%. And this could be used across many different subject / domain. It is a common error in comparison. The only thing that came close or even exceed Rails ecosystem is actually another dead or unpopular language. PHP with Laravel.
- weatherlight 5y agoYes. Because Rails decided what the "Golden path" was 10 years ago, but pales when having to do real-time anything, concurrent anything, parallel anything, etc. also, scaling tends to be expensive. I will admit that rails ecosystem is much larger and often you have multiple libraries that do the same thing and you can pick and choose and those gems/libraries have been around for a while. Phoenix you can spin up a SaaS platform with realtime messaging and event handling the way you could spin up a blog with rails 10 years ago. https://fullstackphoenix.com/boilerplates https://fullstackphoenix.com/boilerplates
- Zababa 5y ago> I would absolutely recommend Rails for most startups whose central product is a web application. I think that depends on the product. I'm working on your usual "unbundling Excel" product, and I don't see what Rails has to offer over Django or Laravel. Maybe Rails has a better integration for "you don't need to write JS" stuff like Hotwire? But other than that, I don't think Rails is still the silver bullet that it once was.
- dyeje 5y agoDjango and Laravel are both fine options, yes. Depends on the talent and network you already have really. The point is use an MVC framework with a mature ecosystem.
- tessierashpool 5y ago> In fact, the very fact that these companies have to spend so much time trying to make Ruby work well tells me that something is not right. Did you just say that investing in language performance is a red flag?
- joelbluminator 5y agoThe bottom line is it doesnt matter in 95% of cases for the average SAAS company whether you choose to build with Node or Python or Kotlin or Ruby. They all work and modern clouds make it pretty easy to scale them. So it comes down to personal tastes. Some people will never want to use Node, and some feel the same about Ruby.