CPSC 581 Human Computer Interaction II


The 581 Page of the New Web Site has a more recent version of this course. This page is now defunct.

This second undergraduate course in Human Computer Interaction concentrates on having students acquire skills in creative aspects of Interaction Design. It is an unusual course for computer science as it somewhat follows the structure of a design studio: students mostly learn by doing vs. listening to lectures.

Course description

Advanced topics and applications in human computer interaction, with emphasis on developing skills for designing highly interactive human-computer interfaces.


Computer Science 481, and Permission of the instructor

Prospective students

Information that you should read about how to get into this course


Main events and deliverables will be recorded on the Schedule.

Class Time

Classes and labs are scheduled contiguously: you are expected to go to both.

  • Monday, Wednesday 10:00 - 12:15
What you have to buy
  • Sketchbook - 10%
  • Final Portfolio - 10%
  • Exercises - 20%
  • Projects - 60%

Microsoft Research contributed various Windows Phones for use by the class for educational purposes. We are grateful to them for the educational opportunity it presents, as it provides a wonderful platform for student assignments, and further education in various programming techniques.

Projects & Exercises

Project Assignments


Archive: Previous year's project assignments

Previous Sketching Exercises

Previous Portfolio Exercises


( [http://saul.cpsc.ucalgary.ca/saul/public/Lectures/AnimationPrinciples.pptx |Animation Principles]]

Archive: Previous year's lectures



You will need some of these resources to pursue your work. I will let you know as the course proceeds.


  • Programming: Visual Studio 2010 (including C# and WPF) and Expression Blend
    • Go to U Calgary MSDNAA Software Center. Register for the DreamSpark Program. After that, click 'Start Shopping'. You will be able to download the above-mentioned products to your own computer (assuming you want to develop on them).
  • Toolkits and SDKs: Developer Cookbook - research software and examples for many of the assignment-specific tools we will use. You can download these to your personal computer.
  • Screen Recorders: Camtasia, by TechSmith creates videos by recording your screen, but its only a 30 day free trial. CamStudio is a freeware alternative to Camtasia. Audacity is audio recording software that is available for free. Or you can take a video of the screen with a video camera.
  • Screen Snapshots: Snagit, by TechSmith lets you capture and annotate regions of your screen and save them as images, but its only a 30 day free trial. Alternately, you can use the print screen function in Windows and edit the captured image.
  • Phidgets. for easy programming of the Phidget hardware

Video Prodution

WPF / C# Programming

Smart Tabletop SDK

  • Instructions and Tutorials. The Smart Tabletop SDK allows you to program multiple mice in order to emulate a multi-touch table. The instructions detail how to get the SDK and how to program the SDK.

Assigned Readings

Sketching Resources

Example Portfolios (randomly collected from the web)

Camera Settings for class

Student Site

The student site is where you will put all your completed works.

Further Information Greenberg, S. (2009) Embedding A Design Studio Course in A Conventional Computer Science Program. In Creativity and HCI: From Experience to Design in Education. (Kotze, P., Wong, W., Jorge, J., Dix, A. and Alexandra Silva, P., Ed.), Springer, pages 23 - 41. Selected Contributions from HCIEd, March 29-30, 2007, Aveiro, Portugal.

''Archive of older materials'