As it’s website says node.js is :

Node.js is a platform built on Chrome’s JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.

Although it says that it is meant to build network applications. But It can also be tweaked to make stand-alone desktop applications. But making stand-alone applications is not something Ryan Dahl had in mind when he started making node.js; it is built specifically for network applications.

node.js made it’s first public appearance in 2009, and since then it has gained tremendous popularity. And that too for valid reasons. It deserves the popularity it is getting. node.js works on the event loop model. This is the way JavaScript works and it has proven that object oriented environment is not necessarily the best thing out there. Not all scenarios can benefit from the object oriented approach and sometimes the event loop, callback, and Non Blocking I/O is the best thing. node.js makes possible;programming on the server side using JavaScript. It utilizes the V8 JavaScript engine made by Google used in Google Chrome. node.js provides you a way to re-use your code on the server-side and the client-side.

node.js has gained so much popularity that there are in-numerous module made by the great developer community out there. And YES it has a huge developer community. Since last two years there has been worldwide conferences dedicated to the development and awareness of node.js. many silicon valley companies are already using node.js.

I am learning node.js using the book ‘Node: Up and Running‘. It’s a good book, a little outdated since the Express module mentioned in the book is based on Express module 2.x and the current module is 3.x. This contributes to an important change as ‘layout’ is no more supported in 3.x, Because of this it became impossible for me to learn from the book. I spent a whole day learning about Template Engine, which are the best ones, how to use them. How to use them in node.js. Which ones support layout which don’t, which one is feature rich while which one is simpler to use. I learnt that Jade and EJS (Embedded JavaScript) are at par with each other with EJS being simpler while Jade having more features. However during my crusade I found out that Express 3.x do not supports layout and partial, instead it has added an include feature <% include whatever %>, and just like that you can include the partials and this can compensate for layout by adding your headers and footers as include in top and bottom causing you to do a little more work but having a little simpler approach too.

node.js is awesome with all it’s features and what one can do with it.

Please put in your words.

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s