This document discusses human-computer interaction and interaction design. It begins by defining interaction and describing common models of interaction, including Norman's seven-stage model of interaction and Abowd and Beale's four-part framework. It then covers various interaction styles like command line interfaces, menus, natural language interfaces, and WIMP interfaces. The rest of the document discusses elements of the WIMP interface like windows, icons, pointers, and menus. It also discusses other interaction design considerations like buttons, toolbars, dialog boxes, speech interfaces, and ensuring a good user experience through engagement and fun.