x360 schedule
 Assignments, Labs and Readings  


assignments and labs (2018W1)

Assignments and labs, in order due. Links to assignment details to be provided when assignment is released.

  • Collaboration: You may work individually or with a partner on the lab itself. Either way, you'll create your own blog post with your perspective and reflections on the assignment.
  • Submission: All labs are turned in as individual blog posts, the address to which you will post on the course twiki labs page by the due date/time indicated on the course dashboard. You'll need a twikiname to do this.
  • Marking: All assignments and labs (except the first) are marked at 4 levels, with the allocation indicated in table below. Requirements for each level are stated in assignment/lab description. The first lab blog is marked pass/fail, as a warmup.
# Due Submission Description Type Resources Weight

Assgn 1


title: assign1

Physical design (written)

Individual, written

[assignment, word doc]


Project Ads


post blog link on 543 twiki - project ads page

Individual project ideas
[listed on deliverables rather than project page because individual component]

or pair work +
individual blog post

[project ad


Lab 1


post blog link on 543 twiki: labs

No-tech puppeteering of movement:
no electronics or Arduino; just wire, duct tape and popsicle sticks.

[lab 1 assign]
[intro slides]
[haptic sketch resources]


Lab 2


post blog link on 543 twiki: labs

Basic actuation

[lab 2 assign] - inc. Arduino kit contents list [intro slides]


Lab 3


post blog link on 543 twiki: labs

Communicate something

[lab 3 assign] - inc. [motorDriverSetup]


Lab 4


post blog link on 543 twiki: labs

Controlled actuation using PID

[lab 4 assign] [twiddlerino.zip] [PIDlibraries]


Lab 5


post blog link on 543 twiki: labs

Haptically engaging creation

[lab 5 assign]
[code libraries]



4-level marking

Several course components are marked at 4 levels (including reading questions, and lab and project blogs. Levels are currently as noted below (but always subject to change). Calibration examples for each level are provided where possible; feedback will be given especially early in course to help with this.


Entirely satisfied and exceptionally well done



Entirely satisfied and well done



Largely satisfied, few major issues



Some worthwhile, comprehensible effort, with substantial issues



Little to no real comprehensible effort;
not handed in or otherwise unacceptable.



readings procedure

Readings are listed on the course dashboard at their due date. Your task: do the reading, formulate questions (see content details and examples below), submit them by deadline; then, attend class prepared to discuss the reading.

Resource: How to Read a Research Paper - B. Griswald.

Attendance in class is expected. If you must miss class, email instructor in advance with an explanation. Emailed questions must still arrive by due time to get credit.

Finding the reading:

  • Each article (usually an academic paper) is identifed as "Author, year" - e.g. "Lim et al, 2008".
  • Locate in the course bibliography for full citation
  • The link there will take you to its location, often on the ACM or IEEE digital library. Access these through your UBC VPN connection.

Submit as pdf:

  • Reading question submission filename: MyLastName_rquests_W02, MyLastName_rquests_W03, etc
    (see course dashboard to identify week).
  • Due date and time: see dashboard.

Submission: handin (not used, 2018/19 W1)

  • General handin instructions for cs543: found here
  • File type: pdf
  • Reading question handin submission titles: rquests_W02, rquests_W03, etc

Submission: email (2018/19 W1)

  • email to instructor
  • File type: pdf
  • Email subject line: rquests_W02, rquests_W03, etc

During class: Participation

Engagement and general participation makes the course more rewarding for everyone. I want students to ask questions during lecture, for clarification or extension on points that are unclear or interest you; and to actively participate in discussions on readings. This comprises the readings -> participation part of your mark. Bring your own copy of your questions to class, and enter them into discussion yourself.

Good discussion participation means concrete, thoughtful questions and insightful responses or comments, not just speaking to get your name ticked off as having participated. I will be forming my assessment of your contributions over the term, with quality counting more than quantity.

Content and Examples

We have two types of questions, reflecting the type/purpose of readings. Regardless, your submitted questions/comments should be thoughtful, and make clear that you've done the reading and reflected on it: you should be able to imagine the class getting into an interesting discussion about it.

Tutorial / How-to type questions

Several readings will take form of tutorials or "how-tos", where a critique style isn't so appropriate. Instead, a typical request will be:

Q1: List three things you learned --- from either/both of these readings that you are hopeful will be useful to you in the course (i.e. that you didn't know before). 1-2 sentences each. Tip: I am using this in part to assess where you are in terms of background coming into the course / gauging pace of course for this group, so being informative is in your interest.

Q2: List three things that you want to learn -- are still (or newly) wondering about, that relate to the topics covered by these readings and what you need you believe for the labs and projects. This could include, for example:
• something you're simply not confident about your ability to do yet, that you expect will be needed
• a general curiosity that has been sparked
• something you'd like to try for a project you're considering

Academic type questions

These are for academic type readings - published papers - where I expect you to learn about also critique. Unless stated otherwise in the detailed instructions for that week, 2-3 questions/comments per assigned reading is about right.

These comments do not all have to be phrased in the form of a question - a mix of questions and comments are fine. If you genuinely are confused by some aspect of the reading, then it's useful and legitimate to ask for clarification; or the paper might give you ideas about other things. Your remarks may be critique - perhaps you don't agree with the approach taken / can think of a better one, or see a flaw in the analysis. However, simply asking something that you could trivially look up yourself, or observing something that's rather obvious, is not a good contribution.

As with any written work that you hand in, correct grammar and spelling are expected. Do be concise: a few sentences per question is good, with a maximum of one paragraph per question.

Below are examples of graded questions submitted by students in the past, ranging from great to poor.


  • The paper talks about how the information conveyed by touch depends on people having a shared or common meaning attached to a gesture. I wonder how much of this we are born with and how much is cultural. Are there any haptic interactions that are universally understood? I don't mean to question if we all feel heat and pressure similarly (which is interesting, but possibly has already been answered), but if there's any complex sensation to which we all assign the same meaning? Consider that a tap on the shoulder is interpreted very differently in a party full of people than when alone in a spooky house in the middle of the night, so context would seem crucial.

  • The authors claim the only filtering dimension under study is interactivity, specifically "the usability of the text-messaging feature". However the first prototype has a physical dimension to it, in that users can hold the paper prototype and interact with their thumb, while the second is software-based and the interaction is using the mouse (no other physical representation is present). Isn't this an unfair comparison? If comparing against the ground truth, the actual telephone, wouldn't it be best to have the physical dimension present in all prototypes?

  • The designers found that the software based prototype did a better job of modeling the intended design for the functionality under study when compared to the ground truth. This suggests that if the designers created only one prototype for their analysis and they went for the paper prototype option, their results wouldn't be the best. Keeping in mind the economic principle, it might not make sense to use resources on more than one prototype for the same design dimension under consideration, so is there any advice on how to guard against using an incorrect prototype choice, or on how to detect it early?

  • The Affective Diary is interesting. From personal experience, I would say that many people do not recognize their emotions and would not know what to do if they were aware. A biometric affective diary would be especially useful in psychological monitoring, especially with patients who have limited capacity (temporary or otherwise) to maintain an awareness of their state of mind. Then again, some people are perfectly happy to, and seek to, live in blissful ignorance. In this case, the affective diary could become a tool of oppression to pressure people to conform emotionally.

  • The authors raise interesting arguments on additive and sub-additive effects of multimodal combination.The authors also describe effects of spatial congruency, temporal synchrony and semantic congruency in resulting gain of multisensory integration. Among many applications, I found reduction of reaction time using multimodal collision warning using spatially congruent signals interesting. The paper also points out that the effect of level of training/experience and workload changes in shared environment can be significant.

  • Regarding the Phantom haptic robot, has anyone tried adding a linear piezo motor at the end of the tip?

  • The vibrotactile displays paper was very interesting; I had forgotten that haptic displays are more than just about vibrations. I’ve also been thinking about using full-body actuation to signal emotional content where people believe they feel particular emotions.

  • These examples appear to suggest instances of complex percept formation but usually these percepts do not last long as one once understands the underlying reasons for the illusion.

  • What exactly is a PID? How can we use it in our systems, for xample may be to control special effects in a haptic dispaly may be ?

  • I learned some from this paper and got some ideas of my project.


accessing x360 computers

ICICS x360 (HCI design studio) is an undergraduate lab, and its computers are on the undergraduate network. Log in with an undergrad cs account.

Getting or renewing your undergraduate account: getacct. To use it, you'll need either an existing undergrad account, or a department login (username@cs.ubc.ca).

Getting a dept login: If you do not have a department login (non cs student) contact instructor immediately.


using handin

We will use the UBC CS department's handin utility for all course deliverables. Handin for cs543 will be configured the department's undergrad servers. This means you'll use it from your undergrad account, (e.g. a1b2@ugrad.cs.ubc.ca)


A current CS undergrad login ID (of form a1b2@ugrad.cs.ubc.ca) is required to use handin on the undergrad server.
If you are using the web login option below, you'll also need your UBC Campus-Wide Login (CWL).

Note, especially to non-CS and non-UBC students: CWL and CS UID are two different authentication methods - take care not to confuse them.


  • Filename: Use format <name>_<deliverableName>, where
    - <name> is the LAST NAME of either the student (individual assignment), or team (group assignments) handing in the assignment, and
    - <deliverableName> is the name of the assignment you are handing in.
    Use web-friendly filenames (under 20 characters, no spaces or funny characters
  • PDF: All electronic submissions in PDF format.
  • Size: Minimize file size to reduce course disk space needs (verify images etc are intact and legible)
  • Videos: See the assignment description for video deliverables for detailed hand-in instructions. In general, you will need to submit a link to a video (e.g. youtube) rather than the file itself. If your video contains personal human subject information, discuss with instructor.

to submit:

  • Test: Ensure that your submission is viewable on a departmental machine.
  • Number of submissions: Choose one team member to submit for group deliverables.
  • Submitting: Use the handin utility for submission, using the command: handin cs543 <deliverable's handin title>

setup & submission (command-line option):

  1. Login to an department undergrad machine (e.g. in x360) or remotely from a terminal window (e.g., remote.ugrad.cs.ubc.ca)
  2. Create a cs543 directory in your home directory; in this cs543 directory create an <AssignmentX> directory where AssignmentX = the handin title specified for that deliverable.
    > cd ~
    > mkdir cs543
    > cd cs543
    > mkdir <AssignmentX> %% be sure to substitute the actual handin title here.

  3. Put all of your files for the assignment in the <Assignment X> directory.
    Subdirectories within <AssignmentX> are supported.
    > cp <your files> ~/cs543/<AssignmentX>

  1. To actually handin your assignment use the handin command from your home directory: 
    > cd ~
    > handin cs543 <AssignmentX>

setup and submission (web option):
Instructions updated Jan 8, 2016. To TEST, see below.

  • Prepare your file: the web handin requires a zip file. Create a zip file of your pdf(s) (or other specified format, if applicable), and name it as specified for the assignemnt.
  • Authenticate: At this link:
    • login FIRST with your CWL, to access the web handin facility
    • Click on the "run hand-in" button, found in box in lower part of screen.
    • Authenticate here with your CS undergrad ID (of form a1b2 - just use this part of it. Don't enter the @ugrad.cs.ubc.ca part.
  • Execute handin:
    • List course as "cs543", then click "list assignments".
      • Find and copy the desired label from the leftmost column in the displayed list
      • verify the due date/time hasn't expired
      • Hit the "back" button in your browser to return to the handin form interface.
    • Paste the copied assignment label into the "Assignment name" box.
    • Upload your prepared .zip file
    • Hit "Handin assignment" button
  • Verify your handin: Hit "check submissions" button.

TESTING web handin: if you are having problems or would like to ensure in advance that this will work for you, feel free to use the testSubmit assignment label, which you should see at the bottom of the list of assignments displayed. Submit any old (small) zip file there as many times as you like to see if you can get it to work.


general deliverable expectations

While each deliverable has its own specific criteria, some general princples apply (particularly to written deliverables such as the final report, and weekly reading questions. The following are basic expectations of any deliverable; not meeting them will result in an appropriate marking penalty if they are not specifically included in the marking scheme. At all times, any member of the course staff welcomes feedback on this from students -- e.g. in its assistance to you in focusing your work; helpfulness of the feedback you receive, in light of available time and resources to deliver it; and any other suggesions you might have.

  • Understandable & Professional: Writing is clear and grammatically correct; visuals are clear and understandable.
  • Submission: Submission, length, and formatting guidelines followed correctly.
  • Completion: All required steps attempted/submitted.
  • Overall quality (largest single contributor): including but not limited to depth, thoughtfulness, thoroughness, justifications, resourcefulness, creativity, etc.
viewing your mark components

Marks will be shared with you as formatted mark sheets for each deliverable and for your overall mark at course midpoint and end. To get your personal cs543 mark reports,

  1. Go to this page.
  2. Authenticate with your undergrad department ID (e.g., an ID of the form "a1b2" only - don't use the full email address). This is the same ID you use to access handin.
  3. You should then see a list of pdfs available for you to download - one for each mark report that has been released to date.

physical user interface design and evaluation 2015/16 W2 -- MacLean