Where once web pages were sandboxed, with little if any access to the underlying device capabilities, increasingly, this is no longer the case. From the first steps of geolocation, which enables any web site or application to ask the browser for a user’s location, an increasing range of device features are being exposed in the DOM: the file system, camera, gyrosopes, address book, compasses and more. In this session, Dave Johnson, originator of the phoneGap project delves into HTML5 and related device APIs, enabling us to build richer, more sophisticated applications in the browser.
Today’s web browser is a powerful application platform, challenging the traditional responsibilities of web application server and client. In this session we learn to harness the browser to do some of the heavy-lifting traditionally delegated to the server-side.
Pushing rendering tasks onto the web browser reduces the amount of hand-holding required of a server, minimising network utilisation and lag involved in user interactions. This decouples our views from our server implementation and can improve overall application performance. Your web applications will feel snappy and lightweight, presenting a more pleasant user experience.
We will explore the implications of client-side rendering and the differences between popular client-side templating tools, such as jQuery templates, EJS, Underscore and Handlebars, evaluating compatibility, performance, expressiveness and project health, while comparing statistics and user experience with traditional server-side templating techniques.
Client-side unit testing can be a painful thing to test in all browsers, so as a “lazy developer” I like to do as little as possible. We’ll dive into how we can automate this process and what tools are out there to help us and how I use these on Modernizr.
In just 30 months, node.js has gone from an obscure toy to the most watched development platform on GitHub. Once the next stable version ships, significant focus will move to improving the community-driven ecosystem of modules, making it easier to navigate and contribute. In this talk, Jed will introduce the two faces of NPM, the official node.js package manager: NPM the ecosystem, for finding existing modules and developing and publishing your own modules, and NPM the tool, for managing and streamlining node.js workflows for your own projects.