4 ms·
Why I wouldn't use Rails for a new company
- conanbatt 11y agoI remember finding out about different, smaller frameworks to rails back in 2011, and finding bliss in something not as sluggish and cumbersome like rails. The key thing for me was that using something else let me learn a lot about the request cycle while Rails seemed to try to abstract everything away. I became a better programmer by leaving Rails.
- lnlyplnt 11y agowow that graph at the end. wonder if node is in the midst of a "language bubble".
- gdeglin 11y agoCould any NodeJS web developers chime in on how suitable Node is for building larger sites? My understanding has been that Node web dev frameworks are still difficult to use for larger projects. Perhaps this has changed in the last couple of years? On an unrelated note, Google search trend charts always struck me as poor tools to judge popularity of technologies. For instance, here is a chart that shows "javascript" search volume dropping from 94 in 2004 to 24 today: https://www.google.com/trends/explore#q=javascript https://www.google.com/trends/explore#q=javascript
- Finbarr 11y agoThere's another potential player in Laravel (PHP framework with similarities to Rails, with dependency injection), which has grown larger than NodeJS in a shorter space of time (based on Google trends).
- mastermojo 11y agoI played with ruby and rails briefly, and then decided it was not for me. It felt a bit archaic and it seems like 5-10 years ago it was the best option by far for a web framework, but today things like node and django have caught up. I went with django because I like (and am better at) python. For a new company, pick a scripting language you are most comfortable with (if it's php, pick your next best language). Then pick the most active framework from that pool. You can never get to the end of a rails vs whatever debate so just go ahead and pick a framework you will enjoy working with.
- mrkurt 11y ago"Future proofing" by picking what people may want to use in 3 years instead of using what's most productive right now seems like a serious case of premature-optimization-itis. Most projects built today won't exist in 3 years.
- dankohn1 11y agoI chose to use Node/Express at my last startup and Ruby on Rails at my current one. Both are great platforms with fantastic communities behind them. For example, there is an amazing amount of Stack Overflow answers and folks watching for new questions. It's important to note that Express, the most popular Node framework, is a clone of Ruby's Sinatra, not of Rails. That's a great back-end when your front-end is iOS or React and you have a relatively simple data model. But it's not as strong a solution if you need to do server-rendered pages (which we need to support IE8). The bigger issue is that Rails is just a much more mature and full-featured framework than Express or Sails.js (which is designed to be Rails for Node). From migrations to validations to strong parameters to many other areas, Rails just offers a ton of back-end functionality that is not as mature on Node frameworks. The big question is how much back-end business logic needs to be implemented. I haven't run into any issues with Ruby's server performance. AWS instances are easy to spin up, and any Ruby compute time is almost certainly going to be overwhelmed by network and database access. The performance we're focused on is developer productivity, and I think Ruby retains an advantage there over Javascript (though obviously we use both). If I were trying to support millions of simultaneous web socket connections, I would almost certainly go with Node (or maybe Go).