As usual there was a good turn out at the monthly Node.js Dublin event in Engine Yard recently. Although some of the Logentries team have been working with Node.js for some time I have to admit I am a bit of a newbie… I’ve been interested in learning more about node in general as I constantly see it used for more and more cool use cases. I’ve provided a brief summary of my take on it at the April Node.js event for anyone who missed out – note, this is from a newbies perspective
Dominic Tarr started the show by presenting streams. He walked through several examples of possible stream usage in Node.js, e.g. how streaming makes it possible to parse very large files. Although the implementation of streams in Node.js seems to follow usual principles, what immediately struck me was definitely how concise the code was. Very impressive functionality can be achieved with very few lines of code! For anyone who uses node regularly this probably comes as no surprise – but I noticed this was common theme though out the entire evening as more and more code examples were shown.
Next, Anton Whalley demonstrated how node.js can be applied to a fun project such as Nodecopter. For anyone who hasn’t seen a nodecopter in action check this out! Nodecopters are flying robots controlled by your node.js code!!! Anton showed us how he got the nodecopter to dance with his nifty node skills… dance nodecopter dance!!
Finally Nuno Job, from Nodejitsu, introduced his view of Node.js: protocols + libuv + V8 + npm.
This allows for developers to implement impressive functionality with only a few lines of code. Nuno gave a great example of this: a load balancer with sticky sessions in only a few lines of code.
In conclusion (from a newbies perspective at least) it seems Node.js, with its battery of available libraries, is a great language for quickly implementing server side applications. In particular, what was clear from the Node.js Dublin event was the speed at which powerful programs can be implemented! Looking forward to next months meetup already!