Human-machine Interface Reading List

Computational neuroscience

The Tides of Mind by David Galerneter - famous computer scienist discusses how our consciousness changes in funcitonality throughout an entire day; touches on creativity, thought, consciousness, the difference between computers and machines

Cognitive Gadgets by Cecilia Hayes - makes the case that humans rather impressive set of cognitive capabilities are mostly learned rather than innate; built up through learning associations of sequences

Supersizing the Mind by Andy Clark - an argument that thinking does not just happen inside of our brains, but also in the way we interact with the physical world

Where the Action Is: The Foundation of Embodied Interaction by Paul Dourish - draws connections between HCI theories and practices and the phenomenological tradition of various 20th century philosophers

Mindstorms by Seymour Papet - computers offer the potential to dramatically, positiviely impact the way that children learn about the world

Neuroscience Online - online textbook for learning about neuroscience

Open hardware

Getting Started in Electronics by Forrest Mims - classic text explaining simple electronic circuits and the theory behind them; very approachable for beginners

The Art of Electronics by Horowitz and Hill - goes more in-depth on both the theoretical / technical level on a large swath of circuits

Machine learning

Deep Learning (Goodfellow) - mathetmatical and conceptual background of deep learning; which is finding a new use case in HMI interfaces / assisted creativity...

Pro tools & applications

Leonardo's Laptop by Ben Shneiderman - argues that the focus of computing should be on what it enables users can do, rather than what computing technology can do. Asks you to imagine what engineering or artistic works da Vinci could have created had he had a powerful computing device.

A Small Matter of Programming by Bonnie A. Nardi - examines two application areas, spreadsheets and CAD programs, (as well as the author’s empirical research) to understand how technologists / designers can help users get the most out of their software

Tools for Thought by Howard Rheingold - history of how early computing pioneers like Englebart, Licklider, Taylor, and Kay envisioned computing technology as a way to expand and augment human creativity and capabilities

Abstracting Craft by Malcolm McCullogh - explores the concept of craft in a digital medium, how hand-eye coordination and the properties of tools plays a critical part in how craftsworkers create new things

Interaction design

Designing Interactions by Bill Moggridge - almost biblical like in scope; interviews and retrospectives with many types of practioners in the field of HCI; from the history of the mouse to the latest research from the MIT Media Lab

About Face: The Essentials of Interaction Design (Cooper & Reimann) - discusses theories of interaction design for applications across wide range of platforms

Computer graphics

Real-Time Rendering, Fourth Ed. (Möller & Haines) updated with sections on AR/VR; discusses cutting edge techniques in computer graphics rendering

Foundations of 3D Computer Graphics (Gortler) - focuses on the mathematical fundamendals of graphics

Physically Based Rendering: From Theory to Implementation (Pharr & Jakob) - mathematical overview of a modern rendering system + implementation concepts

The Book of Shaders - interactive, online resource that allows for exploring how the world of shaders work. Includes guide for setting up an interactive shader exploration tool on your system, or for use in a browser

GPU Gems 3 - Nguyen - overview of cutting edge GPU programming techniques