Home Node.js at Facebook – Why it’s Needed and What’s Holding it Back

Node.js at Facebook – Why it’s Needed and What’s Holding it Back

Robert Kieffer, an a engineer at Facebook and the company’s internal Node.js evangelist, gave a talk at NodeConf today. He says the company isn’t doing enough with Node.js yet. So instead of an explanation of how to deploy Node.js to thousands of servers, he’s talked about why Facebook needs Node.js and the things holding the company back from adopting it widely.

Update: You can find slides from this presentation here (PDF).

Some critics aren’t impressed because many of the problems Node solves can be solved with other technologies such as libev, Tornado, EventMachine, etc. So why should we be interested in Node.js? Kieffer because it breaks down the silos between developers. He says that at almost every place he’s worked, people are pigeon-holed into specific roles: front-end developer, backed-end devloper, etc. But that means that it’s hard for developers to pitch in to help other teams.

For example, Kieffer once worked for a company that was making an online document editor, back before Google Docs. He was the only front-end JavaScript developer on the project. A customer asked the company to build a Web-based calendar mockup. The CEO of the company, eager to please, decided that the team should actually build a full-featured app, not just a mock-up. Kieffer was stuck building the whole thing in a very short period of time by himself, because the other developers on the team weren’t able to write JavaScript. In a world where the same language was used for front, middle and back-end development, more people could have pitched in on the project.

So why isn’t Facebook widely embracing Node.js yet? Facebook prioritizes performance, as illustrated by HipHop. Even 1% improvement matters. But reliability is just as valued. Facebook has 600 million users – they will find any weakness in any new technology introduced. For a company like Facebook, there’s no one for its developers to look to as an example for how to do things. Also, rolling out new technology to thousands of servers is a non-trivial matter.

However, Facebook is using Node for a few things. One is JSGameBench, an HTML5 game benchmarker. Another is a mobile JS framework that has yet to be announced, but will probably be open-sourced. But the bulk of the Node.js work is being done by the Chat team for traffic analysis and load testing.

So how do you “cross the chasm” with an experimental technology like Node? Kieffer suggests an internal group, like the one he runs at Facebook. You can coordinate with other believers and get speakers to come in and enlighten others. You should also embrace your critics, he says, because they will point out problems with your ideas and keep you from screwing up early on. Finally, consider starting by applying Node.js to non-critical applications.

(Lead image by Massimo Barbieri)

About ReadWrite’s Editorial Process

The ReadWrite Editorial policy involves closely monitoring the tech industry for major developments, new product launches, AI breakthroughs, video game releases and other newsworthy events. Editors assign relevant stories to staff writers or freelance contributors with expertise in each particular topic area. Before publication, articles go through a rigorous round of editing for accuracy, clarity, and to ensure adherence to ReadWrite's style guidelines.

Get the biggest tech headlines of the day delivered to your inbox

    By signing up, you agree to our Terms and Privacy Policy. Unsubscribe anytime.

    Tech News

    Explore the latest in tech with our Tech News. We cut through the noise for concise, relevant updates, keeping you informed about the rapidly evolving tech landscape with curated content that separates signal from noise.

    In-Depth Tech Stories

    Explore tech impact in In-Depth Stories. Narrative data journalism offers comprehensive analyses, revealing stories behind data. Understand industry trends for a deeper perspective on tech's intricate relationships with society.

    Expert Reviews

    Empower decisions with Expert Reviews, merging industry expertise and insightful analysis. Delve into tech intricacies, get the best deals, and stay ahead with our trustworthy guide to navigating the ever-changing tech market.