I’ve been fiddling with so many things since last two weeks, everything from Node.js, ExpressJs, Angular, and trust me it’s a big big mixed bag. The problem with working on a new technology ( which get updates so frequently ) is that you read something somewhere, and then they don’t work when you try to implement them. I’ve been following three books for learning all these and trust me, it has never been so nasty for me. The simple rule is, understand the concepts, follow the latest documentation, try and run !

I’ve been able to install NodeJs on my local machine, create and run a few scripts based on console mostly  related to events, well that is just old school stuff, my personal belief is that to learn something you need to implement it, try it again and again until you master them.

So I started working on a project, we are pretty sure that we’ll deploy it using NodeJs, but apart from NodeJs there are many other vital points that we have to cover, let’s say we perform an anatomy of deploying it.

Project Planning

  1. First we should be very clear about our abstract – What our project will really do.
  2. Tuning finer details of each modules
  3. Creating work-flow, how one method would yield to another, overall you can say compiling the project


  1. Discussion of features to be available on every screen.
  2. Creating Wireframes
  3. Designing the final UI


  1. Choosing the right platform
  2. Decision Making of various technologies to be used
  3. Deciding boundaries of each technologies
  4. Start Coding
  5. Testing.

After few formal and informal discussion we’ve actually compiled all the non-coding part, and I guess we’re pretty sure of using NodeJS with ExpressJS at backend and then using AngularJS with Twitter Bootstrap at the frontend, we’ll be using a NOSQL database system that’d be MongoDB implemented through the mongoose interface.

Our program architecture would be heavily based on MVC pattern.

Coming from a PHP background has an added advantage of understanding web aspect of any project, however the whole JavaScript family (leave apart plain JS ) is totally new to me, so everyday of past two weeks has been a new learning experience, building concepts and now its time to implement them.

Installing Node

Installation of NodeJS is pretty straight forward.

  1. Download the official tarball from


  2. Extract the tarball
  3. Configure
  4. Install

>wget http://nodejs.org/dist/v0.10.18/node-v0.10.18.tar.gz

>tar xzvf node-v0.10.18.tar.gz

>cd node-v0.10.18


>sudo make install

You can test by using command node -v on console, it’ll show the version of installed node package.

Next we move on to installing NPM ( Node Package Manager) which I’ve covered here