Skip to content

Instantly share code, notes, and snippets.

@mikeal
Created February 3, 2012 19:16
Show Gist options
  • Save mikeal/1731848 to your computer and use it in GitHub Desktop.
Save mikeal/1731848 to your computer and use it in GitHub Desktop.

My comment on http://codeslinger.posterous.com/if-youre-using-nodejs-youre-doing-life-wrong


Wow, where to begin.

I normally don't reply to posts like this but today I just can't help myself.

First off, your experience w/ v8 inside some homegrown crawler as anecdotal evidence that it's buggy is kind of insane. That's not node, your bindings and, i will have to assume your DOM implementation for your crawler, are hardly getting the benefit of a large community testing and flushing out problems. If you create anything new, it'll be buggy, especially if it's complicated, and most especially if your expertise lies elsewhere (in your case I will assume it's Scala).

You say "I've written servers in just about every kind of server framework pattern there is. Node's is the absolute worst.". Come on, be honest, you didn't write anything substantial in node.js. That's evident by your later claims about modularity and namespacing which are actually front end JavaScript problems that don't exist in node.js. Node's module pattern is actually quite amazing and handles cyclical dependencies (which Python and Ruby do not) and the package manager NPM, along with support in the module system, allows you to use different libraries that require conflicting versions of the same dependent package, which is the holy grail of package managers.

You can tell that someone hasn't spent a lot of time with node.js when they complain about "callback soup". It's the first thing you get over and learn how to easily manage, the simplest tool being NAMED FUNCTIONS. Nobody who has spent more than a month with node.js complains or even mentions callback soup. It's the first thing people tend to be concerned with when they come from Twisted or EventMachine because they haven't used Streams yet and realized that the dirtiest parts of callbacks in those systems is handled by Streams and not really an issue and what is left that is a problem is easily managed by a simple library or adopting well known patterns.

It's fine if you have things you like/dislike about competing platforms but it's disingenuous to speak about those problems as if you've spent a lot of time in the platform and are coming from some kind of relevant experience.

@isaacs
Copy link

isaacs commented Feb 3, 2012

Yeah, it was a troll. Hence the blog name.

I know. I searched his whole site, and there was not a single journal entry about teh anywhere.

@nisc
Copy link

nisc commented Feb 3, 2012

I'm in a gist with Node heroes.

@medikoo
Copy link

medikoo commented Feb 4, 2012

This man needs a hug, that's it. I'm not sure if any serious, fact based response make sense

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment