Project brief

Introduction

The increasing variety of devices people use to access the Web has necessitated a revolution in Web design and development techniques and methodologies. For the past few years, we have become less and less able to assume that end users are accessing a website on a screen of a particular size, or on a computer of particular power.

Designing for the Web has never been like designing for fixed print layouts (although some people still approach it this way); and developing fast, functional, memorable user experiences has always been challenged by varied capabilities of different browsers (a challenge which some people still choose to ignore). Browsers are improving, but the advent of Web use on mobile devices has served only to further complicate matters.

These problems have given rise to concepts like progressive enhancement (as opposed to the age-old ‘graceful degradation’), responsive or adaptive design, and mobile-first approaches. Over several years, these techniques have been developed, re-developed and much discussed within Web design and development communities. There now exist numerous tutorials, code libraries, and best practice guides for how to cope within this ever-changing domain.

It’s not all about the devices people are using, though, but about the people themselves. Does someone using a website on their phone indicate an entirely different use case to someone using it on their desktop computer? From what we can detect about the device someone is using, we can also infer a context for their use. Perhaps the phone user is on the train, with a poor connection and in a hurry.

But perhaps not. Things are never that simple!

Possible approaches

Design and develop a playful or disruptive user experience where a website changes its functionality depending on what it can detect about the user.

Prerequisites

An ideal group would consist of:

  • Students who some existing knowledge of, or keen interest in learning, JavaScript and advanced CSS.
  • Students with strong design skills and open minds; who are excited (rather than threatened) by the idea that designing for the Web means relinquishing a huge amount of control over appearance to the user, and to the technology they’re using.
  • Students with knowledge of, or interest in learning, basic user experience and HCI principles, and how to apply them to an unpredictable platform like the Web.
  • Creative thinkers, who can progress quickly through consuming and evaluating existing work in this area in order to create something novel or unique.

Keywords

Context awareness, progressive enhancement, responsive design, adaptive design, css, javascript, html, html5, ubiquitous computing, pervasive computing, cross-device compatibility, user experience,