Node.js Summit: Platform as a Service
"Platform as a Service" is one of the buzz words in Cloud Computing. Node.js has a role in cloud computing. Panel session with James Urquhart of enStratus, Derek Colison of VMware, Scott Guthrie of Microsoft, Charlie RObbins of Nodejitsu, and Oren Teich of Heroku.
PAAS is about abstracting away the web serving platform. Automatically configuring a pile of servers with a common computing environment for each server. It is a step similar to the difference between coding software in assembly language versus a high level language.
Node.js as a player in PAAS.
Node's evented model makes it simpler to make reactive services, and it is trivial to implement new protocols because the required plumbing is baked in with an innovative ingenious API. These kinds of services could be developed in a platform like Java, but one panel speaker claimed that in Java it would take 10x the memory that a Node based implementation requires. This results in saving resources.
A distributed system built on top of machine-machine applications.
Heroku's guy says they have customers building platforms on top of their platform. He likens it to the stacked turtles idea in literature. Their stack of turtles includes Amazon EC2, Node, etc, and then their customers are building another turtle upon their stack of turtles.
Node is a great fit for some applications, a terrible fit for others. There's a danger in the Node excitement to try and use Node to solve every problem. Hence, PAAS needs to be polyglot.
"Hey we need to glue together two services, hook them up with JSON, deliver them to a browser, ..." Because of Node's ability to invent custom webservices on the fly this is simpler.
"Do you understand what it truly means to handle 10,000 simultaneous requests"? "Scale introduces new problems"
Are the Node.js PAAS providers doing customizations to Node or providing tooling?
One - developing Hook.IO to ease events between Node instances within a PAAS cloud. The fork and child process stuff introduced with 0.6 is valuable.
At VMWare (Cloud Foundry) and Microsoft they're treating Node within their system as any other language. The Node you use in their platform is the Node you download off nodejs.org.
The app is first, the PAAS is there to help the developer focus on the app development.
Polyglot means that some of the customers write their apps in COBOL. You thought that language died in the 60's? Nope. Sorry.