It’s difficult find a good set of resources to start leaning Node.JS. Below is a collection of resources that should lend themselves to different types of learning. Whether you like to read a lot before coding, or you like to start running code as you learn.
If you have a RESTful API architecture in your application, then it is a no-brainer. You can go from zero to production, twice as fast, with half the resources, while increasing your server capacity. Here is a great article on why Node.JS is becoming the go to technology for enterprises.
If you don’t yet have a RESTful API architecture, then check out my article series on how and why you should get there gradually if you want modernize your .NET architecture.
I highly recommend learning Node.JS on the MEAN stack, which stands for MongoDB, Express.JS, Angular.JS and Node.JS. A lot of tutorials and examples out there teach you bits and pieces of what you need, but they don’t really put things together in a meaningful way. Also some examples utilize Jade, which is a server-side page templating technology. I see big issues with server-side generated client content, please feel free to read my article on MVVM on the Web, where I demonstrate why ASP.NET MVC is not a good idea because of that same reason.
Get Started on the MEAN Stack
Visit Mean.io for a one stop shop to get your software installed and have your first project created.
What is Middleware?
Hearing the word Middleware can be confusing. Once you get the gist of how a RESTful API works, understanding what Middleware is becomes easy. Basically they are pre and post processing functions around your GET, POST, PUT and DELETE methods.
Here are a couple of great articles that discuss Middleware and specific Middleware libraries in more detail:
- Middleware Demystified http://blog.safaribooksonline.com/2014/03/10/express-js-middleware-demystified/
- Connect vs Express http://stackoverflow.com/questions/5284340/what-is-node-js-connect-express-and-middleware
The 60 Minute Guide
Here’s an article that’ll walk you through how to setup Node, Express and Mongo DB without using MEAN and get the full stack of software working.
Beware that this example utilizes Jade. It is good to get up and running quickly and understand the basic concepts without adding another layer of complexity by introducing an SPA (Single Page Application) framework like Angular.
Sound off below in the comments on your learning experiences and which resources you’ve found to be useful. In the coming weeks I’ll be posting a reference page on MEAN Learning resources.