Solutions

Industry solutions

Services

Business needs

  • Systems integration
  • Strategy
  • GDPR Compliance
  • ADA Compliance (accessibility)
  • Infrastructure management

Products

Technologies

  • Python
  • Django CMS
  • Drupal
  • Angular
  • Joomla
  • Wordpress
  • SasS
  • Bootstrap
  • JS
  • HTML5
  • CSS3
  • JQuery
  • Mysql

The History and Impact of Node.js

It is often taken for granted the speed and smoothness with which the web is delivered to us these days.  For many users, the days in which web pages took sometimes minutes to load are faded memories.  There are a number of innovations that have allowed computers and web designers to keep up with the ever-expanding desires that modern users log on with.  One of the most impactful of such innovations is Node.js.  For many, Node.js is utterly invisible, but almost everyone has had their enjoyable web browsing session enabled by Node.js at some point or another.


What is Node.js anyway?

Node.js is a run-time environment for JavaScript that facilitates a server-side solution to JavaScript code execution instead of browser-based (client-side) solutions.  In more simple terms, Node.js makes it possible for websites to run much smoother across all browsers and devices since the JavaScript code is being handled by the hosting server.

Node has helped significantly improve the user experience of websites and web apps that require significant numbers of inputs and outputs.  Websites and apps such as streaming services, games, and chat services have been greatly empowered by Node’s impressive asynchronous I/O capabilities.  Asynchronous I/O refers to a framework’s ability to continue to process certain functions even if there are inputs and outputs missing at certain points along the function’s execution.  This type of I/O handling allows for programs and websites that require a great amount of user interaction (like a chat app for which user interaction is almost all of the app’s purpose.)

Node.js is structured around “event-driven architecture” which is a technique of designing software that prioritizes creation, identification, and interaction with events.  Events are significant changes in the state of a function or program.  For example, a task within a program going from “incomplete” to “complete” could be considered an event.


Who Created Node.js and How Is It Managed Now?

Node was created by Ryan Dahl in 2009.  It has since undergone numerous build variations and has been adopted by a great number of Fortune 500 tech companies including Netflix and Paypal.  Original versions of Node only worked on OSX and Linux systems, and Windows did not receive support until 2011.  Previous to Node’s creation, other server-side JavaScript run-time environments suffered from inefficiencies that either slowed down processes significantly or overloaded clients in order to dampen the effects of synchronous I/O.

Originally, Dahl managed maintenance and development alone but was shortly afterward sponsored by cloud infrastructure company Joyent.  Node has always been an open-source project, but the influence of Joyent eventually led to a split in the community.  Io.js was a fork of Node.js created in late 2014 whose creator, Fedor Indutny, hoped to take in a different direction.

Shortly after this split, however, discussions began between the Node and io communities resulting in a merger and the creation of the neutral “Node.js Foundation.”  To this day, the Node.js Foundation manages development and maintenance and protects its place in the open-source community.  Io.js is no longer being updated and has fully integrated back into Node.

Internally, Node.js Foundation is, in regards to the future designs of the Node framework, democratically run by a group known as the Technical Steering Committee.  The TSC has limitations for membership that prevent a single company from taking full control of the leadership but otherwise are allowed to add or remove members by committee votes.  The TSC follows a model of consensus-seeking that ensures that all objections are voiced and heard.  A vast majority of the Foundation’s function is under the jurisdiction of the TSC.

The Foundation itself does have a board of directors which is comprised of representatives of corporate sponsors, an elected TSC member, and a representative of individual members of the Foundation.  The current chair, Danese Cooper, is a Distinguished Member of Technical Staff for the open source department of Paypal, and the vice-chair is Scott Hammond, CEO of Joyent.  Given the past community disagreements, corporate involvement has been tempered by the TSC.

 

What has Node Enabled on the Web?

Node’s largest impact has been, as explored in short above, in companies and communities that are running programs requiring particularly high numbers of I/O operations.  Netflix, Paypal, LinkedIn, and GoDaddy are a few companies that have adopted Node.  Node’s 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.

Interested in exploring Node.js adoption?  Our experts can help you decide if adopting Node.js is the right path for your website or web app.  Our staff is devoted to expertise and innovative thinking.  Come visit us today at www.nixa.ca!


 

At Nixa, we are passionate about design and new technologies. We would be glad to share our passion with you.

Contact us
Nixa logo digital people