

Who is Using Node.js And Why? Yammer, Bocoup, Proxlet and Yahoo - tq41
http://bostinnovation.com/2011/08/14/who-is-using-node-js-and-why-yammer-bocoup-proxlet-and-yahoo/?ref=1

======
rockarage
_node is evented and non-blocking it is very good at handling concurrent
requests, so a proxy built on Node will perform much better than one built on
say Ruby._ -Jim Patterson, director of platform at Yammer

It is unfortunate that the "director of platform at Yammer" does not
understand what Ruby is. Ruby is a programming language and Node.js is a
system written in Javascript. It is useless to compare Node.js to Ruby. There
is a similar system to Node.js in Ruby, it's called Event Machine. The
official Node.js about page states "Node is similar in design to and
influenced by systems like Ruby's Event Machine or Python's Twisted."

~~~
jordibunster
Jim has written large amounts of Ruby code at Yammer (and Javascript, for that
matter). I'm pretty sure he knows the difference.

~~~
rockarage
If that's true he must have been misquoted because there is no way anyone who
writes Ruby code, will compare Ruby to Node.js

------
Nitramp
The original article is so naive, it's no wonder he got a lot of negative
feedback.

"The code that makes up node.js is carried out by the V8 javascript engine.
This engine (read: the component that processes javascript so that it can be
understood by your operating system) [...]"

No need for insults, but should one take advice on programming languages and
frameworks from someone explaining them in such terms? He assumes you don't
know what a virtual machine is or how programs get executed (or how they
interact with the OS), yet he tries to convince people with the benefits of
decoupling threads from connections.

I wonder who's the audience for this. And I fear it's people who read articles
at such a level and then think they are capable of making technical decisions.
Kind of like Gartner, I guess.

~~~
__rkaup__
Who or what is Gartner? Do you mean this company
<https://secure.wikimedia.org/wikipedia/en/wiki/Gartner> ?

~~~
sciurus
Yes.

------
xpaulbettsx
GitHub uses node.js to serve up the Zip and Tarball downloads (nodeload), as
well as to power Hubot
([http://productblog.37signals.com/products/2011/04/hubot-
gith...](http://productblog.37signals.com/products/2011/04/hubot-githubs-
valiant-campfire-bot-expands-his-capabilities.html))

~~~
technoweenie
Here's a blog post on Nodeload if you're interested in details:
<https://github.com/blog/900-nodeload2-downloads-reloaded>

~~~
stock_toaster
Don't you guys also use node for secure image proxying (camo)?

~~~
technoweenie
Ah right: <https://github.com/atmos/camo>

------
dangrossman
W3Counter uses node.js for a real-time site usage dashboard

<http://www.w3counter.com/stats/demo/1>

------
socratic
This article surprised me. Is the state of node.js actually not really that
far along?

It seems like the examples in the article (and even in this thread) are all
basically proxies or chatbots. Are there better examples of successful
applications of node.js?

~~~
reid
When you visit search.yahoo.com, some lazy-loaded JavaScript resources are
served from a Node.js server.

That server uses YUI server-side to calculate JS module dependencies for that
page's autocomplete feature. Since the response is very cacheable, and
resolving dependencies doesn't happen on the client anymore, this technique
improves loading time for that feature by 40%.

It also delivers less code for modern browsers. Feature tests from the browser
are sent in the request, which server-side YUI considers for eliminating code
only needed by older browsers.

~~~
socratic
This sounds like a really interesting application.

Any idea what the break down is like on the loading time savings?

In other words, what portion of the loading time savings is attributable to
download time vs parsing time vs execution time vs other things?

~~~
reid
This technique changes:

\- Downloading and parsing metadata about modules YUI can load (eliminated)

\- Calculating what files to download based on the metadata (moved to the
server)

These tasks are usually started by the script loader inside of YUI's seed
file, which is a small script that provides the loading API in the browser.

Instead of doing these two steps, the seed simply asks the server for what's
needed and gets it back, near-instantly: it's likely in your browser cache, or
a Yahoo! CDN edge cache primed from another visitor.

Most savings come from a combination of less code downloaded and cachability
of the result. Slower browsers (old IE, mobile phones) also benefit from less
execution time, because they are particularly slow at doing the loading
themselves -- IE 6 users enjoy 60% faster feature startup after the switch to
server-side loading.

------
dillon
I believe one of them said they used Node.js before version 1.0... and Node
isn't even on version 1.0... so not sure what he means to say.

------
newy
Opzi uses Node.js to run our real-time endpoint and live notifications system,
been working well so far. Running server + client side JS seems to be one of
the niftier aspects of working with Node.js.

------
nivertech
Node.js is great, but Node.coffeescript is better ;)

------
rubymaverick
We are using node.js to safely execute code for our jquery air and HTML5 &
CSS3 course on codeschool.com

------
fauziassegaff
One of the aspect i like from nodejs function callback, future, callback,
future... do i need to say more?

