This document provides an introduction to human-computer interaction (HCI). It discusses how HCI considers all aspects of human perception, cognition, skills and experience with technology. It also discusses computers and how they mediate interactions between humans and tasks. The goal of HCI is to design interfaces that are as invisible as possible so users can focus on their tasks rather than the interface. HCI sits within the broader field of human factors engineering and is also related to fields like user interface design, user experience design and psychology.