Node vs Rails - The Stupid Comparison

I was interested in finding benchmark results for Node vs Ruby. The article on Medium titled “Node vs Rails Comparison 2017, which is best for web development?” caught my eye. I opened the article or one reason. I wanted find out who the blithering idiot who compared a language to a framework!

What is wrong

As I said, Rails is a web development framework built using the Ruby language. Node js is a language. It is scary that morons who don’t know the difference between a language and a framework are in the software business. Its like comparing the Sinhalese language to Hamlet by Shakespeare. One is a language, the other is a product of another language.

Ruby on Rails

Before we go to Rails, lets talk about Ruby. Ruby is a beautiful language. Even a user with no coding experience might understand well written Ruby. This is because the language uses minimal clutter to look important. Ruby does more with little code.

Then comes Ruby on Rails. Rails is a web application framework. It is written using Ruby. What it specializes is building complicated websites, business applications etc with minimal effort.

Node JS

Its basically JavaScript (that powers the browser) made to run on computers (servers). Node is capable of asynchronous I/O where Ruby doesn’t. This comes handy when your app uses external services extensively. In such cases you will save a lot of saving in server side.

Node is a language. The only thing it can be compared with is Ruby. Period!

Node has its own set of frameworks like Rails. But that is not what the idiots are doing. They are comparing Node to Rails.

Clients should not choose platforms

For starters, leave platform selection to an engineer. Think you are going to make a house. You say your requirements, not in to the technological level.

I need a house with 4 bedrooms, attached toilets and at least 3000sqft in my 10p land. The house needs to be built using straw.

I guess you get my point! Yes, that is how some of you sound!

How a platform is decided

Any application can be built using any language / platform. Some platforms are efficient in some scenarios but not so in others. How do I know? I have been in the business of application development for nearly 10 years. I have worked on PHP, Python, Java, C#, VB, Scala, ColdFusion in the past. Ruby and Node are my preferred languages at present. I have built multiple SaaS applications, e-commerce stores, business applications, CRMs, ERPs and membership sites.

Deciding a platform is a engineering as well as financial/management problem.

Todays applications are so complex, at one point no single platform can do an optimal job in all its requirements. That is why lately application development hsa ventured in to micro services. Simply say, we build applications as small components. For example it will have a web app built using Ruby Sinatra, a search engine powered by elastic and a chat application powered by Node. They will be woven to gather using APIs to give the feeling of one large seamless application.

Summary

Software development is complicated business. Any idiot can build a 5 page website. But when it comes to building complicated applications, you need a good foundation. It will save you a ton of money in the long term and a lot of embarrassment.

I will be glad to help, otherwise you can find some really good developers in UpWork.