I personally do a lot of programming for eCommerce websites. None have been written in NodeJS. I see mainly .NET and PHP.
Since NodeJS is becoming a popular language, what application do businesses usually use it for? APIs? CMS sites? Web Apps?
Could NodeJS be used to build a powerful eCommerce platform? If so, what are its limits? Memory issues? CPU issues? Concurrent user issues?
Side question: When starting out with NodeJS what are some good things i can create to learn how well the language works? I want to be able to utilize the language fully within its most powerful aspects.
Edit: Found an article toptal.com/nodejs/why-the-hell-would-i-use-node-js
Node has really earned a solid reputation for API servers, scalable REST services, and with the emerging migration to isomorphic javascript, powering anything that is javascript-based on the frontside...
I've used Loopback, SailsJS, HAPI, ExpressJS and now MERN, and all have their distinct advantages. Why not pick the right tool for the job, and also enjoy focusing on only one core language? That's a huge win for larger development teams too.
I haven't built one myself but I've heard NodeJS is great at creating a nice quick RESTful API. You can find out more from this article: scotch.io/tutorials/build-a-restful-api-using-nod… - (Article is from 2014 but gives a good idea of how it's used)
Sandeep Panda
co-founder, Hashnode
Node.js is event-driven and asynchronous in nature. That's why it's a great choice for I/O intensive highly scalable (realtime) apps. Although we don't see a lot of e-commerce apps written in Node.js, it certainly can be used to write such apps. Some new open source platforms like Reaction Commerce are using it and I don't see any reason why Node.js shouldn't be used in e-commerce solutions. I also don't think concurrent users and cpu are issues.
Big companies like PayPal, LinkedIn, Netflix, Medium, Walmart etc are already using Node.js at scale. Here you can find a list of companies and projects that are using Node.js.
If you want to learn Node.js by creating something meaningful, I would recommend building a basic API driven app. You can also try writing a simple chat app that utilises collaborative editing and other realtime features.