Just a few we’ve encountered over the few months include:
So with all that said, is Node.js the right choice for you?
Node.js is considered a non-blocking, asynchronous I/O platform, as opposed to traditional web-based scripting languages like Python, Ruby, or PHP. Essentially, this means that events, unless otherwise directed, happen in parallel. There’s nothing magical about Javascript or Node.js, other than the simple fact that each request won’t wait around for the previous request to finish unless explicitly told to do so.
The result is, you can have one request processing in the background, or in fact, dozens of requests processing. In traditional scripting languages like Python, each request will get handled sequentially unless you take special measures to handle them asynchronously. And even then, the logistics of rounding up all the asynchronous request responses and wrapping them in a nice, tidy package to return to the user is not trivial, although there are certainly software libraries that attempt to make these traditional scripting languages perform more like Node.js.
That’s a really good question, and to provide an adequate answer, we first look at the application requirements and determine if Node.js is the right solution.
For our clients, we typically start by analyzing their needs, and answering the following questions:
If the client is building a mobile application or an application with very static requirements and huge performance concerns, Node.js makes a lot of sense.
In the Node.js success stories above, all of these companies were leveraging Node.js to either (1) handle huge performance needs, or (2) create very mobile-centric solutions. WalMart Labs was concerned about serving customers during peak periods like Black Friday, while LinkedIn and Groupon were concerned about being able to provide mobile-centric technology to their clients.
They were also rewriting mature portions of their infrastructure with very little feature changes, meaning the requirements were very static and not subject to major changes or pivots in functionality.
In our experience, we have clients who need to build a MVP at the lowest cost possible. They know the product they are building now will be quite a bit different from the product they build two years from now. Their requirements are fairly volatile, and need to be validated with feedback from their customer base, hopefully in the form of a prototype or a MVP.
While we actively embrace Node.js as a solution for many of our clients, we also recognize that Node.js is not for every project. Because of this, we still regularly employ solutions like Python/Django and PHP (Yii, CodeIgniter, WordPress) for many of our projects.
That said, the world of Node.js is constantly evolving, and as Node.js matures, more and more people will leverage its benefits while the negatives become extinct.
Nonetheless, you should look for a technology partner who can really understand your needs, and match your product and vision with a technology that supports your technology needs, budget, and future growth.
We’d love to discuss your needs with you, so feel free to reach out to us for a free consultation.
Client Background O&S Construction & Companies, a commercial construction company based out of Houston, TX…
Someone somewhere who is reading this has an excellent product or business idea, has been…
In an era where technology evolves at an unprecedented pace, the task of updating and…
Picture this, your app is scheduled for a new release next quarter but because of…
In the fast-paced world of software development, ensuring the security of our projects is paramount,…
Executive Summary Episode Six (E6), a multimillion-dollar, investor-backed fintech company, was in a fast growth…