Yeah, we keep hearing this. It’s taking over the full stack, at a rapid rate. But what is and how should we dive into Node.js + JavaScript Development against the full stack? What’s available?\n
What is it, what’s it’s do, why does it matter and how do we get shit done with it?\n
\n
Node.js operates differently then most servers in the asynchronous nature that is at the heart of JavaScript, it shoots of events, not waiting for them to be done. Giving single proc machines a distinctive scaling advantage of other systems...\n\nBased on V8, it has a really fast core. A lot of V8 JavaScript executes as fast as managed C#, Java and other modern languages in many circumstances. Sometimes, arguably faster. Scale it based on the evented I/O via stateless systems and you can easily get web scale performance out of it.\n\nIt runs everywhere, with almost complete synchronous feature sets.\n
As developers, what do we hate?\nBloated frameworks, having excess nonsense to deploy, configuration that bloats, systems that are hard to deploy, systems that require lots and lots of tweaking just to get started with and a whole host of other annoying things.\n\nNode.js is LEAN. It is probably the smallest server you can get in size, with all the frameworks needed to do whatever you’re going to do with it, express.js, jade, bricks.js, or whatever, it’ll still likely be around 1 MB.\n
Lean frameworks, we’ve got that. We also like things that are fast. CHECK\nWe generally like dynamic languages that have a large community with lots of material about how to do all sorts of things. CHECK\nAn active open source community around the code project, providing a solid base with impeccable support. CHECK\nThe ability to get a basic app up and running in... seconds. CHECK\nThe ability to use existing systems, host on existing environments and new modern and faster environments to host and deploy applications into. CHECK\n\nI could go on, but you get the point. There are a LOT of reasons to love Node.js\n
To cover the bases... Node is lean, fast, and scalable. Right out of the box. It’s the smallest download you’ll probably have in about a decade for this kind of power. With all that, you can deploy to almost any type of server or environment.\n
Real quick note, this is a pivital part of Node.js. It’s apparent that the people involved with Node.js have taken a lot of the great things about Ruby on Rails and created them from inception. There are however a lot of things that are annoying that are not there (like a forced active record system or bloated file structure for an application with tons of configuration).\n
\n
To start building this, I’m going to dive right in with Node.js and pull in Express.js to get a framework to get something working.\n