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?
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?
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?