Overview
You will work in pairs to design, implement, and evaluate an interactive system or or do a mini-research project.
Partners
You should work in teams of two people. I strongly encourage everyone to choose a partner with complementary skills and/or from different academic background. This will give you an advantage in getting the project done. It can also give you opportunities to learn from one other.Topic
Projects should be relevant to something in the class. The final product should demonstrate that you learned something from one or more of the readings.
Human subjects research
If you think you may want to publish the results of the work you do for your project, then you must obtain approval from the Purdue IRB. This typically takes a few weeks. I will be happy to assist with this. Approval is not needed for a purely educational exercise.
Milestones
2/2 | Project: declare groups | Send your group declaration by email with the subject line “project milestone 1: group declarations [695-hci].” |
2/9 | Project: synopsis | Send a brief (150- to 300-word) description of your idea with the subject line “project milestone 2: synopsis [695-hci].” Also, please schedule a meeting to discuss during the week of Feb 12-16. |
2/23 | Project: proposal | Create an HTML file with a 600- to 1200-word description of your project plan. For mini-research projects, this should include (a) title, (b) introduction, (c) ≈5-10 references, (d) research question, (e) what you might build as far as you know, (f) how you will test, and (g) how you will recruit participants. For system design projects, this should include (a) title, (b) introduction, (c) ≈5-10 references, (d) description of the target users and user goals this would serve, (e) how you will study the target users, (f) what you might build as far as you know, (g) how you will evaluate its success, and (h) how you will recruit participants. Submit a ZIP file containing an HTML file and any dependencies. Use the subject line “project milestone 3: project proposal [695-hci].” |
3/2 | Project: v0.1 | Email a progress report along with some tangible artifact of your work so far. Use the subject line “project milestone 4: v0.1 [695-hci].” |
3/23 | Project: v0.5 | Email a progress report with an image illustrating your progress. Use the subject line “project milestone 5: v0.5 [695-hci].” |
4/6 | Project: video storyboard | HTML:Create a storyboard using a sheet of paper divided into 6 or 9 segments. In each segment, hand sketch a key frame from your project video. Page 2 of this document gives an example. You don't need to get fancy. Just show that you've given some thought to what will be in your video. Send a scan (or photo) by email using the subject line “project milestone 6: video storyboard [695-hci]”. |
4/23 | Project: report | Details are below. Send a link to a ZIP file, along with the SHA1 checksum for that file, by email using the subject line “project milestone 7: report [695-hci]”. |
4/26 | Project: video | Details are below. Send a link to the MP4 file, along with the SHA1 checksum for the file, by email using the subject line “project milestone 8: video [695-hci].” |
Web server
A web server is available for hosting web-based projects. Users of this server will be expected to demonstrate knowledge of security best practices.
Involvement of users
User-centered design/implementation projects
You should involve users throughout the process, in a manner appropriate for your particular project idea.
Mini-research projects
At a minimum, you should have some sort of study or evaluation with human participants. The best projects will have some sort of mini-pilot study early on.
Project page (final product)
For your final report, you will create a project page (≈1500-3000 words), including a video (≈3-5 minutes) demonstrating and explaining your system.
Content. You should include all of the same information that would be found in an academic paper
- Problem you set out to solve
- Existing solutions and other related work
- Your design (including the process that led you to it)
- Your implementation
- Your evaluation method
- Your results
- Conclusions
- Acknowledgements (including outside help or code not mentioned elsewhere)
Writing. Write in the style and tone of an extended blog post. Start with a summary that explains at a high level what you did, in a way that flows smoothly into the rest of your article. Although this will include all of the same information that would be in an academic paper, it should be much easier to read. Your top priority should be to clearly understood and pique your readers' interest.
Formatting.
Everything should be neatly formatted. Templates are okay if they are
clean and low-key (and acknowledged). Use appropriate spacing between
elements. Embed your video using the <video>
tag.
- Resize the window to the smallest size that works for your application. A maximum of 1024 pixels wide is recommended, and narrower is even better.
- Hide/remove any extraneous information from the page. The developer panel in your browser can help with this.
- If you will include the entire browser window, be sure to hide browser buttons for plugins you have installed, etc. In Chrome, just drag the edge of the address bar to the right to hide the buttons.
- If you will not include the entire browser window, then give your
screenshot a bit of frame. Consider something like
<img src="…" alt="…" style="padding:4px; border: solid 1px lightgray">
. - If your screenshot will not include the entire page, then try to size the window so that the bottom edge cuts off half a line of text, to make it clear there is more that isn't shown.
References. Include at least 15 references to related work as hyperlinks within the text. For academic articles, use a DOI link (e.g., “http://dx.doi.org/10.1145/368481.368507”) and include the full citation inside the title attribute using a consistent reference format. For non-academic references, try to choose permalinks or main page URLs that are less likely to go away, and include the title and author (if applicable) in the title attribute.
The <a href="http://dx.doi.org/10.1145/368481.368507" title="Donald E. Knuth. 1959. RUNCIBLE—algebraic translation on a limited computer. Commun. ACM 2, 11 (November 1959), 18-21.">Runcible</a> compiler supported algebraic translation on a limited computer.
Video.
Explain your project and give a demo of your system. A narrated screencast is fine. Aim for about 3-5 minutes.
- Length: 2-5 minutes
- Format: MP4/H.264
- Neat, smooth, and understandable
- Legible when viewed at 1024x768 (our classroom projector)
- Include titles, as appropriate, but don't go overboard.
- Before you begin, write out your narration and arrange/size windows. Tip: Setting windows to 1024x768 will ensure that everything is legible.
- Animation is not required and should only be used if it aids communication.
- Avoid gratuitous animation (e.g., flashy transitions).
- System description is not required, but feel free to mention any notable aspects or give a brief outline, especially if it aids communication.
- Do not describe mundane implementation details (e.g., “built using 8,756 lines of Python with the Flask and CrowdLib modules…”).
- Submit via the server and email the SHA1 checksum with subject line “project milestone █: video [695-hci]”
Visibility. Project pages and videos will be posted to the course web page unless any team members request that they be omitted or anonymized. I hope these project pages will be something you can refer to as you move along in your endeavors, as well as a resource for future students. However, that is entirely optional.
Grading
Projects will be graded based on the quality of the design (including the process that led you to it), the novelty and boldness (challenge) of the idea, your success at achieving what you set out to do, the quality of your final product (web page and video demo), and the overall effort.
Updates
2/15: Integrated advice about partners and tie-ins with outside research projects that was previously given in class.