Research Notes for HCI
1. What is human-computer interaction (HCI), and which disciplines contribute to it?
Human-computer interaction is the study of how people use technology and how to design systems that are both effective and accessible. Writing the functional JavaScript for a web button is straightforward. Deciding where to place that button so people intuitively understand its purpose is a completely different challenge. I am still figuring out the full scope of the field, though I know it requires blending multiple academic perspectives. The primary disciplines that contribute to HCI include computer science, cognitive psychology, behavioral science, and graphic design.
2. What is the difference between a system being useful and being usable?
A system is useful when it provides the exact features required to achieve a specific goal. A system is usable when users can operate those features easily and efficiently. Utility and usability combine to determine overall success. A beautifully designed JavaScript photo editor might follow all standard design guidelines and have a perfectly intuitive interface. If a user only needs to write a text document, that highly usable photo editor provides absolutely zero value for their specific task. I often build small Python scripts that work perfectly for my own math homework. My friends find them entirely useless because they are taking completely different classes.
3. Confusing Everyday Interface
One everyday interface that causes me constant confusion is the digital university parking permit portal. The user is attempting to purchase a semester parking pass. The main design failure is a lack of visibility of system status. Users click the submit button and the screen simply reloads without any success message. Furthermore, the site lacks proper semantic HTML, making it extremely difficult for individuals relying on screen readers to navigate the forms. One specific improvement would be adding a clear, accessible confirmation banner at the top of the screen upon successful purchase to prevent users from accidentally buying multiple passes.
4. Prototypes and Testing
I always assumed software had to be completely finished in code before anyone could test it. A prototype is a preliminary model or mockup of a product used to test concepts before writing the actual final code. I am genuinely curious about how designers create these interactive mockups without getting bogged down in the C++ or Python logic behind them. Testing a prototype with users helps designers identify navigation flaws and layout issues early in the process. Asking a user "Do you like it?" fails to provide actionable data. Aesthetic preference does not indicate functional success. A user might find a design visually stunning while remaining completely unable to locate the checkout button, recover from an error, recognize system state changes, or input their shipping details.
5. Interaction Beyond a Keyboard and Mouse
The KIBO Robot utilizes a tangible interface built from physical wooden blocks that users sequence together to create working programs. It entirely removes traditional digital screens from the programming experience. Young children who cannot read fluently greatly benefit from this physical interaction method. Creating physical loops and commands makes abstract concepts highly accessible. To test if this tangible interface truly helps them learn, I would give a group of children a specific physical goal, such as programming the robot to navigate a small maze. I could observe how many attempts it takes them to reach the goal using the physical blocks compared to a group using a standard keyboard.
References
- CMU Human-Computer Interaction Institute. About the HCII. https://www.hcii.cmu.edu/about
- Nielsen, J. 10 Usability Heuristics for User Interface Design. Nielsen Norman Group. https://www.nngroup.com/articles/ten-usability-heuristics/
- W3C Web Accessibility Initiative (WAI). Introduction to Web Accessibility. https://www.w3.org/WAI/fundamentals/accessibility-intro/
- DevTech Research Group, Boston College. KIBO Robot. https://sites.bc.edu/devtech/kibo-robot/