Information Systems programs have focused on educating future developers in analysis, design and programming. However, in most of these programs, design is overshadowed by the programming and analysis aspects of the curriculum. The interface is specified by the instructor to be implemented by the students, with little attention to how that interface should work for the users. The result is programmers that develop systems, which users find difficult to use to perform their jobs. Poor user interface design has a significant impact on user productivity and error rates, and an increased need for user support. In this paper, we (1) examine problems caused by poor interface design, (2) describe characteristics of good design, (3) describe a course on interface design, and (4) describe the results of teaching the proposed course.