Presentation: "Using Node.js to explore holistic Internet application performance"

Time: Friday 10:30 - 11:20

Location: Seacliff AB

Abstract: "Node.js is the intersection of two things: a dynamic language, JavaScript and a programming style, event-driven. This isn't unique but in the past few years Node has popularised the event-driven model for application development. In this talk we'll discuss how Node's approach of combining a dynamic language containing both functional and c-like aspects with event-driven programming support approaches to application development suited to the web.

Increasingly mobile apps and sites rely on web services to provide rich data for the application. Due to of mobile phone networks the latency and performance profiles is much different from that of a regular broadband user. On a 4G/3G connection it is not unusual to have round-trip time (RTT) vary from 20ms to 3000ms depending on signal strength. This can put a great deal of strain on a traditional approach to web services.

We'll explore a holistic approach to web site performance based on the concept of quantifying three things: server time + network time +rendering time. Using examples in Node we'll see why the combination of an event-driven approach and the use of JavaScript provides a high degree of flexibility. This flexibility enables the developer to provide the most appropriate response to every connection from powerful desktop broadband clients to laggy underpowered mobile phones.
"

Tom Hughes-Croucher, founder and principal at Jetpacks for Dinosaurs

 Tom  Hughes-Croucher Tom has worked in the Web industry for over a decade. He is the founder and principal at Jetpacks for Dinosaurs, a consultancy specialising in high-scale and high performance Internet applications for clients such as Walmart, Comcast and MySpace. Tom has participated in a diverse range of activities throughout his career including: co-authoring W3C standards, publishing cited research on web technologies, and co-authoring O'Reilly's "Up and Running with Node.js".