
The web is an ever-changing medium whose scope, application, audience and platform continue to grow on a daily basis. If you’ve worked on the web for any amount of time, you’ve likely heard or even used the term “progressive enhancement.” Since the term’s inception, it has been considered a best practice for approaching web design. But what is it really? And how do we reconcile its meaning with the rapid evolution of the languages and browsers we rely on to do our jobs? In this brief book, Aaron Gustafson chronicles the origins of progressive enhancement, its philosophy, and mechanisms, and reveals the countless practical ways that you can apply progressive enhancement principles using HTML, CSS, and JavaScript. By understanding progressive enhancement and how to apply it properly, web practitioners can craft experiences that serve users (rather than browsers), giving them access to content without technological restrictions.
The Network one by Ilya Gregorik. There's just not a lot of other material that covers this and certainly not this thoroughly. This one is probably responsible for me "looking smart in front of others" more than any other book on the list.
"100 things every designer should know about people" by Weinschenk (sp?). Actually I take it back: _this_ is the most "look smarter than everyone" book you can read if you work anywhere around the web. Especially if you have to argue with designers.
I have a few more, but I'd start with those.
The second is "Secrets of the Javascript Ninja" by Biebault and Resig. Every one of my devs groaned at first, then thanked me profusely when they finished it.
FWIW, my favorite "look-it-up"-style resource is Speaking Javascript by Rasuchmeyer - and his follow-up "Exploring ES6".
Adaptive web design as introduced by Aaron Gustafson in the "Adaptive Web Design" book has little to do with layout design, and everything to do with progressive enhancement and adapting the website's behavior to the browser's abilities (geolocation, ...)
But I guess, most people didn't read the book, and now everyone has their own definition for it, so in effect, it doesn't mean much anymore; some say it's non-fluid RWD (like here), some say it's server-side components (like most people), some say it's exactly the same as RWD... oh well, pick your favorite!