Node.js

I don’t think many people really appreciate the speed and smoothness with which the web is delivered to them these days. It was not always like this, there were days when web pages use to take sometimes minutes to load. There are a number of innovations that have enabled computers and web developers to keep up with the ever-expanding desires that modern users log on with. Node.js is one such innovation and it wouldn’t be an exaggeration to say that it’s one of the most impactful one. Although invisible to many, I can definitely say that at some point or another everyone has had their enjoyable web browsing session enabled by Node.js

What is it anyway?

Node.js is an asynchronous event-driven JavaScript runtime, which facilitates a server-side solution to JavaScript code execution instead of browser-based (client-side) solutions. To put it simply, Node.js enables sites to run more smoothly across all browsers and devices since the hosting server now handles the JavaScript. 

The user experience of web applications that need a large number of inputs and outputs has been greatly improved thanks to Node. Streaming services, chat services, and so on, have been significantly empowered by the excellent asynchronous I/O capabilities (it refers to a framework’s ability to continue to process certain functions even if there are inputs and outputs missing at certain points along with the function’s execution) of Node.  

It’s structured around “event-driven architecture,” which is a software architecture paradigm promoting the creation, detection, consumption of, and reaction to events. Events are significant changes in the state of a function or program.  For e.g., when a consumer purchases an automobile, the automobile’s state changes from “for sale” to “sold”.

Who created it and how is it Managed Now?

Node has a very interesting history. It was around ’09 when Ryan Dahl created it, since then, it has undergone many build variations and has been adopted by a great number of users including Netflix, Airbnb, Twitter, PayPal, Walmart, Yahoo! and so on. The initial release supported only Linux and Mac OS X, it wasn’t until ’11, when Windows received support. Before Node, other server-side JavaScript run-time environments lacked efficiency; they’d either slow down processes considerably or overloaded clients in order to dampen the effects of synchronous I/O.

Initially, Node’s development and maintenance were led by Dahl alone and later sponsored by cloud infrastructure company Joyent. It was an open-source project from the start, but the influence of Joyent eventually led to a breakup in the community. Io.js was a fork of Node.js started in December ’14 whose creator, Fedor Indutny, hoped to take in a different direction.

But, shortly after this breakup, discussions began between the two communities resulting in a merger and the creation of the neutral “Node.js Foundation,” who now manages the development and maintenance and protects its place in the open-source community. There have been no further releases of io.js and it has been fully integrated back into Node.

Internally, Node.js Foundation was divided into two entities with equal standing: A Business Board (responsible for business, marketing and legal direction) & and a Technical Steering Committee (the technical governing body of the Node.js Foundation responsible for code development, testing, integration, and working groups and projects). The Technical Steering Committee has limitations for membership that prevent a single company from taking full control of the leadership although members can be added or removed through committee votes. The TSC follows a very democratic model that ensures that all objections are voiced and heard.

In early ’19, the Node.js Foundation and the JS Foundation voted to merge and become the OpenJS Foundation which (according to Node.js Foundation website) will provide a single, neutral focal point for the project communities, and will build upon the momentum of Node.js and the culture of incubation established by the JS Foundation.

What has it Enabled on the Web?

As mentioned above, Node has largely impacted businesses and communities that are running programs requiring particularly high numbers of I/O operations. I’ll mention the list of the companies that have adopted Node again here: Netflix, Airbnb, Twitter, PayPal, Walmart, Yahoo! and so on. Its focus on reducing latency and handling HTTP with primacy has made it incredibly popular for improving site performance and scalability. With JavaScript’s almost ubiquitous presence on the web, Node.js brought a lot to the table with regard to user experience improvement and overall efficiency of websites and apps.

Leave a Comment


The reCAPTCHA verification period has expired. Please reload the page.