In this course, you will learn fundamental principles about how to design, implement, and evaluate a user interface for an interactive application. Topics will include human capabilities and limitations, user and task analysis, low- and high-fidelity prototyping, evaluation techniques, event-driven programming, UI toolkits, team and communication skills, and a few research topics. You will apply theoretical concepts taught during lecture to a semester-long interface design project of your own choosing. This course is one of many courses on campus that cover user interface design, e.g., see LIS 220, LIS 450II, and PSY 258. What distinguishes this course is an emphasis on developing and evaluating your own user interface. The class format is lecture, individual and group activities, and discussion.