Jamie King, July 6, 2017 | 1 min read

What is Node?

If you’ve been researching web development any time over the past few years, it’s likely that you have run across Node.js being mentioned at some point.  But what exactly is Node.js?  Isn’t JavaScript just for your front-end code?  Why should I use it?

 

Node.js is actually an implementation of JavaScript that allows programmers to build complex network applications like web servers, CI/CD tools, and even can be used to power IoT devices.  It was first introduced by Google in 2009 and has gone on to see massive popularity and growth.  There are several unique things about Node that make it a great choice for your next full-stack application:

  • Node is fast!  Since Node handles events in asynchronously, it can work on multiple operations at once.  For example, if you are utilizing multiple databases at the same time, your program won’t freeze up while waiting for a particularly slow data call.  Instead, the program will continue to execute the program and insert the slow data whenever it is ready.

  • Easy to build web servers.  By utilizing libraries like Express and Hapi,  programmers can get a web server up and running in just a couple minutes.  The most basic web server can be created in only 10 lines of JavaScript code!

    var express = require('express')
    var app = express()
    
    app.get('/', function (req, res) {
     res.send('Hello World!')
    })
    
    app.listen(3000, function () {
     console.log('Example app listening on port 3000!')
    })
  • Familiarity.  Everyone who has tried their hand at web development knows at least a little JavaScript.  This makes starting to learn a back-end language like Node easier because you don’t have to learn a whole new language.

  • Community. The best benefit of Node in my opinion is the massive community of Open Source developers out there building new tools and helping teach new techniques for developing in Node.  The rapid growth of this community signals the continued success building your back ends in Node.

 

Hopefully, these benefits are enough to pique your interest in learning about back-end JavaScript.  If so, I have several recommendations of where to learn more.