Node.js is a run time environment which supports writing server side JavaScript programs. It also offers a rich library of different modules in JavaScript, which reduce the difficulties of developing high scalable web application using Node.JS
Node.js is open source, completely free.It uses JavaScript - a language known to millions of developers worldwide - thus giving it a much lower learning curve even for complete beginners. The main idea of Node.js: use non-blocking, event-driven I/O to remain lightweight and efficient in the face of data-intensive real-time applications that run across distributed devices
• Understand the non-blocking nature of Node.js
• Write asynchronous code with callbacks and streams
• Learn how to modular code using NPM and require()
• Understand and take advantage of the built-in apis for building scaleable few applications
• Learn how to build web applications using Express.js
• Using Jade view engine for building views
• Understand how to handle authentication and authorization
• Learn how to build real-time applications using WebSockets and socket.io