User Interface Design
User Interface Design for Programmers - Joel Spolsky..
Here are some event-driven programming teaching issues that have come up when I've taught CMIS 340 (Java)..
Beginning of list of GUI tips -- needs much more.
GUI Structural Patterns
Structuring the program - Separating the Model.