Achieving complete separation between visual design, content, and logic has long been the Holy Grail of the Web design world. By keeping these separate layers loosely-coupled, they can be developed and changed independently of one another, resulting in faster, more parallel development and more manageable code. That is the vision, but in practice, achieving truly clean separation has been easier said than done. New techniques with AJAX and CSS, and new technologies such as Windows Presentation Foundation (formerly code named "Avalon"), have made achieving the ideal of clean separation more attainable. This session dives into the experiences and lessons learned by Frog Design while using these techniques and technologies on real projects. We explore the impact (good and bad) on processes, collaboration, and efficiency.