Last week I travelled to Cardiff to take part in ‘The Web Is…’: A conference that celebrates 25 years of the World Wide Web. There were over a dozen speakers at the conference, talking about what the web is today and more interestingly, where it is going in the future. My biggest take away from the conference was the idea that “The Web is for everyone”. It actually became a bit of a meme from the conference; it felt like every second speaker had that iconic picture from the opening ceremony of the Olympic Games in London.
The Web is for everybody
What does this mean for people designing for the web? What I took away from the conference and a workshop run by Brad Frost is that we need to design for device independence. These aren’t new ideas but they’re far more important than I had originally realized. This web thing is fairly new; we’re still working out the best way to design for it and we don’t have all the answers yet.
What we do know is; things move fast and new devices are arriving on the scene all the time. The web is no longer a thing that we access solely from our desks. It’s accessed from our phones, our tablets, our laps, our wrists, our cars and if Scott Jenson has his way it’ll soon be on every vending machine, bus stop and coffee machine in the world.
We simply don’t know what the state of the web will be in just a few short years from now.
Designing for device independence
There is only one constant when it comes to web design and that is content. Content is king and the job of the designer is to make that content sing.
Anna Debenham gave a fantastic talk about browsers on consoles. The message was “Don’t dismiss devices because you don’t use them.” If a device has a browser, people will use that browser. In fact, 20% of 16-24 year olds in the UK visited websites from their console in 2011 and that was 3 years ago! That number will continue to increase making it our job to support those devices.
So we ask ourselves, with so many different devices and browsers in the world today how can we possibly support them all? Well, the key here is how you define support. Brad Frost explained there’s a difference between support and optimization. Support means that users can accomplish all goals: Maybe they get redirected to a new page rather than having the page pull in new content with ajax, but that’s OK. Maybe their browser doesn’t support SVG so we serve them up a jpg instead, but that’s OK too. It's OK because they can still accomplish the task at hand and this is key. Using the concepts of progressive enhancement we can support the majority of devices out there under this definition of support. Sure, IE8 may not have rounded corners, but that’s OK.
Some people out there are questioning the value of progressive enhancement at the moment. Is it holding us back? Shouldn’t we be able to develop applications using all the features of modern browsers? Well yes, of course, and that’s exactly what progressive enhancement allows us to do. Jeremy Keith has written a great blog post recently discussing this in detail.
This simple concept of “support vs. optimization” is something I had heard of before but it really stood out to me when mentioned in the context of designing for device independence. I know I’ll be loading all the sites I design now without JavaScript on the most obscure devices I can get my hands on. This isn’t to ensure that everything looks great, but rather to ensure that I can accomplish any goals I want on the site. If a user has made the effort to visit our site, we owe it to them to make sure they can do whatever it is they came to our site to do.