Chito Manansala is the reason you and about 2 billion other people can instantly pay with a Visa card in shops across the planet.
As chief system architect at Visa, Manansala designed the communications system at the heart of VisaNet — a worldwide network of shops, ATMs, banks and websites that handles 130 million payments a day. In other words, he knows how to build a contraption that juggles ridiculous amounts of information with each passing second.
In 2007, after leaving Visa, he joined Sabre, the company behind the online travel agency Travelocity. At Sabre, Travelocity is just the tip of the proverbial iceberg. The company offers all sorts of software that shuttles information among travel agencies, airlines, hotels and other tourism outfits across the globe, and Manansala was hired to build a system that would drive applications running on a world of mobile phones. Think of it as the VisaNet of travel reservations.
At first, he built this system using the venerable Java programming language. But he has since dropped Java and switched to what is widely regarded as The Next Big Thing among Silicon Valley developers. He switched to Node.
Node is short for Node.js, a new-age programming platform based on a software engine at the heart of Google’s Chrome browser. But it’s not a browser technology. It’s meant to help build software that sits on a distant server somewhere, feeding an application to your PC or smartphone, and it’s particularly suited to systems like the one Chito Manansala is building — systems that juggle scads of information streaming to and from other sources. In other words, it’s suited to the modern internet.
Two years ago, Node was just another open source project. But it has since grown into the development platform of the moment. At Yahoo!, Node underpins “Manhattan,” a fledgling online service for building and hosting mobile applications. Microsoft is offering Node atop Windows Azure, its online service for building and hosting a much beefier breed of business application. And Sabre is just one of a host of big names using the open source platform to erect applications on their own servers.
“There’s real developer excitement over Node, but there’s also real benefit to using it for at least certain types of applications,” says Bill Hilf, the general manager of product management for Windows Azure. “We don’t see Node on Azure as altruistic. We see it as a way to drive business.”
For Gerad Suyderhoud — who helped organize the first Node hackathon in the summer of 2010 — Node is the successor to Ruby on Rails, the programming language that made it big when Twitter made it big. “First there was C, which Amazon was written in,” he told us this past spring. “Then there was Perl, and Craigslist was written in Perl. Then there was PHP and Facebook, and then Rails and Twitter. With each of these things, they solved a lot of hard problems, but then new problems arrived. Node solves the next set of hard problems, the problems that come with all this real-time stuff.”
And he’s not alone. This week, in downtown San Francisco, Joyent — the chief steward of the Node open source project — is hosting the first major conference dedicated to the technology, and the speaker lists includes names from likes of Google, Yahoo!, Microsoft, VMware, and Mozilla.
But there’s another trick. And that’s what interests Chito Manansala. Node is also an “event-driven” system. It’s not built around data or “threads,” the processes that make up programs. It’s built around events — input from those using an application or messages sent from other applications. In short, Node doesn’t wait for one thing to happen before moving to the next. If it calls a database for information, for instance, it can move on the next task before the database comes back with the goods.
This setup is ideal for applications handling a large number of connections to other systems. Chito Manansala’s project is a prime example. It connects not only to a wide range of back-end systems inside Sabre itself, but to myriad systems operated by hotels, airlines, rental car companies, and other travel providers. “We can’t wait for each of those systems to send us what we need — and wait and wait. The back-end system is always the weakest link,” Manansala tells Wired. “With Node, we send the request to the back-end system and then we move on to the next events.” His Node system is currently under test at Sabre, but it’s slated to go live in May.
Node is a tool that makes particular sense for the latest in mobile apps. Voxer — a startup based in San Francisco — used Node to build a kind of modern walkie-talkie for the iPhone. But the thing to remember is that Node is a platform for building stuff on the back-end. Joyent, the company that oversees the Node open source project, uses the technology to help drive its “infrastructure cloud,” an Amazon-like service offering access to virtual computing resources, including processing power and storage. And in similar fashion, RabbitMQ — a company owned by server virtualization giant VMware — is using the technology to help drive communication inside the latest “cloud” services.
You know Node is a big deal in the cloud world when Microsoft decides to roll it into Windows Azure. After years of, shall we say, keeping its distance from open source, Microsoft is now intent on embracing the latest and greatest in open source development tools. It’s hard at work on a Windows version of Hadoop, the open source number crunching platform everyone is talking about, and its other big play is Node.
Famously, Microsoft CEO Steve Ballmer recognizes the importance of developers to the company’s business. And developers are moving to Node.
Article source: http://www.wired.com/wiredenterprise/2012/01/node-dot-js/