Design Patterns & Principles for Ajax Applications Abstract With the advent of Ajax and the current resurgence of flash as platforms for building rich internet applications, it has become apparent that some With the recent rise in popularity of web technologies such as Ajax and Flash, it has become possible to create richer user experiences on the web. Even though these technologies are not actually new, we are now seeing their widespread adoption. One of the hallmarks of this experience is the move away from the neccessity of always having to refresh the page for interaction. Instead of a standard page-to-page experience, we now have the opportunity to more closely model the real flow of the user. Obviously a whole economy has been built around the page-based model. Designers have designed in "chunks" while user's have thought more in "flows". Information Architects have traditionally embraced this page model in design artifacts such as wireframes. This presentation takes a survey of these interaction styles, looks at why they work or don't work and explores a set of design principles that can inform future design projects. The eight principles of design that are explored are: * Make it Direct * Keep a Light Footprint * Cross Borders Reluctantly * Provide Live Feedback * Offer an Invitation * Use Transitions * Think in Objects * Tie Information to Interactivity Each principle is illustrated with a set of common design patterns that are currently in vogue. The nuances of each of these principles is explored with examples that illustrate good choices and bad choices.