Actually howtonode.org was released on Feb 2. http://howtonode.org/welcome

Edit made, thanks Tim

Today we created a screencast on installing node.js under a ubuntu 10.04 virtual machine.  Here it is:

Installing Node.js and Testing Screencast from nodenode on Vimeo.

A couple of notes:

-As mentioned in the video if you are running ubuntu native, in a vm or on some other machine this will work the same.

-Some installation and compiling sections that took a few minutes were sped up to prevent long pauses in the video

-If you’re running windows grab virtual box and the ubuntu iso from the web set them up and follow along



The steps:

1. To install the tools needed to build node open a terminal and type the following commands:

    sudo apt-get install g++ curl libssl-dev apache2-utils git-core

2. Then checkout the node source:

    git clone git://github.com/ry/node.git

3. Change into the node directory the git clone made

    cd node

4. Configure the compiling process

    ./configure

5. Compile node.js:

    make

6. Install it:

    sudo make install

7. Set up a test directory:

    cd ..

    mkdir hello_node

    cd hello_node

8. Make a test server file (I used pico as my editor):

    pico hello_node.js

9. In the file enter the following (explained in the screencast):

    var http = require(‘http’);

    http.createServer(function(req,res){

      res.writeHead(200,{‘Content-Type’:’text/plain’});

      res.end(‘Hello this is node.js from nodenode.com\n’);

    }).listen(8000,”127.0.0.1”);

    console.log(‘Server running at http://127.0.0.1:8000’);

10. Using a web browser navigate to 127.0.0.1:8000 and you should see the working response

If any you believe other things should be added to this timeline that are related more towards the community than specific side projects please email us at nodenodecom … at … gmail.com, thanks!

You’ve seen cool node.js demos, buzz on twitter about it and now even one of your friends mentions it.  What is node.js?  Why on Earth would you want to run javascript on the server side?  Why do we need another language for server side programming?  I’ll try my best to answer these questions and provide a simple explanation of node.

What Node.js Is:

  • A web/application/socket server built off of Google Chrome’s notoriously fast V8 javascript engine.
  • Rather than spawning new threads for each new connection to your server like thread based webservers (Apache for example) that dominate the server stack today, node utilizes a single thread with an event loop to manage requests.
  • Node.js makes vast use of asynchronous i/o whether it be to disk, database, network or waiting for file uploads.

Why Using Javascript In Particular Google Chrome’s V8 Engine Makes Sense:

  • Javascript is a well known language to many developers
  • It is already set up with an easy to use event loop architecture due to its anonymous functions, closures and callbacks.
  • Its fast.  V8 has three pillars to performance: fast property access, dynamic machine code generation and efficient garbage collection that allow it to execute javascript at very near native speeds.

Why Using This Architecture Is Advantageous:

  • Thread switching carries a cost that makes thread driven web servers slower as the number of concurrent requets grows.
  • With the growing number of rich internet applications using ajax and websockets frequent, smaller requests have become more commonplace.  (Think google instant)  This increases the number of concurrent requests.
  • The non-blocking i/o gives is main advantage here, because the web server’s responsiveness is much less so coupled to the number of simultaneous database queries.  (esp. if you’re using some sort of NoSQL system like redis, memcached or MongoDB)
  • Its not only a web server.  Its also just as easy to set up a socket server using node.

Thats pretty much why its a cool project, and gaining momentum fast.  If you’d like to hear more about some of node’s justifications check out this video by its creator Ryan Dahl: 

A link to the main node project site (top image links there too):

http://www.nodejs.org/

In the next few posts we’ll set the stage as to some of node’s history/community and how to get started.

We’re a group of passionate developers that quickly fell in love with the simplicity and novelty of node.js.  We’ll be discussing how node.js is used around the web, tutorials, news, and anything else we find during our adventure with this great tool.