In this episode of Herding Code, the guys talk with avid open source contributor Tim Caswell about Node.js for which he is a community leader. Listen in as the guys dig into node.js and what it has to offer.
Tim gives the node.js elevator pitch and begins to explain what node offers – like event loops, evented IO, callbacks, non-blocking requests, high concurrency, and real-time scalability.
K Scott shares that Tim’s wheat blog engine which sits on to of a Git repository was implemented using node.js.
Tim notes the greatest use case for node is still web development and touches upon how it differs from other framework like ASP.NET and Rails.
Scott K explains that he thinks of node as an abstraction over network programming and shares his excitement around the hundreds of interesting frameworks and modules developed with/for node.
Jon prompts Tim to talk about the node knockout competition and the various contest submissions.
Kevin asks for further explanation of evented IO and Tim provides further detail using a dentist waiting room analogy.
Jon asks how one troubleshoots callbacks and loops and how one manages state with node. Tim explains event based programming and why node.js came about.
K Scott asks if server-side js interest has recently exploded due to HTML5, web sockets and leaving connections open to the server. Tim talks about long polling and thread counts as opposed to the the node approach.
Jon asks Tim to speak about his extensive community contributions – namely his sharing of 47 repositories including wheat, step library for flow control and hamel.js. Not to mention the howtonode blog.
Jon asks about kiwi, npm and node package managers.
Kevin speaks of the early, hyper-experimental days of node and asks if the community is starting to settle down and standardize on a set of libraries.
K Scott asks for Tim’s thoughts on ECMAScript.
Via Twitter, Jackson Harper asks about no.de, a submission by Joyent into the node knockout competition, and it’s current status.
Jon calls out Couch and Mongo and the NoSQL movement and Tim to share the node data story.
Scott K and K Scott talk about running Node on Windows.
Scott K dreams of IronJS and porting node modules to the DLR.
Jon asks how you get started with node and Tim recommends the friendly IRC room, the friendly mailing list and suggests a newb move to San Francisco and attend the frequent meet ups.
K Scott asks about Tim’s everyday development environment and tools.
Kevin asks about the Node.js sweet spot. Is it for basic web development or is it geared towards more complex, real-time scalability problems? Tim discusses the perks and challenges of Node.js in any development undertaking.
Scott K throws out the “E” word and asks about node’s penetration of the enterprise.
Tim Caswell, @creationix
Tim @ GitHub
Miguel de Icaza, @migueldeicaza
Ryan Dahl, Node
Matt Podwysocki’s Blog
TJ Holowaychuk (visionmedia), jade, kiwi
Dav Glass, @davglass, Node.js + YUI 3 Talk One and Talk Two @ Yahoo!
Isaac Schlueter, npm
Chris Williams’s Blog, @voodootikigod, JSConf 2010, JSConf EU 2010
CoffeeScript, Jeremy Ashkenas
Jackson Harper, @jacksonh
Node.js Windows Port
IRC (irc.freenode.net #node.js.), developers mailing list
Sun Lively Kernel
Show notes compiled by Ben Griswold. Thanks!
Download / Listen:
Herding Code 102: Tim Caswell on Node.js