JavaScript has forever changed the way that websites are built. Even in it’s early days, it was being used to validate forms before data was submitted to servers. In the last 5 to 10 years, we no longer needed to do full page refreshes because of JavaScript which made the web feel faster and more responsive.
JavaScript also had a huge role in changing the way we build APIs and exchange data. XML is pretty much gone in exchange for JavaScript Object Notation (JSON).
What is Node?
Node is a JavaScript runtime environment – that means it is designed to allow JavaScript to execute without a browser. Node is an open source and multi-platform environment built on top of the Chrome V8 Engine.
Node.js uses an event-driven architecture – everything can be handled fairly well on a single thread which means servers don’t need to handle the overhead of a thread for every connected client.
Node.js has become regularly popular with large websites and enterprises. LinkedIn, eBay, PayPal, and even Capital One are all using it for at least something. Node has received substantial help from Google (Chrome), Microsoft, and of course Joyent.
5 Reasons to Use NodeJS
I’ve been thinking about Node and why I like using it for quite a while. In 2013 or so, I was really skeptical when I first heard about it. I believe as a platform and environment it’s really grown and matured since then.
If you are thinking about becoming a developer or learning to become a developer, I recommend reading my blog post called Why JavaScript.
Node.js is Very Performant
I think it’s fair to say tht Node.js should continue to get faster as there are multiple companies competing to writer faster JavaScript implementations. Node has a very good non-blocking I/O model which makes it very good for handling a lot of requests.
For applications that aren’t CPU bound it and will have a lot of waiting, Node.js an really handle a lot of requests with very little requests.
Less Development Work
I believe that by using Node.js there’s a great potential for a lot less development work because of the incredible number of libraries and frameworks that are available. Instead of writing utility classes or spending hours or days building generic libraries that can be reused – developers can spend time on business rules or writing business specific logic.
Absolutely No Licensing Costs
Node.js is a completely free server framework that works off of the Chrome V8 engine. Node.js is completely open-source and cross platform. Runnig it on Linux, Mac OS, and Windows is pretty easy. Environments like .NET in the past have required Windows Servers, or PHP which pretty much required Linux.
Relatively Easy to Use
Almost all software developers already have experience with JavaScript, on the server it’s a little bit different than the browser but the basics still apply.
Lots of Developers
JavaScript is pretty much ubiquitous – this means it runs basically everywhere. It runs on desktops (Electron, etc), on phones (React Native, Cordova, PhoneGap, etc) and on the server as Node.js. This means there’s a lot of software developers that are honing skills in the language which means in the future it should be easier to find maintenance programmers.
Runs on All Cloud Providers
Pretty much all cloud providers are providing support for Node.js in their serverless environments or on their virtualized servers.