Hacker News new | past | comments | ask | show | jobs | submit login
Who is Using Node.js And Why? Yammer, Bocoup, Proxlet and Yahoo (bostinnovation.com)
58 points by tq41 on Aug 14, 2011 | hide | past | favorite | 26 comments



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."


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


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


it wouldn't be the first time i heard such category errors in javascript-related advocacy.


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.


Well, it may sometimes lead to unfortunate results, but the fact is there are a lot of people out there without deep technical knowledge who are still interested in reading about languages and frameworks. There's nothing wrong with trying to cater to this demographic.


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


Yes.


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...)


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


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



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

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


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?


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.


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?


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.


https://www.learnboost.com/ uses node for their whole backend. They also have authored and maintain several useful modules such as mongoose.


My co-workers ran in to the same problem once they started using node.js for a project (it's a chat server!) All the examples out there are very "hello world". Even the chat server library that we attempted to use as a foundation for the chat server had never been used in a production environment. But they got it all working and it runs fine.


I'd say it's pretty far along: https://github.com/joyent/node/wiki/modules



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.


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.


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


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


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




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: