With the emergence of mashups and web 2.0, the amount of data to be presented on a web page has considerably increased, overloading the user with information and making user interface design a challenging task. User interactions are not restricted to primitive controls like text boxes but nearly every piece of data like pictures now form part of the UI and can be manipulated through drag and drop. User interaction becomes contextual and presenting opportunities for intentional manipulation is not always easy. Yahoo! developer network has a bunch of design patterns that may help web designers build intuitive interfaces and I like the way they arranged the patterns. http://developer.yahoo.com/ypatterns/