Brad Frost

The Principles of Adaptive Design

There's a conversation that crops up time to time again about the definition of responsive design and treating RWD as a goal unto itself. Has it evolved beyond Ethan Marcotte's original definition? There are so many articles out there on the subject already, but since it keeps coming up I figure it's still worth talking about. Of course there's a whole lot more to creating a great multi-device than fluid grids, flexible media, and media queries. The core tenets of responsive design are obviously important, and over the last few years they've helped the Web community better cope with the never-ending flood of Web-enabled devices. But those three ingredients are just the tip of the iceberg. iceberg So what beyond fluid grids, flexible media, and media queries do we need to concern ourselves with when crafting multi-device Web experiences? In asking myself that question (some time ago now), I landed on five guiding principles of adaptive design:

  1. Ubiquity
  2. Flexibility
  3. Performance
  4. Enhancement
  5. Future-Friendly

Ubiquity The power of the Web is its ubiquity, and it's our responsibility as web designers to do our best to preserve the Web's biggest feature.

Flexibility There ain't no going back to the fixed-width days of yore. In order to create effective designs for our multi-device age, we must embrace the Web's intrinsic fluidity.

Performance The first few years of our responsive age were spent getting our heads around the mechanics of media queries and other techniques. All the while the size of average Web page–responsive or not–skyrocketed in size. So it's been a welcome change to see more folks care about performance and tackle the performance-related issues of the multi-device Web.

Future Friendly No one knows what the Web and device landscape is going to look like in a couple years, but there’s a damn good chance the gadgets sitting underneath Christmas trees a few years from now will have access to the Web.

Guiding Principles I like these principles. For me, they serve as a sort of checklist for any strategic, design, or development decision. If decisions go against one or more of these principles, we need to have a conversation. Ember 2 Techniques come and go quickly in this crazy-fast-paced-and-volatile industry. I'd recommend not getting too hung up on definitions, mechanics, and techniques. Instead, establish some guiding principles that can help ground you and help you make better decisions. *[DETAILS]: Device, Environment, Time, Activity, Individual, Location, Social *[RESS]: Responsive Design with Server-Side Components