In order to dig deeper into the Node.JS framework it is important to at least have an understanding of JavaScript. Helping you learn JavaScript is beyond the focus of this tutorial, but I have started to develop a complementary JavaScript Tutorial, to help you learn the fundamentals of JavsScript. As with many software programming frameworks, you don’t necessarily need to be an expert in the programming language, but knowing enough of the basics stands you in good stead to mastering the framework.

In all probability if you’re reading this blog, you have worked with JavaScript in the past. Maybe you’ve worked with JQuery or have fiddled with some JavScript files in a web application that uses HTML, CSS and JavaScript to make the client more dynamic and interactive by manipulating the browser Document Object Model (DOM). If you’re like me, you have probably found working with JavsScript quite a frustrating experience. You may have also spent alot of time fighting the different browsers’ incompatabilites. This was probably compounded by the fact that you never really took the time to study JavaScript as a language, apart from some of the most basic features.

It pains me to say this, but I have to admit that I never really accepted JavaScript as a real programming language until about 5 years ago. I always regarded it some really basic scripting language, and not really capable of anything like ano of the real programming languages I was proficient with at the time like C++, Java, C# or Python. JavaScript to me was always some necessary evil I used with HTML to do stuff client side. I really didn’t like it!

All that changed when I found node.js. After a few weeks of developing using node.js I realized that JavaScript is actually really cool and far more powerful than I had previously thought. Without coming across too sexest, but it was a bit like finding out that geeky girl with glasses and square clothes, you sometimes used to chat to at school, suddenly turns out to be hottest chick in Hollywood and she’s fancied you all along!

I have since taken the time to really get to grips with JavaScript, trying to understand it’s quirks and really leverages it’s good parts! I do strongly suggest you do take time to buy and read JavaScript : The Defenitive GuideJavaScript: The Good Parts and  JavaScript Patterns as you progress along your path of learning node.

In this section I will discuss some of the core concepts of node, which will help understand a bit more about the framework itself. However, to really gain a better understandig of the concepts it will be beneficial to understand the JavaScript language itself.