March 25, 2014 in Learn
Building HTML5 Context Menus
A lesser known feature of the HTML5 specification is context menus. These allow you to add custom items to the menu that appears when a user right-clicks on the page. Using JavaScript, you can then control the actions these items…
March 19, 2014 in Learn
Exploring the JavaScript Device APIs
Photograph by Jeremy Keith (adactio) The mobile revolution has completely changed how people access the web. It’s only natural then that the web should evolve to better suit the plethora of devices on which it’s now accessed. When the web…
March 15, 2014 in Learn
Using localForage for Offline Data Storage
(Photo by Erich Ferdinand/Flickr) An important step on the path toward robust, offline web applications is the ability to store data in the user’s browser. Technologies like IndexedDB and localStorage have provided this functionality to web developers, but they are not…
February 26, 2014 in Learn
Uploading Files with AJAX
The introduction of AJAX marked a huge leap forward in the history of the web. The ability to communicate with a web server without reloading the page has revolutionised how web applications are built. The primary technology that enables AJAX…
February 21, 2014 in Learn
Registering Protocol Handlers for Your Web Applications
Protocol handlers allow you to inform the browser that your web app is capable of handling links and URLs with certain schemes. Using the registerProtocolHandler method you are able to register your web app as a handler for schemes like…
February 6, 2014 in Learn
Optimizing Mobile Web Apps for iOS
When I was looking through the analytics data for a product I recently launched I was taken aback by just how much mobile traffic the web app was getting. After seeking some feedback from users it became clear that people…
February 4, 2014 in Learn
Getting Started with the Speech Synthesis API
With the introduction of products like Siri and Google Now, speech technology has really taken off in the past few years. Various organisations have been working on speech recognition and synthesis for decades, but it seems like only recently that…
January 21, 2014 in Learn
Exploring the Battery Status API
With the rise in popularity of mobile web apps there’s been a big push to develop device APIs that allow web developers to reach out of the browser and access the underlying device hardware. We’ve seen the introduction of getUserMedia,…
January 16, 2014 in Learn
Accepting Voice Input in HTML5 Forms
The way that we interact with computers has changed dramatically over the past decade. Touch-screen devices and laptop trackpads have enabled a much more intuitive form of interaction than is achievable using a traditional mouse. These changes haven’t been limited…
January 9, 2014 in Learn
Getting Started with the WebP Image Format
When it comes to optimizing websites for performance one of the biggest goals is to reduce the amount of data that needs to be sent to the browser (the payload). As images commonly make up the largest chunk of the…
January 6, 2014 in Learn
Automating Web Performance Best Practices with mod_pagespeed
Web performance is a brilliant, but sometimes complex world. Concatenating and minifying files, optimizing images, setting up caching, these are all tasks that can lead to great performance wins. We know that this stuff is good for performance but actually…
January 3, 2014 in Learn
Improving Your Development Workflow with Yeoman
With so many great tools available to front-end web developers these days it can sometimes be difficult to understand how they all fit together. Deciding on a workflow that you’re happy with is often a very personal endeavour, but getting…