CS6326 Human-Computer Interactions |
|
Instructor: John Cole |
Section 001: Tuesday/Thursday from 8:30 AM to 9:45
AM |
Office hours: Tuesday/Thursday: noon | Room: ECSS 2.410 |
Teaching Assistant: Haan Mo Johng |
Last update: 12/23/2016 |
Syllabus is on Coursebook | Schedule |
Textbook: There is no textbook. This course will be taught from papers which you will be expected to read, and from PowerPoint slides. A very good book on Android design is Android User Interface Design, second edition, by Ian G. Clifton. Another secondary text is Evil by Design by Chris Nodder. Another good book for cognitive psychology is Human-Computer Interaction by Dix, Finlay, Abowd, and Beale, although some of their material on dialogs and measurement is pretty dated | |
This graduate course is intended to provide an in-depth
understanding of the intricacies of user interface design and the user
experience, with a special
orientation toward mobile devices. Topics include cognitive models,
interaction models, screen design for various kinds of user input,
evaluation of user interfaces, design of
on-screen controls, input from sources other than the keyboard such as speech and touch, and
the use of mobile device sensors. On the output side, we will cover various
forms of user feedback, including display of information, sound, and haptic
feedback. You will be expected to be highly competent in the Java
programming language. A knowledge of C# is also very helpful, since
some assignments will be done in that language. There is a link to
Microsoft's tutorial on my start page. A good understanding of multithreading
is also useful. This course is different from most of your other computer science courses. I know that it is important to understand data structures, algorithm analysis, object-oriented design, program efficiency, database design, and so on. Without those things you would not be a computer scientist. But consider that the most efficient algorithms, the most elegant internal design, are not worth much if the program containing them is difficult to use. You would not buy someone an expensive present, then wrap it in a trash bag, would you? Caution: If you are considering this class only to learn Android or mobile apps, look elsewhere, such as one of the workshops. This course covers topics in cognitive psychology and design principles and is not an exhaustive course in Android programming. We will not cover such topics as SQLite and other "back-end" Android APIs. We will discuss Android sensors, drawing, and the touchscreen. You will also be expected to learn C# if you do not already know it. Also, as one student remarked anonymously in all caps, "Do not treat this course as an elective." And indeed, if you are in the Interactive Systems track, this course is very much core, and I teach it that way. This is not an "easy" course. Grading is tough and picky, but the course will prepare you well. You will be expected to read the the material before each class. | |
Course Topics in Detail
|
Get Google's Android Developer Studio here Link to Android Developer tutorials. Take a look at Best Practices for Interaction and Engagement and some of the others below this. |
In-Class Notes. These are what I wrote using WordPad during class, if any. | |