Node.JS Vs. Ruby on Rails
Node.JS or Ruby? This blog will help you decide the right one for your need.
March 23, 2016
The hottest languages for startups are node.js and ruby. There is a strong fan following for both of these.
It is a complex choice to choose one of these for your startup. Although Node.JS is a language and Ruby on Rails is a language and framework with it, I will compare these two as if you are comparing the entire node.js stack with ruby on rails.
Node.JS is the hottest new thing with startups. It is an event-driven, non-blocking approach, which makes lighter, scalable network applications. Node.JS can handle the large network traffic and work on a single thread with call back. You can read more about the event-driven approach here since it’s an entire topic in itself.
Ruby on Rails is the web application framework built on the Ruby language. Rails have a vibrant community and a large progress era. Rails are a cross-platform, cross-server framework which makes it dynamic. MVC pattern makes it time efficient. Let’s compare the two a bit more in detail now.
First, let’s look at who is using node.js and who is using rails from the big and famous startups these days.
Pros of Node.JS
- High market demand and very popular in startups at this time.
- Same language on the client and server side.
- Easy to learn with fewer dependencies
- It can handle concurrent requests with minimal overhead because of the way it works. Our tests showed that it can handle 2x-3x more connections on the same server as other languages.
- Easy to monitor, deploy and support.
- Page load is faster across the site. (Our tests showed that websites are usually 2x-3x faster with Node. Check out beakun.com, it was recreated by us from scratch with node.js and the load time is less than 2 seconds for each page. Previously, it was 12-18 seconds per page).
Cons of Node.JS
- Node is not suitable for processor-intensive tasks.
- Any CPU-intensive code makes it non-scalable.
Because it’s new and very hot, there are fewer developers in the market for node.js at the time of writing this article.
Pros of Ruby on Rails (ROR)
- User-friendly tool for generating web content.
- It is a flexible IDE-friendly framework.
- It will be easily portable to any platform.
- Easy functions and manipulations.
- It is consistent in structure and methodology.
- Rail has a vibrant community.
Cons of Ruby on Rails
- Best programming skills are required so top-notch programmers with high pay are required.
- Trickier if making large projects.
- Documentation is only for popular frameworks
- More computing resources are required.
- Can’t bear a large number of requests on the server.
Why Startups are adopting Node.JS
Many startups are adopting Node.js mainly because
- It has an efficient server load time.
- The same language for backend and frontend code
- fast performance because of the way it works with the event model
- quick boot time.
- It is designed for message passing between applications instead of processing large web pages.
Why Startups Shift from Ruby on Rails
Many projects are now turning their architectures from RoR to other languages like Node. Js or Perl. Reasons for shifting from the monolithic frameworks to new developing languages are
- Major problem of Rails is Ruby, it has a slow server load time as compared to Node. JS.
- Documentation and support are only available for the popular frameworks so the new features are hard to include.
- Rails takes a significant amount of time the during boot process.
- It is suitable for most of the front-end code, but when lines of code grow, it doesn’t work efficiently
- Very few companies are sponsoring Rails now, that’s why its development is going slow.
Startups that Shifted from Ruby on Rails
- Groupon to Node.JS
- Scribd to Node.JS
- Yammer to Node.JS
- Twitter to Scala (J2EE)
Groupon said that Rail was a good choice for building their website as a startup but we cannot rely on the traffic of the huge request on RoR architecture. Groupon found it difficult to handle large lines of code. They decided to rebuild their architecture to Node. Now Groupon is proud to be a part of the Node.JS community.
Yammer by Microsoft
Yammer is a leading enterprise social network for businesses to get work done smarter and faster. Yammer was developed by the ex-CEO of PayPal, they build their startup on Ruby on Rails. In 2012 Microsoft acquired Yammer and then Microsoft changed its architecture to Node. JS.
Twitter shifted RoR to the multi-paradigm architectural language Scala, which is based on J2EE Java Servlets. As Twitter grew, Ruby On Rails (RoR) did not scale up well on the server side for a large number of requests, and Twitter decided to move from ROR to scale.
Conclusion – Node.JS vs Ruby On Rails