The node.js demographic

I went to the node.js meetup last night in Palo Alto, and it was an interesting affair on several levels. First (and least surprisingly), it was packed, with the Sencha folks joking that they would need to move to a bigger space just to be able to host the event. Second, the technical content itself was intruiging, with fellow Joyeur (and node BDFL) Ryan on dealing with flow control in node, Jed on (fab), future fellow Joyeur Issac on npm; and Tim demo’ing some Connect-based apps, including a simple web-based shared world app in which the room could (and did) participate. Not surprisingly, the performance of this last demo was snappy under load — so much so that it merits repeating an observation that many are currently making: it is increasingly clear that an early space — if not the first — in which we are going to see broad deployment of node-based apps is online social gaming, a space in which node represents a decisive competitive advantage by offering the potential for much more interactive (and more social) gameplay, and one in which there is substantial code churn to begin with. (And of course, speaking from Joyent’s perspective, this is a fortunate confluence: online gaming is also a space that sorely needs the elasticity that the cloud alone can provide.)

So the attendance and content were certainly notable, but most interesting of all to me was the demographic: given that node has become something of the latest hotness (and especially given that it being in JavaScript gives it a pretty wide net), one might expect node’s enthusiasts to be amateurs or novices. That this was emphatically not the case was clear to me shortly after arriving, when I had the unexpected pleasure of reuniting with fellow CS169 head TA Peter Griess. Not to be overly chummy or clubby, but walking into a meetup and seeing one of the tribe tells you something immediate about not just the room, but the technology itself: that it is not mere syntactic sugar or iconoclasm for its own sake, but rather a true revolution in the way certain classes of systems are designed and built. And indeed, over the course of the evening, it became clear that within the room there was an impressive amount of actual experience deploying real systems, with seasoned technologists like Matt Ranney who aren’t merely writing new apps in node, they are rewriting old apps in node. This is a key point, and it goes to the fact that node is not just an easier way of doing things (though that too, certainly) but rather that it offers such a vastly improved runtime that it merits reevaluation of systems that one has already built and deployed.

To me, the systems experience in the room offered an implicit rebuttal to some of the inane criticism of node — criticism that essentially amounts to discrediting node merely because of its newness or its popularity. (And even more enlightened criticism ultimately disappoints with what essentially amounts to an attack on the basis of style, not substance.) To be sure, node is still a young technology, and there is much engineering work still to be done. (For a concrete example of this, see Paul‘s description of the SSL problem.) But with so much deep systems experience in the community — and with the healthy, collaborative vibe that was on display last night — it’s hard to be anything but optimistic!

Posted on August 11, 2010 at 10:16 am by bmc · Permalink
In: Uncategorized

3 Responses

Subscribe to comments via RSS

  1. Written by rektide
    on August 11, 2010 at 10:31 am
    Permalink

    After initially being rather perturbed by Al3x’s post, after multiple readings spread across three days, I came to term with Al3x’s criticism. As SOGrady wrote, node is opinionated software, and Al3x’s only direct reason against using Node was that he couldn’t anticipate how he wanted to solve scaling in the large, and thus didn’t want to bind himself to a platform that imposes certain opinions. A cooperative event platform works a lot of places, but to Al3x’s point, it’s not going to be an ideal platform for all workloads.

  2. [...] This post was mentioned on Twitter by Jason Hoffman and Sean Porter, Denton Gentry. Denton Gentry said: The node.js demographic http://j.mp/9hk2FE [...]

  3. Written by bmc
    on August 11, 2010 at 8:06 pm
    Permalink

    Rektide,

    I don’t actually think that node is all that opinionated — or at least no more than any other well-designed piece of software. As for Al3x’s point, it’s attacking a classic strawman: no one is claiming that node is appropriate for all problems, and I think it’s disingenuous for Al3x to implicitly claim otherwise. Indeed (and ironically) Ryan is among the most emphatic I know that certain classes of applications must be written in C.

Subscribe to comments via RSS