This article first appeared in issue 229 of .net magazine – the world's best-selling magazine for web designers and developers.
For a while I’ve been thinking (as well as talking) about the context in which a site is viewed and how that can change things. Consider the different information people might need depending on the distance they are from a London cinema. Timings of today’s showings are going to be less relevant, for example, to those planning to visit the UK some time in the future than they are to local residents.
What about those who are within commuting distance of the cinema? Knowing whether they’re likely to get to a showing in time, based on average driving times and traffic updates, for example, could prove extremely useful.
What if they’re already at the cinema and viewing the site on a mobile device? In this case, things like parking, accessibility and where popcorn stands are located are more likely to be on their mind.
Ideally, the cinema’s homepage would adapt its content priorities to reflect all these contrasting demands, and more.
Reactive web design
This kind of thinking is often subsumed under ‘responsive web design’ but I think it’s such a big and important subject that it needs its own label. Consequently I refer in my talks to something I’ve labelled ‘reactive web design’.
I see reactive and responsive web design working as part of a stack of thinking we can go through from the beginning of a project, where we decide what context(s) will work for what we’re creating. Note that this isn’t just something for web designers or developers to consider; anyone who creates for the web should be a part of this.
Taking our cinema example, we have contexts of geography and time to work with: these include the building’s location and the fact that the films run for a fixed duration and are only shown at given times on certain days. We are also able to ascertain the visitor’s location (through geolocation or IP lookup, for example).
This data can enable us to give intelligent priorities to our website content, to make it more relevant to what we perceive the user’s needs to be – based on a mixture of common sense, trial and error and audience research.
As I mentioned earlier, I’ve been thinking about this for a long time now. Years ago, when I started messing about with websites, I’d look at local shops or businesses and see a massive disconnect between what they could be accomplishing online and what they were achieving in practice. In my mind the web was this wild, sci-filike thing that would be everywhere, in everything. But unfortunately, in reality it was more a case of slow connections and poorly thought-out sites.
I think most of us who create stuff for the web suffer from similar impatience – that’s what keeps us innovating. We either have something in our minds that we can’t explain, or ideas that aren’t possible yet.
But thankfully, in a more mature age of the web all kinds of things are becoming possible.
The devices and means of accessing the web have grown unrecognisably beyond what was available back in the 1990s. Our industry and thinking has matured and many lessons have been learned along the way – but in so many ways it feels like we’re still at the beginning.
As creators for the web, we have amazing possibilities in what we can do now and the people all around us that inspire. That weird sci-fi-esque future I imagined is no longer so far off. Instead of the internet fridges and online toasters once touted as the future of the web, we have powerful devices with all kinds of sensors and ways of interacting. It feels like the future’s starting now.