With the exploding popularity of DOM Scripting, Ajax and JavaScript in general, it's important to know what to do -- and what not to do -- when dealing with these technologies. This session walks you through several real-world examples, pointing out common mistakes that hinder usability, accessibility, and search while teaching you ways to avoid them altogether, either programmatically or simply by altering the way you think about JavaScript-based interactivity. In this session, you will learn: • How to meet your users' needs and expectations in a progressively-enhanced way; • Common mistakes in interaction design; • Progressive enhancement as a concept; • How to deliver a layered interface; • Progressive enhancement with CSS; • Progressive enhancement with JavaScript.